The status page's overview (M6.6c)
CI / checks (push) Skipped
CI / checks (pull_request) Successful in 2m35s
CI / e2e (pull_request) Successful in 4m6s

The home page now shows, per agent: the run under way (or idle since
when, and runs a crash may have left open), the active item, nisse-dev's
queue in its own order with items on a blocked build VM held out, parked
items with their wait and note, blocked items and VM blocks, review PRs
by position, and the last ten closed. Kept benchmark runs follow.

Item data is read tolerantly (nisse-dev's own parser refuses unknown
fields); contract tests write items with the agents' own code. Links to
issues, PRs and threads come from --config NAME=YAML, reading only the
Gitea address, the Matrix room and each project's repo and build VM.
The page reloads every minute by meta refresh; ?refresh=0 stops it.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J5Utyfzw7gF7UhjRDEtjTk
This commit is contained in:
dongarandClaude Opus 5.5 committed 2026-10-26 04:45:38 +00:00
1 parent 3b1aa39fcd
commit d02f8c1fbb
17 files changed
+1184 -42

No files matched your search

+14
View File
@@ -392,3 +392,17 @@ def test_the_page_reads_one_items_calls_and_when_recording_began(
assert reader.call(999) is None
assert reader.started_at is not None
assert reader.started_at <= mine["at"]
def test_the_page_reads_the_latest_call_of_any_run(
recorder: calls.CallRecorder,
) -> None:
assert read(recorder).last_call() is None
client = budgeted(Server(), recorder)
with calls.run(recorder, work_item="w", role="driver"):
client.complete(stored([UserMessage(text="go", source="t")]), None, "local")
client.complete(stored([UserMessage(text="hi", source="t")]), None, "local")
reader = read(recorder)
last = reader.last_call()
assert last is not None and last["id"] == reader.calls()[-1]["id"]
assert last["work_item"] is None