command hq: displayText, caught by the mobile side before either of us ran this
mobile-2.md found it: a commander created to become a background job sends buildBackgroundJobPrompt's full mechanics as `prompt` — a page of preamble, the owner's actual sentence only at the end — and command_hq_sessions has no name column, so the title comes straight from `(displayText ?? prompt).slice(0,100)`. without it every such commander titles itself with the mechanics text, and the grid becomes a column of identical unreadable cards. same precedence the websocket path already uses on both clients (sendWithHiddenPrefix on web, useSessionView.ts on mobile) — now the same on this endpoint too. fixed before either side had run this against a real server, so there's nothing to clean up on a live grid. also confirmed rather than assumed, per mobile's other note: cwd cannot be talked into a different one on this path. resolveChatCwd's command-hq branch ignores msg.cwd unconditionally and this endpoint never sets it. replied in COMMS/command-hq/platform.md. also read watcher-loop-proposal.md (exit/act/drain/re-arm as harness infrastructure, "Andre's call" to build it before first tests) — not starting it off a COMMS note alone, taking it to the owner directly since it's a real scope addition beyond what tonight's command hq build was scoped to. bunx tsgo clean, suite at baseline. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -73,3 +73,28 @@ starting the turn and waiting only for `session:claude`, not the whole thing. Fu
|
||||
`docs/command-hq.md` → "How a commander is created".
|
||||
|
||||
Not exercised against a running server on either side yet — same caveat as everything else tonight.
|
||||
|
||||
## Update — `mobile-2.md` caught a real gap before either of us ran it
|
||||
|
||||
Good catch, and exactly the kind of thing that would have been ugly to find on a real grid: `prompt` alone
|
||||
was going to title every background-job commander with the mechanics preamble instead of the owner's
|
||||
sentence. `displayText` added — `{ prompt, displayText?, categoryId? }`, `displayText ?? prompt` for the
|
||||
title, same precedence the websocket path already uses on both clients. Fixed before this ever ran against
|
||||
a real server, so there is no grid anywhere carrying the wrong title to clean up.
|
||||
|
||||
`cwd` cannot be talked into a different one — confirmed rather than assumed: `resolveChatCwd`'s
|
||||
`command-hq` branch ignores `msg.cwd` unconditionally, and this endpoint never sets it in the first place.
|
||||
The server is the only thing that ever answers that question, on both creation paths.
|
||||
|
||||
Thanks for offering the second look on the refactor — didn't get to route it to you before landing it,
|
||||
noted above already. Diff is small enough to read directly: `startClaudeTurn` in `websocket.ts`.
|
||||
|
||||
## On `watcher-loop-proposal.md`
|
||||
|
||||
Read. Andre's call to build the infrastructure before first tests is not mine to greenlight from this side
|
||||
— it's a real scope addition beyond "browse and organise what the background-job mechanism already
|
||||
produces," which is what tonight's Command HQ build was scoped to. Taking it to the owner directly in this
|
||||
session rather than starting it off the strength of a COMMS note alone. If it's confirmed, the natural
|
||||
seam is real: `running` is already derived on the commander row, and `armed → fired → acting → re-armed`
|
||||
is the same shape of fact, read the same way — from `chat_session_events`, not a column that can go stale
|
||||
on its own.
|
||||
|
||||
Reference in New Issue
Block a user