homelab-codex-ws/kb/runbooks
oskar 41d3543082 docs(kb): kb-site — dokument serwisu (public) + runbook deployu (private)
kb/services/kb-site.md (type: service, visibility: public) — opis samej
wystawki: co jest publikowane (regula fail-closed na `visibility`), jak
renderowane sa odnosniki do dokumentow nieopublikowanych, struktura builda,
stopka z commitem, bramka --check. Napisany tak, zeby sam przechodzil --check:
zero adresow, portow i sciezek hosta — szczegoly operacyjne siedza w runbooku.

kb/runbooks/kb-site-deploy.md (type: runbook, visibility: private) — pelna
procedura: deploy na PIHA, generacja + kontrola wyciekow jako bramka
publikacji, podmiana tresci w wolumenie helperem alpine (wzorzec z
services/narty27/README.md, rozszerzony z pliku na drzewo), rekord A w
Cloudflare + Pi-hole local DNS (split-horizon), proxy host i cert przez
scripts/npm/npm_api.py, weryfikacja, rutynowa aktualizacja jednym lancuchem
&&, tabela rollback/typowe problemy.

Dwie rzeczy zapisane wprost, bo latwo je przeoczyc:
- kolejnosc DNS -> NPM host -> cert (HTTP-01 wymaga dzialajacego vhosta),
- `rm -rf /content/*` przed rozpakowaniem — bez tego dokument przelaczony z
  public na private zostaje w wolumenie i dalej jest serwowany.

Runbook notuje tez aktualny wynik --check (22 trafienia /opt/homelab w
dokumentach public) jako decyzje do podjecia przed pierwsza publikacja:
wyczyscic zrodla albo swiadomie wpisac wyjatek do whitelisty.
2026-08-04 18:01:56 +02:00
..
chelsty-deploy-recovery.md feat(kb): SPLIT chelsty-runtime -> node + runbook 2026-08-04 16:58:46 +02:00
control-plane-deploy-recovery.md feat(kb): SPLIT vps-control-plane -> subsystem (deprecated) + runbook 2026-08-04 16:58:46 +02:00
deploy-runner-install.md feat(kb): SPLIT deploy-runner -> service + decision + runbook 2026-08-04 16:58:46 +02:00
documents-ingest-run.md feat(kb): SPLIT documents-ingest (30 KB) -> service + phase + runbook 2026-08-04 16:58:46 +02:00
fleet-prometheus-deploy.md feat(kb): SPLIT fleet-prometheus -> service + decision + runbook 2026-08-04 16:58:46 +02:00
gmail-header-backfill-run.md feat(kb): SPLIT service+runbook — 10 serwisow -> 20 dokumentow 2026-08-04 16:58:46 +02:00
gokapi-cutover.md feat(kb): SPLIT gokapi -> service + decision + runbook 2026-08-04 16:58:46 +02:00
ha-diag-agent-deploy.md feat(kb): przenosiny type=runbook do kb/runbooks/ (5 plikow, bez SPLIT) 2026-08-04 16:58:04 +02:00
ha-diag-agent-runbook.md fix(kb): przepiecie wszystkich odwolan wewnetrznych po migracji 2026-08-04 16:58:46 +02:00
ha-mcp-install.md feat(kb): SPLIT service+runbook — 10 serwisow -> 20 dokumentow 2026-08-04 16:58:46 +02:00
home-assistant-deploy.md feat(kb): SPLIT service+runbook — 10 serwisow -> 20 dokumentow 2026-08-04 16:58:46 +02:00
kb-query-deploy.md fix(kb): przepiecie wszystkich odwolan wewnetrznych po migracji 2026-08-04 16:58:46 +02:00
kb-site-deploy.md docs(kb): kb-site — dokument serwisu (public) + runbook deployu (private) 2026-08-04 18:01:56 +02:00
mail-body-ingest-run.md feat(kb): SPLIT service+runbook — 10 serwisow -> 20 dokumentow 2026-08-04 16:58:46 +02:00
narty27-deploy.md feat(kb): SPLIT service+runbook — 10 serwisow -> 20 dokumentow 2026-08-04 16:58:46 +02:00
nextcloud-cutover.md feat(kb): SPLIT nextcloud -> service + decision + runbook 2026-08-04 16:58:46 +02:00
node-onboarding-tool.md feat(kb): przenosiny type=runbook do kb/runbooks/ (5 plikow, bez SPLIT) 2026-08-04 16:58:04 +02:00
node-onboarding.md feat(kb): przenosiny type=runbook do kb/runbooks/ (5 plikow, bez SPLIT) 2026-08-04 16:58:04 +02:00
npm-api.md feat(kb): przenosiny type=runbook do kb/runbooks/ (5 plikow, bez SPLIT) 2026-08-04 16:58:04 +02:00
ollama-piha-deploy.md feat(kb): SPLIT service+runbook — 10 serwisow -> 20 dokumentow 2026-08-04 16:58:46 +02:00
ollama-solaria-cutover.md fix(kb): przepiecie wszystkich odwolan wewnetrznych po migracji 2026-08-04 16:58:46 +02:00
paperless-cutover.md fix(kb): przepiecie wszystkich odwolan wewnetrznych po migracji 2026-08-04 16:58:46 +02:00
paperless-worker-deploy.md fix(kb): przepiecie wszystkich odwolan wewnetrznych po migracji 2026-08-04 16:58:46 +02:00
planner-agent-deploy.md feat(kb): SPLIT service+runbook — 10 serwisow -> 20 dokumentow 2026-08-04 16:58:46 +02:00
service-operational-recovery.md feat(kb): SPLIT lifecycle -> subsystem + runbook 2026-08-04 16:58:46 +02:00
stability-agent-rollout.md feat(kb): SPLIT stability-agent-rollout -> runbook + subsystem 2026-08-04 16:58:46 +02:00