Rekoncyliacja faza 5 etap 1 (kb-m5-faza5-wiki.md §4), krok 3 z 3 — lint na
całości po scaleniu. Zakres: wszystkie 7 stron-konceptów tego repo (5
lipcowych + 2 przeniesione z sesji 08-27; `fll-2025-26` już scalone w
commicie c4127b9, przed tą serią).
check_okf.py: ZGODNE, 74/74 par (envelope_id, chunk_id) z bloków `sources:`
zweryfikowanych w KB_DSN (SELECT-only). Osobny, pełny przebieg (skrypt
jednorazowy, nieskomitowany) po wszystkich przypisach inline
`[^envelope_id#chunk_id]` w treści (nie tylko agregacie `sources:`,
`check_okf.py` nie parsuje Markdown): 150/150 zweryfikowanych, 0
zdegradowanych do fallback envelope-only. Zero wiszących linków `[[...]]`,
zero błędów przypisania chunk→envelope.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W7AnxL6pbgySpEgcCwAfww
5.2 KiB
| title | type | status | tags | sources | compiled_by | compiled_at | updated_at | |||
|---|---|---|---|---|---|---|---|---|---|---|
| Lint — rekoncyliacja Etap 1 (2026-08-27) | meta | active |
|
claude-sonnet-5 | 2026-08-27 | 2026-08-27 |
Lint — rekoncyliacja Etap 1 (2026-08-27)
Lint po zamknięciu rekoncyliacji dwóch niezależnych bootstrapów wiki-kompilatu
(homelab-codex-ws:kb/phases/kb-m5-faza5-wiki.md): lipcowy proof-of-concept
(oskar/kb-wiki, Forgejo, 5 stron) + sesyjny bootstrap
~/kb-wiki-etap1-sesja-2026-08-27/ (3 strony, nigdy nie pushowany). Stan po
rekoncyliacji: 7 stron — sprawy/fll-2025-26.md scalone (dwie
kompilacje tej samej encji, commit c4127b9, wcześniej niż ten lint),
podmioty/mbank.md i osoby/pawel-cesar-sanjuan-szklarz.md przeniesione bez
kolizji (czysty dodatek — nie istniały w lipcowym repo).
1. check_okf.py — automatyczna część
Walidator sesyjny przeniesiony do tego repo (check_okf.py, patrz commit
oddzielny i _meta/conventions.md §10) — lipcowy proof-of-concept nie
zostawił skomitowanego narzędzia. Adaptowany do rzeczywistego layoutu:
type rozszerzone o meta, README.md/INDEX.md/_meta/lint-reports/*.md
wyjęte z wymogu frontmattera stron-konceptów (dokumentacja/raporty, nie
skompilowane encje).
$ python3 check_okf.py
Repo: /home/oskar/kb-wiki
Sprawdzono plików .md: 11
koncepty: 11, zarezerwowane: 0
per type: meta=1, osoba=1, podmiot=3, sprawa=3
przypisów sources: 74 (4 envelope-only / bez chunków)
ZGODNE z OKF v0.1 (kb-wiki): frontmatter parsowalny, type/status poprawne,
sources niepuste, wszystkie 74 przypisów zweryfikowane w bazie.
74/74 par (envelope_id, chunk_id) z bloków sources: (agregat
frontmattera, wszystkie 6 stron-konceptów) zweryfikowanych wprost w kb
(SELECT-only, KB_DSN) — każdy envelope_id istnieje w envelope, każdy
chunk_id istnieje w document_chunk i należy do zadeklarowanego
envelope_id.
2. Przypisy inline [^envelope_id#chunk_id] — pełny przebieg, nie próbka
Rozszerzenie względem lintu 07-21 (ręczny spot-check 2 twierdzeń) i lintu
sesyjnego 08-27 (pełny ręczny przebieg, ale tylko 3 strony,
~/kb-wiki-etap1-sesja-2026-08-27/_meta/lint-reports/2026-08-27.md) — tu:
wszystkie przypisy inline na wszystkich 7 stronach-koncepcjach tego
repo po scaleniu, jednym przebiegiem skryptu (jednorazowy, nieskomitowany —
ta sama konwencja co narzędzie sesyjne 08-27, nie jest to check_okf.py,
który sprawdza tylko blok sources:).
Znaleziono 150 przypisów inline w stronach-konceptach.
Per plik:
osoby/pawel-cesar-sanjuan-szklarz.md: 13
podmioty/mbank.md: 12
podmioty/pzu.md: 28
podmioty/warta.md: 16
sprawy/fll-2025-26.md: 45
sprawy/ubezpieczenie-auto-ga431ja-2026.md: 11
sprawy/wspolnota-mieszkaniowa-targowa-2a.md: 25
Zdegradowane (envelope-only, bez #chunk_id): 0
ZGODNE: wszystkie 150 przypisów inline zweryfikowane wprost w bazie.
150/150 — envelope_id istnieje, chunk_id istnieje i należy do wskazanego
envelope_id, dla każdego pojedynczego przypisu w treści (nie tylko agregatu
sources:). Zero przypisów zdegradowanych do fallback envelope-only
(_meta/conventions.md, sekcja fallback, decyzja d) na tym etapie.
3. Linki [[...]] — strony-sieroty / linki donikąd
Wiszące linki: 0. Wszystkie realne cele [[...]] w treści (pzu,
warta, ubezpieczenie-auto-ga431ja-2026, wspolnota-mieszkaniowa-targowa-2a,
fll-2025-26, mbank, pawel-cesar-sanjuan-szklarz) odpowiadają istniejącym
plikom. Trzy dopasowania dodatkowe (cel, nazwa-strony,
nazwa-pliku-bez-rozszerzenia) to przykłady składni w prozie
_meta/conventions.md, nie prawdziwe linki — pominięte.
Linki do mbank.md i pawel-cesar-sanjuan-szklarz.md przy przenoszeniu
przepisane ze składni sesyjnej ([[../podmioty/mbank]], z prefiksem
katalogu) na rzeczywistą konwencję tego repo ([[mbank]], bez katalogu —
_meta/conventions.md „Linkowanie między stronami"). Treść merytoryczna obu
stron nie zmieniona.
sprawy/fll-2025-26.md przestało być sierotą przed tym lintem (link
przychodzący z podmioty/mbank.md i osoby/pawel-cesar-sanjuan-szklarz.md,
sekcja „Powiązane" obu stron — potwierdzone „sprawdzone wprost, zero
wspólnego dowodu", link mimo braku dowodu jest świadomą decyzją sesji
sierpniowej, nie tej rekoncyliacji).
4. Sprzeczności międzystronicowe po dodaniu mbank/pawel-cesar-sanjuan-szklarz
Nie sprawdzane od nowa w tym lincie — współwystępowanie słów kluczowych
(mbank+szklarz, mbank+fll, szklarz+fll, mbank+future minds,
szklarz+future minds) już zweryfikowane bezpośrednio SQL-em przy
kompilacji tych stron w sesji 08-27 (zero trafień merytorycznych — patrz
sekcje „Powiązane" na obu stronach i sprawy/fll-2025-26.md „Powiązane").
Nowego retrievalu do tego lintu nie uruchamiano — przeniesienie plików nie
zmienia treści, więc wynik pozostaje ważny.
Wniosek
Zero krytycznych znalezisk: brak martwych linków, brak przypisów wskazujących
złą kopertę, brak przypisów zdegradowanych. 7/7 stron-konceptów zgodnych z
OKF v0.1 wg check_okf.py. ~/kb-wiki-etap1-sesja-2026-08-27/ (repo lokalne
tej sesji) pozostaje nietknięte — usunięcie po weryfikacji operatora, poza
zakresem tego lintu.