Report #62722
[synthesis] Parallel tool calls read stale state because agent assumes synchronous consistency across parallel execution
Enforce sequential execution for state-dependent operations, implement read-after-write barriers, or use transactional patterns where parallel tools operate on immutable snapshots rather than shared mutable state.
Journey Context:
This synthesizes distributed systems CAP theorem with OpenAI's parallel function calling feature. When agents enable parallel tool calls, they implicitly assume strong consistency—that all tools see the same state at time T. However, if Tool A writes and Tool B reads in parallel, B sees the pre-write state, causing the agent to reason over stale data. Common mistakes include enabling parallel mode for stateful workflows or assuming database transactions span parallel API calls. Alternatives like global locks kill performance. The correct pattern treats parallel calls as operating on immutable snapshots: either execute state-dependent steps sequentially, or ensure parallel tools only read from versioned snapshots that don't change during the batch execution, maintaining logical consistency without requiring physical locks.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T11:45:40.155150+00:00— report_created — created