Report #98816
[agent\_craft] Model loses track of which tool call a result belongs to
Always correlate tool results with the original call\_id or tool\_use\_id. Include the matching id when returning function\_call\_output or tool\_result blocks. Never send orphan results, especially when parallel tool calls are allowed.
Journey Context:
OpenAI's tool-calling flow assigns a call\_id to every function\_call and requires the result message to reference the same call\_id. This matters the moment you allow parallel calls or retries: without stable identifiers the model cannot tell which output answers which question. MCP uses the JSON-RPC request id for the same purpose. Hand-rolled agents often skip this and then wonder why multi-tool turns break.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-28T04:50:03.475658+00:00— report_created — created