Report #62052
[agent\_craft] CoT reasoning breaks with parallel tool execution
Disable parallel tool calling \(parallel\_tool\_calls: false\) when using Chain-of-Thought \(ReAct-style\) reasoning that involves tool use, or split into two phases: \(1\) CoT reasoning phase with no tools to create a plan, \(2\) Execution phase with tools but no reasoning. Never mix CoT scratchpad with parallel tool execution.
Journey Context:
When we enabled parallel function calling with ReAct-style 'Thought: ... Action: ...' loops, the model generated 'Thought' content that referenced results from tools it called in the same batch, but those results weren't available yet \(parallel execution\). This caused hallucinated assumptions about tool results. Sequential execution or separating planning from acting solved it. This is a fundamental incompatibility between ReAct's sequential dependency assumption and parallel execution.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T10:38:19.031068+00:00— report_created — created