tui: quiet transcript noise from agent checks and unknown-tool calls (dogfood A5) - #4231
Conversation
Dogfood finding A5 (#4092), transcript lane #4112. Three cuts: - agent peek/status/wait cells no longer render the spawn's 'delegate done · agent_x' line. tool_routing stamps the non-default action at the front of the args summary, and render_agent_compact labels checks as 'checking/checked' and joins as 'waiting/waited'. During a fan-out session every status check previously read as yet another completed delegate — that was most of the reported spam. - Inspection cells stay compact in Transcript mode too (the Ctrl-O / pager surface), instead of dumping a full session projection per check. Spawn cells keep the full block for session replay. - A call to a nonexistent tool collapses to one header line carrying the catalog error, instead of a four-line name/args/result card. And for the observed checklist mis-call shape (model emitting each list entry as a tool named 'item'/'todo'/...), the catalog error now says the actual fix — one checklist_write call with an items array — instead of the misleading fuzzy match "Did you mean: note, tts?". Tests: five new render tests + one catalog-message test; history module 101 passed, engine missing_tool 4 passed, tool_routing 5 passed.
|
Claude finished @Hmbown's task in 3m 58s —— View job Reviewing PR #4231
SummarySolid, well-scoped fix for the dogfood A5 noise, with good test coverage of the observed shapes. No provider/model/route-safety concerns — this diff doesn't touch prefix/model-inference logic at all. One correctness-adjacent issue and one duplication issue worth addressing before merge; the rest are minor. Findings1. 2. Agent-action taxonomy is now duplicated in three places (reuse)
If a future change adds a new synonym to the real parser (e.g. an 3. Minor: dead 4. Minor: substring match for unknown-tool detection Good choices
Not verifiedRepo-provided |
Summary
Transcript lane (#4112), dogfood finding A5 on #4092. Three cuts at the reported noise:
agentpeek/status/wait calls rendered the same compactdelegate done · agent_xline as a completed launch — in a fan-out session every poll read as another finished delegate.tool_routingnow stamps the non-default action at the front of the args summary andrender_agent_compactlabels checkschecking/checkedand joinswaiting/waited.tool issue · item / name: item / args: status: pending / result: … Did you mean: note, tts?card becomes a single header carrying the catalog error. For the checklist mis-call shape (item/todo/… with per-entry calls) the error now names the actual fix — onechecklist_writecall with anitemsarray — instead of a misleading fuzzy match.Pairs with #4229 (which removes the polling that generates most of these cells in the first place).
Testing
tui::history::tests: 101 pass;missing_tool: 4 pass;tool_routing: 5 pass