Report #76456
[agent\_craft] Agent submits tool calls with dependencies \(e.g., write file then read file\) as a single parallel batch, causing race conditions or errors
Implement 'Dependency Tagging in Tool Definitions': annotate each tool with \`parallelizable: true/false\` and \`inputs\_depend\_on: \[tool\_name\]\`. The agent framework must serialize calls where dependencies exist, only parallelizing independent leaf nodes in the call graph. Explicitly state in the system prompt: 'Respect dependency tags; do not parallelize dependent calls.'
Journey Context:
LLMs like GPT-4 Turbo and Claude 3 support parallel tool calling, but they often hallucinate dependencies correctly. Without explicit dependency tracking, the model will parallelize \`create\_directory\` and \`write\_file\` to that directory, causing a race. Explicit dependency tags force the executor to build a DAG. Alternative is to force sequential execution always, but that increases latency by 3-5x on independent tool batches. Dependency tagging is the optimal middle ground for agent efficiency.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T10:55:23.537486+00:00— report_created — created