Skip to content

bug(cli): compact tool rows read empty for quiet or nested-args tools — no 'what' without expanding #3338

Description

@me2seeks

Symptom

In the TUI transcript, an ordinary compact tool row can be name-only during the live tool_start window, and a quiet successful call can degrade to an unhelpful ● Bash (no output). The user has no useful middle ground between the compact row and expanding the full output card.

Current main already renders commands and other invocation details after durable args/results arrive. This issue covers the earlier live window and the compact-row relationship between what ran and what happened.

Scope

  • Let ordinary tools consume a bounded, redacted live invocation preview.
  • Keep command/path/query information visible independently of the result annotation.
  • Do not show the dim no output placeholder when the row already names a successful quiet call.
  • Preserve fixed-shape result statistics, exit status, truncation priority, and the existing Ctrl+O expanded-card contract.
  • Empty or unavailable args remain a name-only fallback rather than input: {} noise.

Scope split

Task Ledger tools are not generic nested-args tools. A useful create row needs the complete committed task set and real IDs; a useful update row needs the subject and exact mutation state, not merely T1 → completed. Their Host-owned semantic timeline is tracked separately in #4179 and is intentionally excluded from this issue and #3376.

Acceptance

  • During the live window, a quiet ordinary Bash call can show ● Bash $ git add -A (running) rather than ● Bash (running).
  • After success, a named quiet call does not use (no output) as its only outcome signal.
  • Preview strings are redacted and bounded before crossing the Runtime Host wire.
  • Durable args replace the preview after reconciliation without changing tool identity.
  • Task Ledger presentation remains unchanged and is handled by feat(runtime-host,cli): render Task Ledger mutations as a durable semantic timeline #4179.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions