126 plikow (md, yaml, sh, py) odwolywalo sie do sciezek sprzed migracji.
15 markdown-linkow [..](..) -> policzona sciezka WZGLEDNA wobec pliku
odsylajacego (wczesniej czesc z nich byla repo-root-relative i nie
rozwiazywala sie z katalogu, w ktorym lezala)
200 odwolan tekstowych (backticki, proza, yaml, importy w kodzie)
-> nowa sciezka repo-root-relative, zgodnie z konwencja repo
5 linkow rodzenstwa (gole nazwy plikow, np. "](DEPLOY.md)") — dzialaly
tylko w starym katalogu; przeliczone recznie
Objete m.in.: CLAUDE.md (scripts/onboard/README.md -> kb/runbooks/
node-onboarding-tool.md, docs/backlog.md -> kb/phases/backlog.md),
README.md, .claude/skills/, 20 session logow, kod jobow.
Ostatnie 5 odwolan pochodzi z tresci wciagnietej rebasem z origin/master
(session log 2026-07-31, override node-agenta na SOLARII, dwie pozycje
backlogu) — wskazywaly na docs/incidents/, docs/kb/modules/ i
services/narty27/README.md sprzed migracji.
Dodany wzajemny link miedzy kb/services/control-plane.md (stub kodu)
a kb/subsystems/control-plane.md (opis, deprecated) — dwa dokumenty o tym
samym systemie, latwe do pomylenia.
Weryfikacja na 790 plikach: 0 odwolan do starych sciezek,
0 martwych linkow markdown. Lint OKF: 190/190 plikow ZGODNE.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
54 lines
3 KiB
Markdown
54 lines
3 KiB
Markdown
---
|
|
okf: "0.1"
|
|
type: session-log
|
|
visibility: private
|
|
status: active
|
|
updated: 2026-07-12
|
|
links: []
|
|
---
|
|
|
|
# Sesja 2026-07-12 — Deploy 2: split-host OCR-worker (DZIALA) + decyzja kierunku KB
|
|
|
|
## Deploy 2 — OCR-worker na SOLARIA przez NFS: DZIALA end-to-end
|
|
Najtrudniejsza technicznie czesc KB (wzorzec nieoficjalnie wspierany, GH #3900) — przeszla.
|
|
|
|
### NFS
|
|
- nfs-kernel-server JUZ byl na PIHA (aktywny, export /media/pimain istnial).
|
|
- Dodany export: /opt/homelab/data/paperless 192.168.31.70(rw,sync,no_subtree_check,no_root_squash)
|
|
— tylko SOLARIA (nie *), UID przechodza 1:1.
|
|
- UID: oskar=1004 na PIHA, 1000 na SOLARII (znany tech-debt floty), ALE pliki Paperlessa
|
|
sa 1000:1000 (kontener nadpisal nasz chown 1004) — wiec zgodnosc naturalna, bez squash.
|
|
- nfs-common na SOLARII byl. Docker-managed NFS volumes (driver local, type nfs) — zero fstab.
|
|
|
|
### Dwa bugi w configu (znalezione, naprawione, zweryfikowane)
|
|
1. **command nie odpalal celery.** Entrypoint obrazu: `if [[ "$1" != "/"* ]]; then exec gosu
|
|
paperless python3 manage.py "$@"; else exec "$@"; fi` — argument bez "/" idzie do manage.py
|
|
-> "Unknown command: 'celery'". FIX: sciezka absolutna + jawny gosu:
|
|
command: /usr/sbin/gosu paperless /usr/local/bin/celery --app paperless worker ...
|
|
2. **Brak wspoldzielonego SCRATCH.** Paperless@PIHA stage'uje upload w /tmp/paperless/tmpXXX
|
|
i niesie ABSOLUTNA sciezke w payloadzie celery. Worker@SOLARIA mial swoj lokalny /tmp ->
|
|
"Cannot consume ...: File not found" (czesc dokumentow padala — te ktore wzial SOLARIA).
|
|
FIX: /opt/homelab/data/paperless/scratch przez NFS, mount /tmp/paperless po OBU stronach.
|
|
Ta sama zasada co data/media/consume (identyczne sciezki kontenerowe) — scratch zostal pominiety.
|
|
|
|
### Dowod (test na zywo, CC)
|
|
3 PDF do consume/ na PIHA. split-host-test-2.pdf odebrany przez worker@SOLARIA:
|
|
"pdftotext exited 0 -> ocrmypdf -> Output file is a PDF/A-2B; ConsumeTaskPlugin completed:
|
|
Success. New document id 7 created". Zero "File not found". Wlasnosc pi:pi (1000) na NFS.
|
|
Dokumenty testowe posprzatane, produkcyjne 6 nietkniete.
|
|
|
|
## DECYZJA KIERUNKU (wazna)
|
|
Nie lancuch importow, tylko **pionowy plaster**: jeden import probki -> warstwa uzytkowa.
|
|
Kolejnosc: (1) import probki zalacznikow z maili -> Paperless (jego OCR+correspondent-detection,
|
|
NIE osobny pipeline), (2) MODUL 5: koperta w kb-postgres (Paperless=REFERENCJA doc-id,
|
|
Nextcloud=KOPIA) + embeddingi bge-m3 -> pgvector + cross-source link (correspondent <-> nadawca
|
|
maila = ta sama encja, DOWOD zasady kb-00 #7), (3) interfejs pytan (RAG) — pierwszy moment
|
|
realnej uzytecznosci. Dopiero POTEM dopelniac importy (reszta Takeout, zdjecia, transakcje).
|
|
|
|
## TODO nastepne
|
|
- MODUL 5 (koperta + ingest + embeddingi + cross-source) — kb/phases/kb-m5-documents-ingest.md
|
|
- Import probki zalacznikow z maili (kilkaset, nie 70k) — do zbudowania RAG
|
|
- Interfejs pytan / RAG — warstwa uzytkowa
|
|
- Deploy 3 (Nextcloud), Deploy 4 (Gokapi) — configi gotowe, czekaja
|
|
- Google Takeout — zamowic selektywnie, PO zbudowaniu warstwy uzytkowej
|