fold sub-agent prompts via parent_tool_use_id (T-338)

In live stream-json sessions a sub-agent's spawning prompt is tagged
with parent_tool_use_id, not the transcript JSONL's isSidechain +
parentUuid. The parser ignored that field, so the prompt parsed as a
main-thread user turn and rendered as a blue "you" card above the
Activity Agent card instead of folding into it.

Carry parent_tool_use_id onto ConversationItem; its presence now marks
the item as a sidechain message. The sidechain fold resolves ownership
directly by tool-use id (no transcript-only uuid chain to walk), so the
prompt folds into its Agent card and the run nests under it as before.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-10 16:03:50 +02:00
co-authored by Claude Opus 4.8
parent 026e331146
commit dea3e70e49
7 changed files with 113 additions and 7 deletions
+9
View File
@@ -16,6 +16,15 @@ heading, and (b) bumping `pubspec.yaml` `version:` in the same commit.
## [Unreleased]
### Fixed
- **Sub-agent prompts no longer render as a blue "you" card.** In live
(stream-json) sessions a sub-agent's spawning prompt is tagged with
`parent_tool_use_id` rather than the transcript's `isSidechain`/`parentUuid`,
so it slipped past the sidechain fold and showed as a top-level user turn. The
parser now treats `parent_tool_use_id` as a sidechain marker and routes the
item straight to its Agent card by tool-use id. (T-338)
### Added
- **Clickable file references in the Claude conversation.** Workspace file paths