Przejdź do treści

Ile z tego jest prawdą — walidacja

Rekonstrukcja jest tyle warta, ile jej zgodność z tekstem, który państwo samo ogłasza jako urzędowy. Dlatego każdą ustawę odtworzoną przez silnik porównujemy z oficjalnym tekstem jednolitym — obwieszczeniem Marszałka Sejmu w Dzienniku Ustaw, publikowanym, niestety, wyłącznie jako PDF.

Wynik

miara wynik
ustawy zwalidowane 132 (z tego opublikowane w korpusie: 131)
werdykty ZGODNA: 131 · BLISKA: 1 · ROZBIEŻNA: 0
średnia wierność merytoryczna 99,6% (najniższa: 93,9%)
zastosowane instrukcje nowelizujące 10 440 z 10 716 (276 niezastosowanych)

Liczby z dashboardu wierności silnika z dnia 10 lipca 2026 r.; wynik każdej opublikowanej ustawy jest na jej stronie w korpusie.

Jak to liczymy

  1. Rekonstrukcja. Silnik parsuje tekst pierwotny ustawy z API Sejmu do drzewa jednostek redakcyjnych (artykuły, ustępy, punkty, litery, tiret), a każdą nowelizację traktuje jak program: „w art. 5 ust. 2 otrzymuje brzmienie…”, „uchyla się…”, „dodaje się…” — i wykonuje go na tym drzewie, w kolejności wejścia w życie.
  2. Wzorzec. Najnowszy oficjalny tekst jednolity w PDF, z którego usuwamy przypisy i odnośniki (po rozmiarze czcionki), nagłówki stron oraz preambułę obwieszczenia. Do porównania odtwarzamy tekst tylko z nowelizacji ogłoszonych przed tym tekstem jednolitym (według pozycji w Dzienniku Ustaw), żeby porównywać to samo.
  3. Miara. Wierność merytoryczna to udział znaków rekonstrukcji odnalezionych dosłownie i w tej samej kolejności w tekście urzędowym — po normalizacji wielkości liter, łamania wierszy i odsyłaczy „Dz. U. …”, które redakcja tekstu jednolitego aktualizuje. Miara liczona w tę stronę odpowiada na pytanie, które nas obchodzi: czy to, co odtworzyliśmy, jest w tekście urzędowym? — i nie karze za przypisy, których nowelizacje nigdy nie miały.
  4. Werdykt. ZGODNA od 97%, BLISKA od 90%, poniżej — ROZBIEŻNA. Publikację poprzedza bramka: średnia wierność kohorty walidacyjnej nie może spaść poniżej 97% i żadna ustawa nie może zakończyć się błędem. Dziś żadna z 132 ustaw nie jest ROZBIEŻNA.

Czego nie ukrywamy

  • Silnik nie umie jeszcze zastosować 276 z 10 716 instrukcji nowelizujących — głównie w długich łańcuchach ustaw „omnibusowych”, głęboko zagnieżdżonych przepisach i zmianach załączników ogłaszanych wyłącznie w PDF. Każdy taki commit nowelizacji (na gałęzi nowelizacja/*, tuż przed scaleniem) ma w opisie adnotację [sejm2git] N instrukcji nie zastosowano, więc luka jest widoczna dokładnie tam, gdzie powstała, a strona ustawy podaje, ile instrukcji zastosowano.
  • Wierność porównuje tekst, nie daty. Daty wejścia w życie sprawdzamy osobno, porównując z datami z API Sejmu, a tam, gdzie API ich nie zna (etapy wchodzące w życie z wyjątkami), liczymy je tak, jak każe art. 6 ustawy o ogłaszaniu aktów normatywnych.
  • Wzorzec sam bywa niedoskonały: w tekście jednolitym przy przepisach jeszcze nieobowiązujących drukuje się zarówno stare, jak i nowe brzmienie, a przypisy dolne zlewają się z tekstem. Stąd „wierność” w praktyce nie osiąga pełnych 100% nawet dla idealnej rekonstrukcji.
  • Silnik uczy się nadal, a korpus po każdej istotnej zmianie silnika jest przebudowywany (odtwarzany od zera) — o konsekwencjach tego dla hashy i linków piszemy w O projekcie.

Metoda i katalog rozbieżności są opisane w raporcie walidacji (liczby w nim są z maja 2026 r. i od tego czasu się poprawiły; wartością tego dokumentu jest sposób sprawdzania), a każda decyzja projektowa — w dzienniku decyzji.