The design for the status page (#109), as agreed on 2026-10-24, written into the spec.
Architecture.md
nisse-ui in the naming table: a status page, not an agent.
L7, the call record: a second store beside the log, for study only. It holds every model call of every agent: the request as sent (never headers), the raw response with reasoning, timing, tokens, prompt reuse, and each message's provenance. It's deleted at each start, never read by the agent, and off per agent in config. While it's on, each system prompt says the calls are recorded.
X6, the status page: what it shows (overview and a per-item walkthrough), read-only mounts and no writes, versioning across containers, any recorded run opens (bring-up, e2e, benchmark), untrusted text escaped, operator-only access behind Authelia, nothing exported, commands later as a Transport.
L2: a run going in circles ends, escalated.
L5, L6.1 and X1 have small wording changes to match.
Part Q: commands from the page, including a hold on a task or a whole agent.
Development-Plan.md
M6.6 in slices: a. the call record, b. the walkthrough, c. the overview, d. deployment (with M6.1 and #166). The shared database from #109 is dropped.
M7.8:Driver.run ends runs that go in circles. It cites the Flash-Next review loops from 2026-10-24.
#109 maps to M6.6; commands and the hold are under "not yet scheduled".
Docs only. Slice a (the call record) is stacked on this branch as a separate PR.
The design for the status page (#109), as agreed on 2026-10-24, written into the spec.
**Architecture.md**
- `nisse-ui` in the naming table: a status page, not an agent.
- **L7, the call record:** a second store beside the log, for study only. It holds every model call of every agent: the request as sent (never headers), the raw response with reasoning, timing, tokens, prompt reuse, and each message's provenance. It's deleted at each start, never read by the agent, and off per agent in config. While it's on, each system prompt says the calls are recorded.
- **X6, the status page:** what it shows (overview and a per-item walkthrough), read-only mounts and no writes, versioning across containers, any recorded run opens (bring-up, e2e, benchmark), untrusted text escaped, operator-only access behind Authelia, nothing exported, commands later as a `Transport`.
- **L2:** a run going in circles ends, escalated.
- L5, L6.1 and X1 have small wording changes to match.
- **Part Q:** commands from the page, including a hold on a task or a whole agent.
**Development-Plan.md**
- **M6.6** in slices: a. the call record, b. the walkthrough, c. the overview, d. deployment (with M6.1 and #166). The shared database from #109 is dropped.
- **M7.8:** `Driver.run` ends runs that go in circles. It cites the Flash-Next review loops from 2026-10-24.
- #109 maps to M6.6; commands and the hold are under "not yet scheduled".
Docs only. Slice a (the call record) is stacked on this branch as a separate PR.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01J5Utyfzw7gF7UhjRDEtjTk
nisse-ui (X6) shows the operator each agent's work and, per item, a
walkthrough down to every model request and response, for studying how
context, compaction and memory work. It reads each agent's state store,
call record and memory folder through read-only mounts, so agent code is
unchanged and each agent stays the only writer of its state; it is
released with the agents and tested against stores their own code wrote.
The call record (L7) is new in nisse-core: every request as sent, the raw
response with its reasoning, timing, tokens, prompt reuse and each
message's provenance. It is diagnostic only, never read by the agent, and
deleted at start, so it never migrates.
Commands from the page, including a hold on a task or a whole agent, are
an open question (Part Q). The shared database first proposed in #109 is
dropped. The plan gets M6.6.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J5Utyfzw7gF7UhjRDEtjTk
A run that repeats itself, or keeps getting the same correction, ends in
code as escalated instead of running to its turn cap (L2, M7.8), and the
page flags such runs (X6). While the call record is on, each system
prompt says so.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01J5Utyfzw7gF7UhjRDEtjTk
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The design for the status page (#109), as agreed on 2026-10-24, written into the spec.
Architecture.md
nisse-uiin the naming table: a status page, not an agent.Transport.Development-Plan.md
Driver.runends runs that go in circles. It cites the Flash-Next review loops from 2026-10-24.Docs only. Slice a (the call record) is stacked on this branch as a separate PR.
🤖 Generated with Claude Code
https://claude.ai/code/session_01J5Utyfzw7gF7UhjRDEtjTk