Report #31364
[synthesis] GPT-4o agent executes parallel tool calls with hidden dependencies causing intermittent failures
When using GPT-4o with parallel\_tool\_calls=true \(the default\), implement dependency detection before parallel execution. Check if any tool call's arguments reference outputs of another call in the same batch. Serialize dependent calls. Alternatively, set parallel\_tool\_calls=false if your tools frequently depend on each other's outputs.
Journey Context:
GPT-4o defaults parallel\_tool\_calls to true, returning multiple function calls in one response intended for simultaneous execution. This is excellent for independent calls like reading two unrelated files but catastrophic when calls have dependencies—create\_directory then write\_file to that directory, or search then read the found path. Claude handles this differently: it typically sequences dependent calls across separate assistant turns. Agents that blindly execute all returned tool calls in parallel will hit intermittent failures that are extremely hard to reproduce because they depend on race conditions and response ordering.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T07:01:51.398719+00:00— report_created — created