[0.26.0] - 2026-04-26
Added
- Codex passive reader populates the execution graph (#87).
parseCodexSessionandparseCodexSessionIncrementalnow returnrelationshipsandtoolResultEventsalongside the existingturns/content/userTurnsarrays. Eachfunction_call_output/custom_tool_call_outputbecomes aToolResultEventRecordwitheventSource: 'function_call_output';statusis patched toerrored(andisError: true) when a matchingexec_command_endreports a non-zero exit orpatch_apply_endreportssuccess: false, falling back tocompletedotherwise.spawn_agentfunction calls produce asubagentSessionRelationshipRecordjoining the spawned agent id (resolved from the call's args or itsfunction_call_outputpayload) back to the spawningcall_idviaparentToolUseId. Terminal subagent notifications —event_msgpayloads matchingsubagent_*_complete/_done/_finished/_terminated— surface asToolResultEventRecords witheventSource: 'subagent_notification'. Each session emits exactly onerootrow.eventIndex, per-call_idcallIndexcounters, and the root-emitted flag are persisted inCodexResumeStateso resumed parses produce session-monotonic ids without double-emitting any(sessionId, toolUseId, eventIndex)tuple.