From 308ae6a9f403bb53990a3b4bebbc5940d60bebe5 Mon Sep 17 00:00:00 2001 From: oskar Date: Thu, 27 Aug 2026 19:57:39 +0200 Subject: [PATCH] =?UTF-8?q?docs(kb):=20faza5-wiki=20=C2=A76=20=E2=80=94=20?= =?UTF-8?q?rozliczenie=20rekoncyliacji=20kb-wiki=20(2026-08-27)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Operator zdecydował: opcja 1 z §4 (scalić). Wykonane w klonie roboczym ~/kb-wiki (repo prawdziwe, master, poza tym worktree) — cztery commity lokalne, świadomie nie pushnięte, czekają na review operatora: 1. sprawy/fll-2025-26.md — scalone przed tą sesją (commit c4127b9 w kb-wiki, już pushnięty), ta sesja tylko zweryfikowała ponownie. 2. podmioty/mbank.md i osoby/pawel-cesar-sanjuan-szklarz.md przeniesione z ~/kb-wiki-etap1-sesja-2026-08-27/ bez kolizji, linki [[...]] przepisane na rzeczywistą konwencję repo (bez prefiksu katalogu). 3. check_okf.py (walidator sesyjny) przeniesiony do kb-wiki, zaadaptowany do layoutu repo (type=meta, wyjątek README/INDEX/lint-reports). 4. Decyzje (d)-(f) audytu 08-26 (fallback chunk-id, sekcja "Niepewne/ sprzeczne" + polityka aktualizacji, inwariant 7) scalone do _meta/conventions.md bez duplikowania tego, co repo już miało. Stan końcowy: 7 stron w repo, 74/74 sources + 150/150 przypisów inline zweryfikowanych wprost w bazie (KB_DSN, SELECT-only), zero wiszących linków. Pełny raport: _meta/lint-reports/2026-08-27-rekoncyliacja.md w kb-wiki. ~/kb-wiki-etap1-sesja-2026-08-27/ pozostawione nietknięte na żądanie operatora. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01W7AnxL6pbgySpEgcCwAfww --- kb/phases/kb-m5-faza5-wiki.md | 104 +++++++++++++++++++++++++++++++++- 1 file changed, 102 insertions(+), 2 deletions(-) diff --git a/kb/phases/kb-m5-faza5-wiki.md b/kb/phases/kb-m5-faza5-wiki.md index 0938ead..9aace2f 100644 --- a/kb/phases/kb-m5-faza5-wiki.md +++ b/kb/phases/kb-m5-faza5-wiki.md @@ -20,8 +20,13 @@ links: > dopiero przy Części C tego zadania, kiedy próba udokumentowania "remote nie istnieje" (cytat z > polecenia sesji, zgodny z audytem) skłoniła do sprawdzenia Forgejo wprost. **Nic nie zostało > wypchnięte do prawdziwego zdalnego repo** — ta sesja tylko czytała je (`git clone`, pull-only). -> Rekoncyliacja dwóch niezależnych kompilacji tej samej encji (`fll-2025-26`) i decyzja co dalej -> z lokalnym repo tej sesji — **do operatora**, patrz §4. +> +> **Rekoncyliacja domknięta 2026-08-27 (operator zdecydował: opcja 1 z §4 — +> scalić).** `kb-wiki` ma teraz **7 stron**: 5 lipcowych + `fll-2025-26` +> scalone (dwie niezależne kompilacje tej samej encji) + `mbank`/ +> `pawel-cesar-sanjuan-szklarz` przeniesione bez kolizji. Cztery commity na +> `master` **lokalnie, nie pushnięte** — czekają na review operatora przed +> pushem do Forgejo. Pełne rozliczenie: §6. --- @@ -220,3 +225,98 @@ Zależnie od wyniku rekoncyliacji z §4: zakresem obu przebiegów. - Rozjazd `scripts/kb/check_okf.py` (SCOPE sztywny) — patrz §2, nie naprawiony celowo (instrukcja zlecenia: nie hackować). + +--- + +## 6. Rekoncyliacja domknięta (2026-08-27, decyzja operatora: opcja 1 z §4) + +Operator zdecydował scalić — bez rozstrzygania punktu 3 z §4 (dwa osobne +repo) i bez samego jedynie archiwizowania punktu 2 (test jakości +kompilatora, wykonany przy okazji scalenia `fll-2025-26`, patrz niżej). +Wykonano w klonie roboczym `~/kb-wiki` (repo prawdziwe, `master`), **cztery +commity, lokalnie, świadomie nie pushnięte** — review operatora przed +pushem do Forgejo jest krokiem następnym, nie tej sesji. + +### 6.1 `fll-2025-26` — scalenie dwóch niezależnych kompilacji + +Wykonane **przed** tą sesją reconciliation (`kb-wiki` commit `c4127b9`, +autor: operator lub wcześniejsza sesja — poza zakresem tego zadania, ta +sesja zastała je już na `master` i pushnięte: *"Push zrobiony"*, cytat +zlecenia). Wynik zgodny z analizą §4 punkt 2: zero sprzecznych twierdzeń, +czysto komplementarne pokrycie (lipiec: 14 kopert paperless; sierpień +dodał 6 kopert gmail + `paperless:183`) — 21 kopert finalnie (15 paperless + +6 gmail), 38/38 par `sources` + 45/45 przypisów inline zweryfikowanych w +bazie przy tamtym scaleniu. Ta sesja **nie modyfikowała** tej strony — +tylko zweryfikowała ją ponownie w ramach pełnego lintu repo (§6.4). + +### 6.2 `mbank` i `pawel-cesar-sanjuan-szklarz` — przeniesione bez kolizji + +Zgodnie z §4 punkt 1 ("nie kolidują z niczym w lipcowym repo — czysty +dodatek"): skopiowane z `~/kb-wiki-etap1-sesja-2026-08-27/` do `~/kb-wiki`, +linki `[[...]]` przepisane ze składni sesyjnej (`[[../katalog/plik]]`) na +rzeczywistą konwencję repo (`[[plik]]`, bez katalogu). Treść merytoryczna +nietknięta. `INDEX.md` dopisany o oba wpisy. `sprawy/fll-2025-26.md` +przestało być sierotą w grafie `[[...]]` (link przychodzący z obu nowych +stron, sekcja „Powiązane" — decyzja sesyjna sprzed przeniesienia, nie tej +rekoncyliacji: „sprawdzone wprost, zero wspólnego dowodu", link mimo braku +dowodu). + +### 6.3 Konwencje: `check_okf.py` przeniesiony, decyzje (d)-(f) scalone + +`check_okf.py` (walidator sesyjny) przeniesiony do `~/kb-wiki` — lipcowy +proof-of-concept nie zostawił żadnego skomitowanego narzędzia (§3 tabela, +rekomendacja "Przenieść `check_okf.py` tej sesji do prawdziwego repo przy +rekoncyliacji" — wykonana dosłownie). Zaadaptowany do rzeczywistego layoutu +tego repo: `TYPES` rozszerzone o `meta` (repo miało 6. typ od lipca, sesyjny +walidator znał tylko 5), `README.md`/`INDEX.md`/`_meta/lint-reports/*.md` +wyjęte z wymogu frontmattera stron-konceptów (istniały bez niego od +2026-07-21 — dokumentacja/raporty, nie skompilowane encje). + +Decyzje (d)-(f) audytu 08-26, wypracowane w `_meta/conventions.md` sesji +(§5/§7/§8 tamtego pliku), scalone do `_meta/conventions.md` prawdziwego repo +— **bez duplikowania** tego, co repo już miało z lipca/wcześniejszej sesji +(6 typów wliczając `meta`, sekcja „Brak danych w KB" — obie już scalone, +commity `156925c`/`3bd2441`, przed tym zadaniem): + +- **(d) fallback envelope-only** — `[^envelope_id]` bez `#chunk_id`, gdy + dowód nie ma konkretnego chunka albo chunk zniknął po re-chunkingu. +- **(e) sekcja „Niepewne / sprzeczne"** jako nazwana sekcja końca strony + (już używana de facto na żywych stronach, teraz sformalizowana pisemnie) + + polityka aktualizacji „dopisz, nie nadpisuj" przy nowym sprzecznym dowodzie. +- **(f) inwariant 7** — izolacja retrievalu kompilacji od `source='wiki'` + (mitygacja self-citation/citogenesis), CC/API-only jako wykonawca. + +Różnica konwencji z §3 tabeli dotycząca casingu pliku nawigacyjnego +(`INDEX.md` vs OKF-owy `index.md`) **pozostaje nierozstrzygnięta** — zgodnie +z §3, do operatora, poza zakresem tej rekoncyliacji. `check_okf.py` +pragmatycznie traktuje oba pliki root (`README.md`, `INDEX.md`) jako +wyjęte z wymogu frontmattera, bez przesądzania, który plik "wygrywa". + +### 6.4 Lint na całości — stan końcowy: 7 stron, zero błędów + +`python3 check_okf.py` w `~/kb-wiki`: **ZGODNE**, 74/74 par `sources` +(wszystkie 6 stron-konceptów poza `_meta/`) zweryfikowanych w `KB_DSN` +(SELECT-only). Osobny, pełny przebieg (skrypt jednorazowy, nieskomitowany — +`check_okf.py` nie parsuje treści Markdown) po **wszystkich** przypisach +inline `[^envelope_id#chunk_id]` na **wszystkich** 7 stronach: **150/150** +zweryfikowanych, 0 zdegradowanych do fallback. Zero wiszących linków +`[[...]]`, zero błędów przypisania chunk→envelope. Pełny raport: +`_meta/lint-reports/2026-08-27-rekoncyliacja.md` w `kb-wiki`. + +| Metryka | Wynik | +|---|---| +| Stron w repo (po rekoncyliacji) | 7 (5 lipiec + `fll-2025-26` scalone + 2 przeniesione) | +| `sources:` (agregat frontmatter) zweryfikowane w bazie | 74/74 | +| Przypisy inline zweryfikowane w bazie | 150/150 | +| Wiszące linki `[[...]]` | 0 | +| Przypisy zdegradowane (fallback envelope-only) | 0 | +| Commity rekoncyliacji na `kb-wiki:master` | 4, lokalne, **nie pushnięte** | + +### 6.5 Co zostało poza zakresem tej rekoncyliacji + +- `~/kb-wiki-etap1-sesja-2026-08-27/` — pozostawione nietknięte na żądanie + operatora ("skasuję sam po weryfikacji"), nie usuwane przez tę sesję. +- Push `kb-wiki:master` do Forgejo — czeka na review operatora. +- Wszystko z §5 (skala do 17 encji, lint automatyczny w kodzie, skan + `�`/`\x00` na źródłach, integracja `source='wiki'` w retrievalu, rozjazd + `scripts/kb/check_okf.py`) — nadal otwarte, nie ruszone tą rekoncyliacją.