{
  "slug": "co-sprawdza-kod-a-co-czlowiek",
  "ranking_id": "C04",
  "edition": "1.0",
  "date": "2026-09-25",
  "series": {
    "pl": "Zaufanie do wyniku",
    "en": "Trust in the result"
  },
  "number": 7,
  "title": {
    "pl": "Co sprawdza kod, a co człowiek",
    "en": "What code checks, and what people check"
  },
  "intro": {
    "pl": "Poprawne pola nie dowodzą prawdy. Trzy zakresy kontroli i siedem uruchomionych prób pokazują, co warto zapisać w kodzie, a czego walidator nie rozstrzygnie.",
    "en": "Valid fields do not establish truth. Three check scopes and seven executed trials show what belongs in code and what a validator cannot decide."
  },
  "source_dates": [
    "2026-06-21"
  ],
  "checked_at": "2026-09-25",
  "sources": [
    {
      "title": "Internal working bibliography on AI reliability and oversight",
      "kind": "method adaptation; full document read"
    },
    {
      "title": "FollowBench",
      "url": "https://aclanthology.org/2024.acl-long.257/"
    },
    {
      "title": "Lost in the Middle",
      "url": "https://aclanthology.org/2024.tacl-1.9/"
    },
    {
      "title": "Calibrated Language Models Must Hallucinate",
      "url": "https://arxiv.org/abs/2311.14648"
    }
  ],
  "evidence_scope": {
    "pl": "Sprawdzona literatura i lokalna demonstracja na danych fikcyjnych. Bez pomiaru obecnego modelu i bez audytu zabezpieczeń produkcji.",
    "en": "Checked research sources and a local fictional-data demonstration. No current-model benchmark or production safeguard audit."
  },
  "update_trigger": {
    "pl": "Zmiana znaczenia pól, błąd walidatora lub istotna korekta pracy źródłowej wymaga ponownego odbioru.",
    "en": "Changed field semantics, a validator bug or a material source-paper correction requires renewed review."
  },
  "ai": {
    "authoring": "Codex",
    "source_selection": "Claude Code + Codex",
    "human_review": "post-publication withdrawal by Lech R. Rustecki"
  },
  "interactive": "validation-diagram",
  "schema_version": 1,
  "language": "pl",
  "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/",
  "markdown_sha256": "a0708c4fd7af318868878f1c3fef1fb3b2a4768012c78e913fcec52ff2dafda4",
  "sections": [
    {
      "id": "rozdzial-01",
      "title": "01 / Poprawny kształt nie oznacza prawdy",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-01",
      "markdown": "Model przygotowuje raport: siedem zdarzeń na dziesięć obserwacji. Liczby mieszczą się w zakresie, plik daje się otworzyć, źródło ma identyfikator. Czy raport jest prawdziwy? Tego nie rozstrzyga ani poprawny JSON, ani zielony komunikat walidatora. Źródło może nie istnieć, a liczba siedem może być wymyślona.\n\nWarto mimo to zapisać część kontroli w kodzie. Nie po to, by komputer rozstrzygał wszystko, lecz żeby powtarzalne warunki nie zależały wyłącznie od kolejnego polecenia dla modelu. Najpierw ustalamy, co da się sprawdzić jednoznacznie, a czego taki test nie obejmuje. To rozwinięcie metody [karty uprawnień agenta](/zasoby/serie/kto-zatwierdza-i-co-wolno-agentowi/)."
    },
    {
      "id": "rozdzial-02",
      "title": "02 / Co rzeczywiście pokazują badania",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-02",
      "markdown": "[FollowBench, ACL 2024](https://aclanthology.org/2024.acl-long.257/) bada przestrzeganie szczegółowych ograniczeń instrukcji. Wyniki wskazują słabości badanych modeli. To powód, żeby testować spełnienie warunków, nie gotowy pomiar zawodności dzisiejszego narzędzia.\n\n[Lost in the Middle, TACL 2024](https://aclanthology.org/2024.tacl-1.9/) pokazuje zależność wyników badanych zadań od położenia potrzebnej informacji w długim kontekście. Nie wynika z tego, że każda instrukcja w środku dokumentu zawsze zostanie pominięta. Wynik uzasadnia własny test na reprezentatywnych wejściach.\n\n[Kalai i Vempala, Calibrated Language Models Must Hallucinate](https://arxiv.org/abs/2311.14648) wyprowadzają granicę dotyczącą określonych faktów przy założeniu statystycznej kalibracji. Nie jest to dowód, że każdy system musi mylić się w każdym zadaniu ani że sprawdzanie obliczeń jest bezcelowe. W publicznej adaptacji zawężamy zbyt szeroki wniosek roboczej bibliografii.\n\nLiteratura pomaga postawić pytanie projektowe. Dopiero test konkretnego rozwiązania pokazuje, czy jego kontrola działa. Bibliografia nie zastępuje odbioru produktu."
    },
    {
      "id": "rozdzial-03",
      "title": "03 / Trzy zakresy kontroli",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-03",
      "markdown": "Pierwszy zakres to **forma i spójność**: wymagane pola, typy, dozwolone wartości i relacje między liczbami. Jeżeli licznik opisuje część zbioru, nie może przekroczyć jego liczebności. Nieznany wynik nie powinien zamieniać się w zero. To warunki, które można sprawdzić bez ponownego pytania modelu.\n\nDrugi zakres to **uprawnienie do działania**: czy ten proces może wykonać tę operację na tym obiekcie. Kontrola powinna działać na drodze rzeczywistego wykonania. Poprawny plik nie nadaje prawa do wysłania go na zewnątrz. W tym wydaniu nie budujemy ani nie testujemy systemu autoryzacji.\n\nTrzeci zakres to **znaczenie i źródło**: czy liczba odnosi się do właściwego okresu, cytat zachowuje sens, a dokument rzeczywiście wspiera tezę. Część pracy można wspomóc narzędziami, ale prosty walidator pól tego nie rozstrzyga. Trzeba wskazać, kto i na jakiej podstawie odbiera treść.\n\n![Trzy niezależne pytania: poprawna struktura, dozwolone działanie i dowód treści.](https://www.l00p.ai/wydawnictwo/co-sprawdza-kod-a-co-czlowiek/kontrola-pl-v1.svg)\n\nAutorski schemat zakresów kontroli, Codex / L00P.AI. Zielony wynik struktury nie zastępuje pozostałych ocen. Nie jest to standard BPMN ani wynik pomiaru."
    },
    {
      "id": "rozdzial-04",
      "title": "04 / Mały przykład, który można uruchomić",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-04",
      "markdown": "[Pobierz demonstrację Python](/wydawnictwo/co-sprawdza-kod-a-co-czlowiek/validator-demo.py). Uruchom ją poleceniem `python validator-demo.py`. Wymaga wyłącznie biblioteki standardowej. Nie korzysta z modelu, sieci ani danych produkcyjnych; nie zapisuje plików. Przykład jest fikcyjny.\n\nRekord zawiera cztery pola: `status`, `count`, `total` i `source_id`. Dopuszczamy status `measured` albo `unknown`. Przy wyniku nieustalonym licznik ma być `null`; przy ustalonym ma być nieujemną liczbą całkowitą nie większą od całości. Całość także jest nieujemną liczbą całkowitą. Identyfikator źródła musi być niepustym tekstem. Dodatkowe i brakujące pola są błędem.\n\n```json\n{\"status\":\"measured\",\"count\":7,\"total\":10,\"source_id\":\"invented-source\"}\n```\n\nTen rekord przechodzi kontrolę struktury. To celowo najważniejszy przypadek demonstracji: niepusty identyfikator nie potwierdza istnienia źródła, a liczba w dozwolonym zakresie nie jest dowodem pomiaru. Nazwa `measured` pozostaje deklaracją autora danych, dopóki nie powiążemy jej z dowodem."
    },
    {
      "id": "rozdzial-05",
      "title": "05 / Wynik siedmiu prób",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-05",
      "markdown": "25 września 2026 r. wykonano siedem testów lokalnej demonstracji. Wszystkie przeszły, czyli zachowanie odpowiadało opisanym oczekiwaniom:\n\n- Ustalone zero przy całości dziesięć zostało przyjęte.\n- Nieustalony wynik z `null` został przyjęty.\n- Nieustalony wynik podstawiony jako zero został odrzucony.\n- Jedenaście zdarzeń w zbiorze dziesięciu zostało odrzucone.\n- Wartość logiczna `true` zamiast liczby została odrzucona.\n- Pusty identyfikator źródła został odrzucony.\n- Wiarygodnie wyglądający rekord z wymyślonym źródłem przeszedł kontrolę — zgodnie z ograniczonym zakresem walidatora.\n\nNie jest to siedem testów prawdziwości raportu. To siedem prób funkcji, która kontroluje wybrane reguły. Nie testowaliśmy wdrożenia na serwerze, odporności całego systemu ani zachowania konkretnego modelu. Wynik nie jest procentową oceną bezpieczeństwa produktu."
    },
    {
      "id": "rozdzial-06",
      "title": "06 / Kod też wymaga odbioru",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-06",
      "markdown": "Źle zapisana reguła może konsekwentnie odrzucać dobre dane albo przepuszczać złe. Dlatego testuj zarówno poprawny przypadek, jak i granice oraz celowo uszkodzone wejścia. Sprawdź typy: w Pythonie wartość logiczna może zachowywać się jak liczba całkowita, więc demonstracja celowo sprawdza dokładny typ licznika.\n\nZastanów się również, czy reguła odpowiada pytaniu. Warunek „licznik nie większy od całości” jest właściwy dla liczby elementów podzbioru. Nie musi być właściwy dla liczby wielokrotnych wystąpień w tych samych dokumentach. Zanim poprawisz kod, wyjaśnij jednostkę i [mianownik](/zasoby/serie/mianownik-zmienia-znaczenie/).\n\nSam test wykonany przed operacją nie gwarantuje, że dane pozostaną takie same do chwili użycia. Powiąż odbiór z wersją wejścia i sprawdź rzeczywisty wynik działania. Unikaj alternatywnych ścieżek, które omijają kontrolę. Błąd walidatora powinien dawać jawny brak odbioru, nie automatyczne „wszystko dobrze”."
    },
    {
      "id": "rozdzial-07",
      "title": "07 / Co przekazać człowiekowi",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-07",
      "markdown": "Zamiast samego zielonego znaku pokaż: co sprawdzono, według której reguły, na jakiej wersji danych oraz czego nie sprawdzono. Do rekordu liczbowego dołącz dowód pomiaru, zakres czasu i sposób liczenia. Dla cytatu potrzebne będzie odniesienie do źródłowego fragmentu, nie tylko zgodność formatu.\n\nDrugi model może znaleźć rozbieżność i pomóc w przeglądzie. Jego zgoda nie zmienia się jednak w niezależny dowód prawdy ani ludzkie zatwierdzenie. Osoba odbierająca musi mieć możliwość sprawdzenia materiału, odrzucenia go i zapisania przyczyny. Samo umieszczenie człowieka na końcu procesu nie dowodzi jakości nadzoru.\n\nJeśli chcesz zastosować tę metodę u siebie, zacznij od jednego raportu i trzech warunków, które dziś sprawdzasz ręcznie. W rozmowie możemy oddzielić reguły do zakodowania od pytań wymagających źródła i osądu. Nie trzeba na początek ujawniać prywatnych danych — wystarczy neutralny przykład problemu."
    },
    {
      "id": "rozdzial-08",
      "title": "08 / Źródła, pochodzenie i korekty",
      "url": "https://www.l00p.ai/zasoby/serie/co-sprawdza-kod-a-co-czlowiek/#rozdzial-08",
      "markdown": "Punktem wyjścia była pełna wewnętrzna bibliografia z 21 czerwca 2026 r. Ponownie sprawdzono opisy trzech wskazanych prac w źródłach autorów i wydawców 25 września 2026 r. Nie powtarzamy deklaracji o wcześniejszej niezależnej weryfikacji jako wykonanej w tym wydaniu. Nie przenosimy tez prawnych ani historycznej deklaracji działania konkretnego zabezpieczenia do opisu obecnej produkcji.\n\nTekst PL/EN, autorski diagram i kod demonstracji przygotował Codex. Przeprowadzono odbiór autorski oraz opisane siedem testów, bez niezależnej recenzji drugiego modelu. Nie wykorzystano cudzych ilustracji ani prywatnych danych. Zmiana znaczenia pól, wykryty błąd walidatora lub istotna korekta przywołanej pracy uruchamia ponowny przegląd. Materiał można wycofać po publikacji."
    }
  ],
  "media": [
    {
      "url": "https://www.l00p.ai/wydawnictwo/co-sprawdza-kod-a-co-czlowiek/kontrola-pl-v1.svg",
      "kind": "diagram_in_code",
      "depicts_real_measurement": false
    }
  ]
}
