docs: session headers name the harness and the model (displayModel)

- api-reference: the new `displayModel` session field, its sources in order
  (custom-endpoint, statusline, screen, launch) and that it is untrusted
  display text, persisted and restored when the CLI reported it.
- cli-registry: `capabilities.modelDetect` (one capture group, the last rows
  of the probe's capture, anchored on chrome only that CLI draws), the two
  stock patterns (dsh-TUI, codex) and the fifth config regex.
- architecture-invariants (tile grid): the header painter, the id as data, the
  untrusted model text, no writes for an unchanged session, the truncation
  order, Pane A's strip and its fits through syncTerminalGeometry.
- tile-grid-plan "as built", the wiki's Tile Grid page (logo and model rows,
  Split's strips), and CLAUDE.md's tile grid and CLI registry paragraphs.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Codeman maintainer
2026-10-07 13:32:00 +02:00
parent c6e13e4fcf
commit c481bf4f47
6 changed files with 47 additions and 5 deletions
+9 -1
View File
@@ -48,6 +48,13 @@ or settled a question the spec left open. The invariants as built are in
the one cap every limit reads; the layout table keeps 7 to 9 (`TILE_LAYOUT_MAX`), unreachable,
so going back to nine is that one line. A stored grid with more ids comes back as its first
six. Where this spec says nine, read six.
- **Each header names the harness and the model** (owner request): the tile header is
`● [logo] name · model ……… ⋯ ⤢ ×`. The logo is PR #532's `run-mode-dot <cliId>` slot
(the id is data), the model the session's `displayModel` (custom endpoint, else what the
CLI itself reports: claude's statusline, a footer read with `capabilities.modelDetect`
for dsh and codex; else the launch model; else nothing, the logo alone). Both split
panes carry the same strip: Pane B's header, and Pane A's while the split is open. Pane
B's close is a tile button (26px).
- **No + in the tile header** (owner decision 9): the header is `● name ……… ⋯ ⤢ ×`. The
+ menu and its "New session in this case" are gone; tiles are added from the Tiles
button (and its right-click picker), Ctrl/Cmd+click on a tab, a dragged tab, "Open group
@@ -206,7 +213,8 @@ animation frame, and sends one resize per affected tile at pointer-up.
### Tile header
`● name ……… ⋯ ⤢ + ×` (as built: `● name ……… ⋯ ⤢ ×`, owner decision 9)
`● name ……… ⋯ ⤢ + ×` (as built: `● [logo] name · model ……… ⋯ ⤢ ×`, owner decision 9 and
the harness/model request; see "As built")
- **●** status dot from the existing six-state classifier
(`app._sidebarRichRow(id, session)`, built on `_mobileOverviewState`):