From 1dffe330a6214a545e66424d19e3a3a910f0adea Mon Sep 17 00:00:00 2001 From: oskar Date: Tue, 21 Jul 2026 15:22:30 +0200 Subject: [PATCH] =?UTF-8?q?docs(sesja):=202026-07-17..21=20=E2=80=94=20KB?= =?UTF-8?q?=20faza=203=20kroki=203-5=20done=20(kaskada=20PASS,=20werdykt?= =?UTF-8?q?=20Haiku,=20timer=20live)=20+=20incydent=20node-exporter=20:910?= =?UTF-8?q?0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/sessions/2026-07-21.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 docs/sessions/2026-07-21.md diff --git a/docs/sessions/2026-07-21.md b/docs/sessions/2026-07-21.md new file mode 100644 index 0000000..f2340f7 --- /dev/null +++ b/docs/sessions/2026-07-21.md @@ -0,0 +1,11 @@ +# Sesja 2026-07-17…21 — wątek KB: faza 3 kroki 3-5 DONE (+ incydenty) + +**Krok 3 — kaskada summary→chunk:** bramka **PASS at N=10, k=5** (N-sweep {1..20}: N=5 to zmierzona podłoga, N=10 niesie 2× margines); kaskada nie degraduje niczego, na 186 dok nie poprawia (test architektury pod skalę mailową, zgodnie z przewidywaniem planu); koszt +1 SQL, zero dodatkowych embedów. cascade_query = domyślna ścieżka kb-query; flat_query zostaje jako baseline. Eval przepisany do wersjonowanego eval/queries.yaml + retrieval_eval.py. + +**Krok 2 finał — werdykt A/B (D3 rozstrzygnięta):** kompilacja = **claude-haiku-4-5** (157/157, zero JSON-faili, 100% dyscypliny słownika tagów, lepsza hierarchia na długich dokumentach); gemma3:12b w odwodzie (tor lokalny w bazie, job wspiera oba backendy); model fazy mailowej odłożony do jej reconu (privacy/cost flag). Bug num_ctx (gemma cicho ucinała 45% dokumentów do ~2048 tok) znaleziony i naprawiony w pilocie — dwutorowość D3 zwróciła się natychmiast. + +**Krok 5 — cykliczny ingest LIVE:** systemd-timer kb-ingest na PIHA (03:30), wrapper 4-etapowy (adapter→chunk_embed→summarize→embed-summaries; 4. etap dodany po pytaniu CC — bez niego nowe summaries byłyby niewidzialne dla kaskady), tolerancja Ollama-offline, metryki przez textfile→node_exporter→fleet-prometheus (reguły KbIngestStale, KbEmbedBacklogGrowing). Test live złapał 5 realnych dokumentów pominiętych przy imporcie 07-13 (race z OCR) — pipeline domknął zaległość: 5 docs → 82 chunki (2 junk-flagged przez nowy filtr) → 5 summaries, drugi run w pełni idempotentny. Baza: 191 kopert paperless. Bonus: node_exporter PIHA wciągnięty do GitOps (owner_node: per-host — pół pozycji paczki B). + +**Incydenty sesji:** (1) deploy-node.sh odpalony omyłkowo na SOLARII rozebrał node-agenta (No such container przy Recreate) — dokończony deploy naprawił; (2) stary out-of-band node-exporter na PIHA trzymał :9100 → nowy GitOps-owy kręcił się w restart-loopie ~4h niezauważony (Prometheus scrape'ował starego, up=1, brak alertu — luka klasy "podmiana bytu pod tym samym portem") — stary ubity, cutover czysty, 8 metryk kb_ingest serwowanych; (3) klucz Anthropic API zapisany na stałe w /opt/homelab/kb/.env (timer go używa) — rotowany po ekspozycji w transkrypcie. + +**Następne:** wiki proof-of-concept (ostatni element fazy 3; repo kb-wiki + konwencje + 3-5 stron ręcznie sesją CC) → faza 4 (kb-query+UI) wg roadmapy.