Skip to content

feat(cli): sessions table gains LLM column; headers say what they mean - #112

Merged
arcaven merged 1 commit into
mainfrom
feat/sessions-table-columns
Aug 5, 2026
Merged

feat(cli): sessions table gains LLM column; headers say what they mean#112
arcaven merged 1 commit into
mainfrom
feat/sessions-table-columns

Conversation

@arcaven

@arcaven arcaven commented Aug 5, 2026

Copy link
Copy Markdown
Member

Operator review of the act-2 demo surfaced that the sessions table misnames two columns and hides a signal it already has. The AGENT header renders Runtime.Name — which names the harness, never the agent, per the ratified elem-runtime-names-harness ruling — and the model each session runs was already tracked (SessionContext.ContextModel) but never shown.

  • AGENT → RUNTIME, NAME → AGENT NAME. Ruling compliance; the table now uses the platform's own vocabulary.
  • New LLM column, populated by both CTX% producers: the stream accountant's raw model id for headless sessions, and the statusline feed's display name for interactive ones. The heartbeat RPC gains an optional model param; ctx-forward sends the payload's display_name; empty means "keep the prior reading" so the simulator changes nothing.
  • Watch-mode keys: l=llm, r=runtime, R=role, h=health — health was never sortable before — and help moves to ? (htop convention). RSS keeps its name (it names exactly what procstat samples: resident set over the pid subtree) and its m keybind.

Verified live against the running act-2 demo, including a daemon swap-in-place through the adopt path: analyst-p LLM claude-fable-5 via stream beside analyst-t LLM "Sonnet 4.6 (1M context)" via statusline.

Additive; the only breaking surface is the internal store method signature (UpdateSessionHeartbeat gains a model arg) and watch keybinds (a removed, help on ?).

Refs: aae-orc-7hzb, finding-011

Column shuffle per operator review of the act-2 demo:

- NAME becomes AGENT NAME and AGENT becomes RUNTIME. The old AGENT
  header violated elem-runtime-names-harness (the column renders
  Runtime.Name, which names the harness, never the agent).
- New LLM column shows the model as the metering producer named it:
  the stream accountant's raw id for headless sessions, the statusline
  feed's display name for interactive ones. The heartbeat RPC gains an
  optional model param and ctx-forward now sends the payload's
  display_name; a reporter that sends "" leaves any prior reading
  standing.
- Watch-mode sort keys: l=llm, r=runtime, R=role, h=health (health was
  never sortable before), help moves to ? (htop convention). RSS keeps
  its name (it names exactly what procstat samples) and its m keybind.
- render_test's column helper now splits on 2+ spaces so the two-word
  AGENT NAME header stays one column.

Verified live against the running act-2 demo: analyst-p LLM
claude-fable-5 via stream beside analyst-t LLM "Sonnet 4.6 (1M
context)" via statusline, after a daemon swap-in-place (adopt path).

Refs: aae-orc-7hzb, finding-011
@arcaven
arcaven merged commit 1531cbe into main Aug 5, 2026
9 checks passed
@arcaven
arcaven deleted the feat/sessions-table-columns branch August 5, 2026 22:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant