Reconstruct subagent state from historical messages.
This method parses an array of messages (typically from thread history)
to identify subagent executions and their results. It's used to restore
subagent state after:
- Page refresh (when stream has already completed)
- Loading thread history
- Navigating between threads
The reconstruction process:
- Find AI messages with tool calls matching subagent tool names
- Find corresponding tool messages with results
- Create SubagentStream entries with "complete" status
Note: Internal subagent messages (their streaming conversation) are not
reconstructed since they are not persisted in the main thread state.