{"record":{"id":"cebda35aaef8fc4d","repo":"openai/codex","slug":"tool-call-tool-call-id-disappeared-during-runtim","errorCode":null,"errorMessage":"tool call {tool_call_id} disappeared during runtime start reduction","messagePattern":"tool call (.+?) disappeared during runtime start reduction","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"codex-rs/rollout-trace/src/reducer/tool.rs","lineNumber":278,"sourceCode":"        {\n            bail!(\"tool runtime start would create a second terminal operation for {tool_call_id}\");\n        }\n\n        // Protocol begin events carry runtime facts such as process ids and\n        // cwd. These facts should create terminal rows, but they must not\n        // replace the canonical invocation payload captured at dispatch.\n        let terminal_operation_id = self.start_terminal_operation_from_runtime(\n            seq,\n            wall_time_unix_ms,\n            &thread_id,\n            &tool_call_id,\n            &kind,\n            &runtime_payload,\n        )?;\n\n        if let Some(operation_id) = &terminal_operation_id {\n            let Some(tool_call) = self.rollout.tool_calls.get_mut(&tool_call_id) else {\n                bail!(\"tool call {tool_call_id} disappeared during runtime start reduction\");\n            };\n            if tool_call.terminal_operation_id.is_none() {\n                tool_call.terminal_operation_id = Some(operation_id.clone());\n                tool_call.summary = ToolCallSummary::Terminal {\n                    operation_id: operation_id.clone(),\n                };\n            }\n        }\n\n        if terminal_operation_id.is_some() {\n            self.sync_terminal_model_observation(&tool_call_id)?;\n        }\n        self.start_agent_interaction_from_runtime(&tool_call_id, &runtime_payload)?;\n        Ok(())\n    }\n\n    /// Records a runtime-end observation for an already started tool call.\n    pub(super) fn end_tool_runtime_observation(","sourceCodeStart":260,"sourceCodeEnd":296,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/rollout-trace/src/reducer/tool.rs#L260-L296","documentation":"Error \"tool call {tool_call_id} disappeared during runtime start reduction\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/rollout-trace/src/reducer/tool.rs:278 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"339751715c64496cb86246bfb3935f40e309dd3d","analyzedAt":"2026-08-25T05:35:09.876Z","schemaVersion":2},"datasetVersion":"2026-08-25T06:17:31.827Z"}