doku: Phase 0-4 live, offene Homelab-Punkte (Arcane-Schluessel, feste IP, alte Paketlisten), Verdikte Nachtmeldungen und Homelab-Instanz
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
160381d8b3
commit
56df849455
@@ -1,51 +1,54 @@
|
||||
# Offene Fäden — die eine Liste
|
||||
|
||||
_Stand 24.09.2026. Neues hier rein, Erledigtes raus (die Git-Historie behält es). Entschiedenes steht in
|
||||
_Stand 24.09.2026 abends. Neues hier rein, Erledigtes raus (die Git-Historie behält es). Entschiedenes steht in
|
||||
[VERDIKTE.md](VERDIKTE.md), nicht hier. Die Liste bis 04.09.2026, samt den Lucy-Fäden, liegt im Archiv:
|
||||
[2026-09-04-offene-faeden-alt.md](../archiv/2026-09-04-offene-faeden-alt.md)._
|
||||
|
||||
## Fahrplan zum Homelab Orchestrator (Plan vom 24.09.2026)
|
||||
|
||||
Phase 1 läuft: Box-Diät, Backend, Deploy mit Prüftor und Rückweg und das Sonntags-Update als Timer sind live.
|
||||
Offen sind die Oberfläche (Branch `wartung/phase1d-frontend`) und die Doku (Branch `doku/phase1e-neuordnung`).
|
||||
Phase 2 hat begonnen: Teil 2a (Kern für zwei Instanzen mit Rollen `box`/`homelab`, Partner-Aufsicht,
|
||||
Telegram-Zweitweg, eine Zeitzone) liegt auf `main` (`75611be`). Die Homelab-Instanz selbst wird erst in Phase 3
|
||||
eingerichtet und braucht ein User-OK.
|
||||
Stand 24.09. abends: Phase 0 bis 4 sind live. Die Homelab-Instanz läuft in Container 107 (192.168.178.31), der
|
||||
Ausführer auf dem Proxmox-Host, beide Instanzen prüfen sich gegenseitig, und ein Box-Deploy zieht den Container mit.
|
||||
Ein echtes „Jetzt updaten“ im Homelab hat noch niemand ausgelöst — der erste Lauf ist die eigentliche Abnahme von
|
||||
Phase 4.
|
||||
|
||||
| Phase | Inhalt | Abnahme | Stand |
|
||||
|---|---|---|---|
|
||||
| 0 · Sofort | Nachtmeldungen sammeln und um 07:00 schicken, Dringendes sofort; Sicherung mit Lucys Gedächtnis, `SOUL.md`, Skills, Cron-Skripten und Box-Wart-Zustand; Token-Datei aus dem Repo; Git aufgeräumt | Testmeldung nachts landet in der 07:00-Meldung, dringende kommt sofort; Sicherung enthält das Gedächtnis; auf Gitea nur `main` und Archiv-Tags | erledigt 24.09. |
|
||||
| 1 · Box-Wart 1.0 | Ballast raus (tote Routen, Module, Deploy-Dateien, Skills); Konsole, Spracherkennung, PC-Fernsteuerung, Embedding und Reranker schlafen; riskante Stellen behoben; Deploy mit Rückweg und Prüftor; Sonntags-Update als Timer; Oberfläche; Doku neu | alle Prüfläufe grün, keine toten Routen; ein absichtlich kaputter Deploy rollt sich selbst zurück; Sonntags-Update ohne Hermes-Hänger; Doku beschreibt den Box-Wart | läuft (Oberfläche, Doku offen) |
|
||||
| 2 · Kern und zweite Instanz | zentrales Einstellungs-Objekt, SQLite, Worker mit Job-Engine, Adapter-Schnittstelle mit der Box als erstem Adapter; Oberfläche „Homelab Orchestrator" mit den Bereichen Box-Wart und Homelab; beide Instanzen prüfen sich gegenseitig | Box-Wart verhält sich wie vorher (Tests); ein Update-Lauf überlebt einen Neustart; stoppt eine Instanz, meldet die andere es auf Telegram | begonnen: 2a auf `main` (`backend/kern/`, `/api/partner`, Partner-Prüfung im Wächter, Telegram-Zweitweg) |
|
||||
| 3 · Homelab sehen | Homelab-Instanz als Container auf dem Proxmox-PC (nach User-OK); Proxmox-API mit Leseschlüssel (nach User-OK); Inventar: Host, 6 Container, Arcane-VM mit Docker; offene Updates je Gerät (Host-Pakete per Proxmox-Webhook, App-Versionen, Arcane-API); Erreichbarkeit je Dienst; Anzeige „Rückweg: Snapshot oder Backup"; neue Container per Etikett | Übersicht zeigt alle 8 Geräte mit Update-Stand; ein gestoppter Dienst erzeugt einen Hinweis | offen |
|
||||
| 4 · Jetzt updaten | Ausführer auf dem Proxmox-Host (nach User-OK) für Etikett `community-script` oder `watcher`, ohne `watcher-aus`; Knopf je Gerät: Snapshot, Update, Erreichbarkeits-Check, Erfolgsmeldung; rot → zurückrollen und melden; PBS mit Backup statt Snapshot; Host-Updates mit Warnung, Neustart getrennt; Docker über Arcane, zuerst als Probelauf | ein Update mit absichtlich rotem Check rollt sich selbst zurück und meldet es; nach einem Host-Neustart meldet die KI-Box, dass alles wieder läuft | offen |
|
||||
| 5 · Android-App | Push, Cockpit und Übersicht, Updates unterwegs freigeben, Lucy per Sprache mit Live-Modus; weckt Spracherkennung und Stimme | wird zu Beginn der Phase festgelegt | offen, eigenes Projekt |
|
||||
| Phase | Inhalt | Stand |
|
||||
|---|---|---|
|
||||
| 0 · Sofort | Nachtmeldungen um 07:00, Sicherung mit Lucys Gedächtnis, Token-Datei raus, Git aufgeräumt | erledigt 24.09. |
|
||||
| 1 · Box-Wart 1.0 | Ballast raus, Box-Diät, riskante Stellen, Deploy mit Prüftor und Rückweg, Sonntags-Timer, Oberfläche, Doku | erledigt 24.09. |
|
||||
| 2 · Kern und zweite Instanz | Rollen `box`/`homelab`, Partner-Aufsicht, Telegram-Zweitweg, Aufträge als systemd-Einheiten, Ziel-Modell mit Box-Adapter, strukturierter Update-Verlauf, Oberfläche „Homelab Orchestrator“ | erledigt 24.09. |
|
||||
| 3 · Homelab sehen | Container 107, Ausführer liefert den Bericht (kein Proxmox-Schlüssel), Inventar aller Gäste mit App-Version, Paketen, Webprüfung, Rückweg; Seite „Homelab“ = alle Geräte | erledigt 24.09. |
|
||||
| 4 · Jetzt updaten | Snapshot → Update → Prüfung → bei Rot zurück + Meldung; Host-Pakete mit Warnung, Neustart getrennt; Docker über Arcane als Probelauf | eingerichtet 24.09., erster echter Lauf steht aus |
|
||||
| 5 · Android-App | Push, Cockpit, Updates freigeben, Lucy per Sprache mit Live-Modus | offen, eigenes Projekt |
|
||||
|
||||
Hintergrund zur Homelab-Technik: [ARCHITEKTUR.md](../ARCHITEKTUR.md), Abschnitt „Ausblick".
|
||||
Technik: [ARCHITEKTUR.md](../ARCHITEKTUR.md), Abschnitt „Der Homelab-Teil“; Einrichtung und Betrieb:
|
||||
[BETRIEB.md](../BETRIEB.md).
|
||||
|
||||
## Offene Einzelpunkte (Homelab)
|
||||
|
||||
1. **Arcane-API-Schlüssel fehlt.** Ohne ihn zeigt die Arcane-Karte die Docker-Images als „unklar“. Anlegen in Arcane
|
||||
(Einstellungen → API-Schlüssel), dann `MC_ARCANE_KEY=…` in `/etc/mc2/homelab.env` im Container 107 und
|
||||
`systemctl restart mc2-homelab mc2-homelab-steward`. Docker-Updates bleiben Probelauf bis `MC_ARCANE_ECHT=1`.
|
||||
2. **Feste IP für Container 107.** Er hat seine Adresse per DHCP (192.168.178.31); Partner-Adresse der Box,
|
||||
Ausführer-Konfiguration und der Deploy-Schritt 8 hängen daran. In der Fritzbox die Adresse fest zuordnen.
|
||||
3. **Paketlisten in den Gästen sind alt** (AdGuard seit Oktober 2025). Die Übersicht sagt deshalb „unklar“ statt
|
||||
„aktuell“; „Nach Updates suchen“ je Gast erneuert sie. Offen: ob der Ausführer das wöchentlich selbst tun soll.
|
||||
4. **Die Arcane-VM (106) trägt kein Etikett.** Für Arcane und Docker braucht es keins (eigene Schnittstelle); für
|
||||
Snapshots oder OS-Updates der VM über den Ausführer bräuchte sie `watcher` (heute nicht gebaut).
|
||||
|
||||
## Offene Einzelpunkte (Box-Wart)
|
||||
|
||||
1. **Session-Token des Hermes-Dashboards (nur mit User-Ja).** Das Drop-in
|
||||
`hermes-builtin-ui.service.d/session-token.conf` aus der früheren Desktop-Anbindung ist weiter gesetzt; `backup.sh`
|
||||
und `restore.sh` sichern es samt Kopie `desktop-gateway-token`. Entfernen ist Security-Config.
|
||||
2. **Rote Wächter-Hinweise warten nachts bis 07:00.** Der Wächter meldet mit Betreff „[Box-Problem]" ohne `-d`; zwischen
|
||||
00:00 und 06:59 landet das in der Morgenmeldung. Klären, ob Rot sofort raus soll.
|
||||
6. **Code verweist auf verschobene Doku:** `deploy/mc2-backup.service` (`Documentation=` auf `docs/BACKUP.md`),
|
||||
`backend/services/backup.py` (`docs/BACKUP.md`), `backend/services/maintenance.py` (`docs/BEDIENUNG.md`,
|
||||
sudoers-Hinweis), `backend/services/agent.py` (`docs/HERMES_SETUP.md`), `backend/services/llamaswap.py`
|
||||
(`docs/OPTIMIZATION_PLAN.md`). Beim nächsten Code-Commit auf `docs/BETRIEB.md`, `docs/ARCHITEKTUR.md` bzw.
|
||||
das Archiv umstellen.
|
||||
7. **Oberfläche (Phase 1d):** Updates-Seite mit Urteil und Paketliste, ehrliche Lade- und Fehlerzustände, Rückfragen,
|
||||
Aufträge aller Gruppen. Heute erscheinen Downloads nicht unter „Updates", obwohl die Modellsuche das ankündigt.
|
||||
8. **Units nur auf der Box:** `hermes-builtin-ui.service` samt Drop-ins und die llama-swap-Drop-ins (darunter
|
||||
2. **Units nur auf der Box:** `hermes-builtin-ui.service` samt Drop-ins und die llama-swap-Drop-ins (darunter
|
||||
`warmset.conf`) liegen nicht im Repo; seit 24.09. stehen sie als Kopie in jeder Sicherung.
|
||||
9. **Ungepinnte Abhängigkeiten:** `backend/requirements.txt` nur mit `>=`, jeder Deploy zieht die neueste Version.
|
||||
3. **Ungepinnte Abhängigkeiten:** `backend/requirements.txt` nur mit `>=`, jeder Deploy zieht die neueste Version.
|
||||
Was nachweislich zusammen lief, steht in `known-good/` jeder Sicherung.
|
||||
10. **Der Wächter hält das Hirn für bereit, sobald irgendein Modell läuft** (`pruefe_kern()`). Ein abgestürztes Hirn
|
||||
4. **Der Wächter hält das Hirn für bereit, sobald irgendein Modell läuft** (`pruefe_kern()`). Ein abgestürztes Hirn
|
||||
neben einem geladenen Coder bliebe unbemerkt. Klären, ob gewollt.
|
||||
11. **Radar „Jetzt suchen" läuft synchron** und kann Minuten dauern; `POST /api/models/{id}/load` meldet `ok`, egal
|
||||
5. **Radar „Jetzt suchen" läuft synchron** und kann Minuten dauern; `POST /api/models/{id}/load` meldet `ok`, egal
|
||||
was die Engine antwortet.
|
||||
12. **Kleinkram im Code:** `mcp/mcp_mc.py` (MCP aus) ruft die nie vorhandene Route `/api/routing/route`;
|
||||
6. **Kleinkram im Code:** `mcp/mcp_mc.py` (MCP aus) ruft die nie vorhandene Route `/api/routing/route`;
|
||||
`hermes-postcheck.sh` warnt bei jedem Lauf über den entfernten Patch-Träger; `voice_service/app.py` nennt
|
||||
faster-whisper statt Parakeet; `.aiexclude` gilt nur Antigravity.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user