# Curator Idle Watchdog Spezifikation ## Ziel Automatische Reaktivierung des Hermes Curator nach **14 Tagen Idle**, damit der Skill-Graph nicht dauerhaft isoliert bleibt. ## Problem - Curator läuft normalerweise alle 7 Tage (`interval: every 7d`) - Wenn der Curator ausfällt (z. B. aufgrund von `paused: true`), bleiben Skills isoliert - Derzeitige Beobachtung: Curator blockiert seit 16 Tagen (Stand 24.07.2026) - Keine automatische Erkennung → keine automatische Wiederherstellung ## Lösung: Watchdog-Skript ### `curator-idle-watchdog.sh` **Zweck:** Cron-basierte Prüfung, ob der Curator zu lange offline war. **Ablauf:** 1. `hermes curator status` ausführen 2. "last run"-Zeit extrahieren (z. B. `17d ago`) 3. Tage berechnen und mit `THRESHOLD_DAYS=14` vergleichen 4. Bei Überschreitung → `hermes curator run` triggern 5. Alle Aktionen nach `~/.hermes/logs/curator/idle-watchdog-YYYYMMDD.log` protokollieren ### Cron-Eintrag **Zeitplan:** Sonntag 00:00 (wöchentlich) ```bash 0 0 * * 0 ~/.hermes/profiles/werkstatt/scripts/curator-idle-watchdog.sh ``` **Logik:** - Prüfung nur, wenn Curator `ENABLED` ist - Wenn `last run` < 14 Tage → nichts tun - Wenn `last run` ≥ 14 Tage → `hermes curator run` aufrufen - Fehler protokollieren, aber nicht blockieren ## Implementierung ### Dateien - Skript: `~/.hermes/profiles/werkstatt/scripts/curator-idle-watchdog.sh` - Cron: `/etc/cron.d/curator-idle-watchdog` (oder user-level via `crontab -e`) - Logs: `~/.hermes/logs/curator/idle-watchdog-*.log` ### Akzeptanzkriterien - [ ] Skript existiert und ist ausführbar (`chmod +x`) - [ ] Cron-Eintrag ist aktiv (wöchentliche Prüfung Sonntag 00:00) - [ ] Reaktivierung triggert `hermes curator run` - [ ] Protokollierung in `~/.hermes/logs/curator/` funktioniert - [ ] Keine Änderungen an `main` oder `~/mission-control-v2` ## Test ### Manueller Test ```bash # Simuliere 15-Tage-Idle sed -i 's/last run:.*$/last run: 15d ago/' <(hermes curator status) # Watchdog ausführen ~/.hermes/profiles/werkstatt/scripts/curator-idle-watchdog.sh ``` ### Erwartetes Verhalten 1. Log-Eintrag: `WARNUNG: Curator ist für 15 Tage idle (>= 14) → triggere 'hermes curator run'` 2. `hermes curator run` wird ausgeführt 3. Log-Eintrag: `ERFOLG: Curator-Reaktivierung gestartet` ## Rollback-Plan - Cron-Eintrag löschen: `crontab -e` → Zeile entfernen - Skript löschen: `rm ~/.hermes/profiles/werkstatt/scripts/curator-idle-watchdog.sh` - Logs archivieren: `tar -czf idle-watchdog-logs-$(date +%Y%m%d).tar.gz ~/.hermes/logs/curator/idle-watchdog-*.log` ## Anmerkungen - 14 Tage Threshold = Kompromiss zwischen zu häufigem Trigger (z. B. bei kurzen Wartungen) und zu spätem Erkennen - Watchdog prüft nur bei `ENABLED` Curator (kein Fehlalarm bei `paused`) - Keine Abhängigkeit zu externen Diensten (reines Hermes-System)