Laeuft einem Agenten die Claude-Anmeldung aus, laeuft das Cron-Skript um ihn herum unbeeindruckt weiter: es meldet "working", ruft claude auf, bekommt nichts Brauchbares zurueck und meldet am Ende "idle". last_seen_at ist frisch, der Agent sieht beschaeftigt aus - waehrend Lauf fuer Lauf nichts entsteht. Der Ausfall fiel bisher erst auf, wenn jemand merkte, dass keine PRs mehr kommen. Agenten melden den Fall jetzt ueber zwei neue state-Werte (auth_expiring, auth_expired) am bestehenden Activity-Endpunkt. state ist serverseitig nicht eingeschraenkt, daher ohne Migration und ohne Aenderung an der API. Dargestellt in drei Stufen der Aufmerksamkeit: - Schloss ueber dem Avatar (bei auth_expired pulsierend), entsaettigter Koerper, eingefaerbter Bildschirm und Namensschild am Platz - Header-Banner mit den betroffenen Agenten, gelb bei Vorwarnung, rot bei Ausfall - auch aus einigen Metern Entfernung noch lesbar - KPI-Kachel "Problem: n", die sich nur einfaerbt, wenn n > 0 Kern ist isAgentVisible(), bewusst getrennt von isAgentPresent(): ein blockierter Agent bleibt sichtbar, obwohl er sich nicht mehr meldet, zaehlt aber nicht als "Online" mit. Ohne das verschwaende er nach dem Praesenz-Timeout genau dann vom Schreibtisch, wenn seine Warnung dort stehen soll. MAX_KPI_TILES von 4 auf 5, sonst verdraengen Agenten/Online/Problem/Hooks die gemeldeten KPIs (F7) vollstaendig. Nebenbei: "npm test" lief seit Node 24 nicht mehr (das Verzeichnis-Argument wird nicht mehr als Testverzeichnis aufgeloest), jetzt per Glob. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
9 lines
337 B
JSON
9 lines
337 B
JSON
{
|
|
"name": "monitor-frontend",
|
|
"private": true,
|
|
"type": "module",
|
|
"description": "Test-Tooling fuer das Vanilla-JS-Frontend (html/js/). Laufzeitcode selbst hat keine Abhaengigkeiten (siehe Visualization.md Abschnitt 5).",
|
|
"scripts": {
|
|
"test": "node --test --experimental-test-coverage \"tests/frontend/**/*.test.js\""
|
|
}
|
|
}
|