Summary
Consecutive read/search/list calls occupy separate TUI cards, including repeated reads of one file. The compact transcript should group exploration without losing the original calls, results, or requested line ranges.
Reproduction
Send three read calls for src/sample.ts: {offset:1,limit:200}, {offset:201,limit:200}, and {offset:401,limit:200}, followed by grep and an assistant answer.
Expected
- Default compact exploration group, active/completed states, bounded preview, visible failures.
- One same-file read summary with read count and explicitly requested ranges; do not imply that requested lines were returned.
- Existing expansion key and mouse control restore original ordered calls and results.
- Original tool-call IDs still route every update/result.
- Hidden reasoning does not split exploration; visible text/reasoning and non-exploration tools do.
- Identical live/history behavior, including text between tools.
- Specialized skill, memory, resource, and custom tool renderers retain their semantic presentation.
Actual and evidence
At 069cb5cbb96730fdee30c9b323ef387ba0d222b7, packages/coding-agent/src/modes/interactive/interactive-mode.ts adds each tool card directly in message updates and tool execution events. renderSessionItems adds the whole assistant message before its tool cards, unlike the live trailing-text path.
Root cause
There is no exploration presentation model between original transcript components and their compact display. The replay path also does not retain interleaved text/tool ordering.
Scope and verification
Presentation only. Do not combine executions or persisted messages. Cover partial arguments, overlapping/disjoint/open-ended requests, EOF/truncation, same basenames in different directories, failure/cancel, hidden/visible reasoning, history replay, bounded many-call rendering, and ordinary tools. Verify the existing event seam before production edits and capture the real provider-to-interactive TUI through a PTY at 80/120 columns.
Related
All-state searches for coalescing, exploration grouping, tool grouping, and the interactive-mode path found no matching tracker. PR #993 / issue #990 concern live trailing assistant text and are adjacent history, not the same request. Provider message coalescing in #1126 is unrelated.
The grouping reference is openai/codex at 5c5308fc9a9ee789049d646ef11e5400384b9c6f: exec model/render, command lifecycle, activity groups, and history/replay tests. Requested range summaries are an additional accuracy requirement.
Summary
Consecutive read/search/list calls occupy separate TUI cards, including repeated reads of one file. The compact transcript should group exploration without losing the original calls, results, or requested line ranges.
Reproduction
Send three read calls for
src/sample.ts:{offset:1,limit:200},{offset:201,limit:200}, and{offset:401,limit:200}, followed by grep and an assistant answer.Expected
Actual and evidence
At
069cb5cbb96730fdee30c9b323ef387ba0d222b7,packages/coding-agent/src/modes/interactive/interactive-mode.tsadds each tool card directly in message updates and tool execution events.renderSessionItemsadds the whole assistant message before its tool cards, unlike the live trailing-text path.Root cause
There is no exploration presentation model between original transcript components and their compact display. The replay path also does not retain interleaved text/tool ordering.
Scope and verification
Presentation only. Do not combine executions or persisted messages. Cover partial arguments, overlapping/disjoint/open-ended requests, EOF/truncation, same basenames in different directories, failure/cancel, hidden/visible reasoning, history replay, bounded many-call rendering, and ordinary tools. Verify the existing event seam before production edits and capture the real provider-to-interactive TUI through a PTY at 80/120 columns.
Related
All-state searches for coalescing, exploration grouping, tool grouping, and the interactive-mode path found no matching tracker. PR #993 / issue #990 concern live trailing assistant text and are adjacent history, not the same request. Provider message coalescing in #1126 is unrelated.
The grouping reference is
openai/codexat5c5308fc9a9ee789049d646ef11e5400384b9c6f: exec model/render, command lifecycle, activity groups, and history/replay tests. Requested range summaries are an additional accuracy requirement.