hermes-erkenntnisse/burst-compute/w44-portal-toggle-step5-2026-07-23.md

1.9 KiB

W44 Burst-Compute: Portal-Toggle, Schritt 5 (2026-07-23) -- ALLE 5 SCHRITTE FERTIG

Datei: /opt/gpu1-status/app.py, GPUPCs-Tab (loadShadow()-Funktion).

Gebaut

  • Neue Karte "Auto-Burst (Monster + GPU-Shadow)" im GPUPCs-Tab, nach der Monster-PC-Karte, vor der bestehenden "Token & Auto-Start"-Karte.
  • Checkbox "An" (bindet an enabled), Zahlenfeld Idle-Timeout (5-240 Min), Live-Anzeige monster_desired/shadow_desired/letzter Tick.
  • loadAutoBurst() liest /api/burst/dispatcher/status, saveAutoBurst() schreibt /api/burst/dispatcher/toggle (aus Schritt 4) -- kein neuer Endpoint noetig, nur UI-Anbindung an bereits gebaute+verifizierte Logik.
  • Wird beim Oeffnen des GPUPCs-Tabs automatisch geladen (loadAutoBurst() in loadShadow()-Renderpfad).

Ablauf (Portal-Skill)

  1. Fresh-Read+Backup: app.py.bak-w44-step5-20260723_184246, md5 identisch mit Live-Stand
  2. Zwei Unique-String-Replaces (assert count==1 je Anker: Karten-HTML-Einfuegung + JS-Funktionsblock vor loadShadow(){)
  3. py_compile OK
  4. Testinstanz :9092: /=200, HTML enthaelt ab-box, ab-enabled, loadAutoBurst, saveAutoBurst -- gestoppt
  5. Vor dem Restart auffaelig: MainPID war zwischen Schritt4-Verifikation und jetzt bereits einmal gewechselt (207132 -> 207758, 18:40:54) -- vermutlich ein anderer Worker (#45/Cleanup/#53) hat parallel restartet. Kein Konflikt, da mein Fresh-Read fuer Schritt5 NACH diesem fremden Restart erfolgte (18:42:46) und die Anker sauber getroffen haben.
  6. systemctl restart -- PID-Gegenprobe: 207758 -> 208816 (Start 18:44:47, nach Edit)
  7. Live: :9090/=200, HTML enthaelt alle neuen Marker, cp.go-ki.eu=200

Status: Default bleibt AUS

auto_burst_state.json existiert weiterhin nicht -> enabled=False. Der Portal-Toggle ist jetzt der korrekte, von Baer selbst bedienbare Weg, Auto-Burst live zu aktivieren -- ich habe das NICHT selbst im Code hart auf True gesetzt (siehe Begruendung im Gesamt-Beleg an main).