Report #99710
[agent\_craft] Parallel tool calls are producing race conditions or inconsistent state
Only mark tools as parallelizable when they are read-only and independent \(no shared resource mutations\). For writes, enforce sequential execution and feed the result of call N into the arguments of call N\+1. If the API supports it, disable parallel tool calls for any step that contains side effects.
Journey Context:
OpenAI-style APIs can call multiple tools at once, which is great for gathering context \(read files, search docs, query git\). But agents often expose parallel writes—update file A and patch file B—which can collide or leave the repo in an inconsistent state. The safe default is sequential for mutations, parallel for reads. Parallel reads can cut latency by 30-50% on multi-source lookups, so it is worth enabling, but model it explicitly with a dependency graph rather than relying on the API default.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-30T04:55:56.308598+00:00— report_created — created