# Recovery Handoff - KalliLab CORE - 2026-05-15 Zweck: Startpunkt fuer einen neuen Chat, ohne das komplette Repo erneut zu lesen. ## Kontext - Incident: NTFS-Cache-Vorfall ab 2026-05-11. - Host: Unraid `Kallilabcore`, SSH `root@192.168.178.58`. - Root Cause: Cache war NTFS/ntfs3; Disk1 ist noch NTFS/ntfs3 und wird spaeter separat migriert. - Recovery-Prinzip: `docs/STORAGE_LAYOUT.md` ist bindend. Zum Zeitpunkt dieses Handoffs hiess die Datei noch `docs/STORAGE_LAYOUT.draft.md`. - Keine Stacks starten, wenn ein Pfad/Setting gegen Storage Layout, Restore Matrix oder Architecture Master verstoesst. ## Host-Zustand - Cache wurde erfolgreich von NTFS auf XFS neu formatiert. - Verifiziert: `/mnt/cache` ist XFS auf `/dev/nvme0n1p1`. - Disk1 bleibt vorerst NTFS auf `/mnt/disk1`; Migration ist Phase 2 nach stabilem Cache-Betrieb. - Docker und Libvirt wurden nach dem Format wieder gestoppt. - `/mnt/user/appdata` ist leer bzw. nur Basisverzeichnis; produktive Appdaten sind noch nicht restored. - Share-Settings wurden nach Storage Layout korrigiert: - `appdata`, `system`, `domains`: cache `only` - `services`, `documents`, `photos`, `backups`, `media`, `finance`, `projekte`: cache `no`, include `disk1` - `isos`: cache `yes` - Backup alter Share-Configs: `/boot/config/shares.bak-20260515-pre-storage-layout` ## Image und Backups - Full NVMe image liegt auf Windows `H:\kallilab-recovery\2026-05-14\nvme0n1-full-20260514.img`. - `dd` exit code war `0`; Image-Groesse/Padding geprueft; Source-Raw-Hash war fertig. - Image-Data-Hash wurde aus Zeitgruenden bewusst abgebrochen. Risiko wurde als ca. 1-3 Prozent eingeschaetzt. - Hetzner-Borg-Archiv `Taegliche-Sicherung-2026-05-10T04:30:52.050` wurde als lesbare Recovery-Quelle verifiziert. - Verifiziert wurden u. a. Vaultwarden SQLite, Gitea SQLite, Postgres-Dumps und Komodo Mongo-Archiv-Header. - Lokaler Verify-Auszug liegt unter `H:\kallilab-recovery\2026-05-14\borg-verify-may10`. ## Entscheidungen seit dem Cache-Rebuild - WD MyBookLive Duo wird komplett aus dem Setup entfernt. - Backrest wird komplett aus dem aktiven Setup entfernt. - Borg ist alleinige Backup-Technologie. - Appdata Backup Plugin bleibt deaktiviert; WD-Ziele wurden aus aktiver Host-Konfiguration geleert. - Unassigned Devices SMB-Remote fuer `//MYBOOKLIVEDUO/Public` wurde aus aktiver Host-Konfiguration entfernt. - Backrest User Script `check_backrest_hetzner` wurde aus Schedule/Cron entfernt. - Host-Konfig-Backup fuer diese Bereinigung: `/boot/config/cleanup-backup-20260515-remove-wd-backrest` ## Repo-Aenderungen im aktuellen Arbeitsbaum Backrest wurde aus dem aktiven Zielbild entfernt: - `ops/backrest/docker-compose.yml` geloescht - `HOMELAB_ARCHITECTURE_MASTER_V2.md` aktualisiert - `docs/REPO_MAP.md` aktualisiert - `docs/SERVICE_CATALOG.md` aktualisiert - `docs/RESTORE_MATRIX.md` aktualisiert - `docs/AI_CONTEXT.md` aktualisiert - `docs/DISASTER_RECOVERY.md` aktualisiert - `ops/borg-ui/BACKUP_SCOPE.md` aktualisiert - `ops/hermes-agent/services.json` aktualisiert - `ops/hermes-agent/services.yaml` aktualisiert - `ops/policy-checks/last-report.md` aktualisiert Verifikation: - `rg "/mnt/(cache|disk1|disks|remotes)" -g docker-compose.yml -g compose.yaml -g *.yml -g *.yaml` findet keine aktiven Compose/YAML-Treffer. - `rg "ops/backrest|backrest.kaleschke|/mnt/user/appdata/backrest|192.168.178.86|MYBOOKLIVEDUO|WD-DUO"` findet nur historische/gewollte Hinweise. - `python -m json.tool ops/hermes-agent/services.json` ok. - `ops/hermes-agent/services.yaml` YAML ok. - `ops/policy-checks/check_repo.ps1` ok: 29 Compose-Dateien, 0 Critical, 4 Warnings. ## Wichtigste Stop-Regeln - Keine Container starten, solange Core-Pfade oder Share-Settings nicht gegen Storage Layout geprueft sind. - Keine Backrest-/WD-Referenzen reaktivieren. - Keine Bind-Mounts auf `/mnt/cache`, `/mnt/disk1`, `/mnt/disks`, `/mnt/remotes`. - Keine Schreibaktionen auf Disk1 ausser bewusst noetig; Disk1 ist noch NTFS. - Komodo nur gemeinsam und explizit anfassen. - Erst Daten/Secrets restoren, dann Stacks einzeln starten und smoke-testen. ## Naechster sinnvoller Schritt 1. Repo-Aenderungen kurz reviewen und committen/pushen, bevor Komodo wieder produktiv wird. 2. DNS-Basis wiederherstellen: - AdGuard: `/mnt/user/appdata/adguard/conf` aus Borg oder Image restoren; `work` kann frisch sein. - Unbound: `/mnt/user/appdata/unbound/config` aus Borg oder Image restoren. - Danach nur AdGuard + Unbound starten und DNS testen. 3. Danach Traefik + Authelia + Gitea/Vaultwarden in kleinen Schritten. ## Startprompt fuer neuen Chat Lies zuerst `docs/archive/2026-05/RECOVERY_HANDOFF_2026-05-15.md`, dann `docs/STORAGE_LAYOUT.md`, `docs/RESTORE_MATRIX.md` und nur die Compose-Dateien des naechsten betroffenen Stacks. Fuehre den KalliLab-CORE-Restore token-sparend fort. Nichts erfinden, keine Container starten, wenn etwas gegen Storage Layout verstoesst. Backrest und WD MyBookLive Duo sind entfernt und duerfen nicht wieder ins Setup.