Check pi liveness per tmux pane and add "Seen" marks to the control board (#1503)
First step-3 refinement from Jason's daily use. Liveness now lists the panes of the agent's tmux session and counts it alive only if a pane runs pi, so killed pi sessions whose tmux session still exists show offline instead of waiting. A "Seen" button on waiting and error rows stores the row's lastActivity in <dataRoot>/board/seen.json (clicks only, never rewritten by a scan, fail closed if corrupt) and drops the row from "Waiting on you" until the agent writes anything newer; "Unsee" reverses it. New POST /api/seen route: JSON only, 4 KB limit, 400 on bad input. Tests: control-board 63/63 (30 new), registry 69/69. Review APPROVED; receipt docs/plans/reviews/2026-09-12_control-board-step3-seen-marks.md. Co-Authored-By: Claude Fable 5.1 <[email protected]>
This commit is contained in:
@@ -1965,3 +1965,25 @@ non-loopback host (now always rejects); expanded rows first closed on every
|
||||
refresh (now persisted); the browser reported a favicon 404 (now a 204 route).
|
||||
The independent reviewer had no browser, so the live check was done by the
|
||||
coordinator and is recorded as such. Next: step 3, Jason uses the page daily.
|
||||
|
||||
## 2026-09-12 — Control board step 3, first refinement (#1503)
|
||||
|
||||
Before: after killing the darkwing and dewey pi sessions, Jason still saw
|
||||
them under "Waiting on you", and most other waiting rows were completion
|
||||
reports rather than questions for him.
|
||||
|
||||
After: liveness now lists the panes of the agent's tmux session and counts
|
||||
the agent alive only if a pane runs `pi`; both killed agents show offline.
|
||||
A "Seen" button on waiting and error rows stores the row's last-activity
|
||||
timestamp in `<dataRoot>/board/seen.json` (written only by clicks, never by
|
||||
a scan, fail closed if corrupt) and drops the row from "Waiting on you"
|
||||
until the agent writes anything newer; "Unsee" reverses it. New
|
||||
`POST /api/seen` route (JSON only, 4 KB limit). Suites: control-board 63/63,
|
||||
registry 69/69. Live: waiting on Jason 18 → 16, Seen/Unsee round trip
|
||||
verified in Chrome. Independent review APPROVED; its one finding (README
|
||||
quoted an incomplete tmux command) is fixed. Receipt:
|
||||
`docs/plans/reviews/2026-09-12_control-board-step3-seen-marks.md`.
|
||||
|
||||
Still open by design: "waiting" cannot tell a question from a completion
|
||||
report; a wording hint or an agent-side "Waiting on:" convention are the
|
||||
next candidates if the Seen button is not enough. Next: Jason keeps using it.
|
||||
|
||||
Reference in New Issue
Block a user