# Zmiana źródła po akceptacji przekładu

Syntalith, lokalny eksperyment z 11 października 2026. Źródła i przekłady są napisanymi ręcznie przykładami. Nie użyto modelu ani danych klienta. Ten pakiet sprawdza kontrolę wersji, nie jakość językową. Plan kryteriów powstał przed implementacją; ten sam agent napisał kod i testy.

W pierwszej wersji fikcyjnej instrukcji przepływ wynosi 5 l/min. Druga wersja zmienia jednostkę na ml/min. Magazyn SQLite zachowuje wcześniejszy przekład i usuwa jego akceptację. Drugi, niezmieniony segment zachowuje akceptację. Eksport zostaje zablokowany do czasu poprawienia i ponownego zatwierdzenia zmienionego segmentu. Po ponownym otwarciu bazy można odtworzyć historię oraz oba eksporty.

## Uruchomienie

Pobierz experiment.zip i rozpakuj. Z katalogu pakietu, korzystając z Python 3:

```sh
PYTHONDONTWRITEBYTECODE=1 python3 test_revisions.py
PYTHONDONTWRITEBYTECODE=1 python3 replay.py
```

Nie są potrzebne zewnętrzne biblioteki, klucz modelu ani połączenie sieciowe. Skrypty tworzą i usuwają tymczasową bazę. Zapis przykładowego przebiegu znajduje się w replay.json, kod w revisions.py, wyniki w tests.txt. Hash źródła obejmuje treść segmentów oraz kontekst języka i glosariusza.

## Co sprawdzono

Dwanaście testów obejmuje zmianę jednostki, zmianę języka lub glosariusza, dopisanie i usunięcie segmentu, nieaktualne zatwierdzenie, pusty tekst, poprawkę po akceptacji, ponowienie eksportu, rozdzielenie projektów i błędny import. Osobna próba wymusza błąd zapisu historii i sprawdza wycofanie transakcji. Nowy proces odczytuje wcześniejsze decyzje.

W próbie negatywnej recenzent zatwierdza błędny przekład „5000 l/min.”. System pozwala go wyeksportować. Kontrola wersji nie sprawdza znaczenia tekstu i nie zastępuje recenzenta. Historyczny eksport pozostaje zapisany również po zmianie źródła; bieżący eksport wymaga bieżącej akceptacji.

## Granice

Wejście i wyjście mają własny format JSON. Nie ma interfejsu operatora, wtyczki CAT, XLIFF, DOCX, zachowania formatowania ani połączenia z portalem. Pole glosariusza oznacza wersję zasobu; kod nie sprawdza użycia terminów. Identyfikatory projektów porządkują dane, ale nie są autoryzacją użytkowników. Brakuje logowania produkcyjnego, retencji, szyfrowania i pomiarów obciążenia. Zapis historii przechowuje operatora, powód i kolejność wersji, bez zegara zdarzeń. Nie sprawdzono odporności na utratę zasilania.

Przykłady są znane autorowi testów. Nie oceniono jakości przekładu, czasu korekty ani działania na dokumentach klienta. Każdy z tych wyników wymaga osobnej próby.
