Report #99413
[synthesis] Anthropic-compatible backend returns 400 after parallel tool calls
When an assistant turn contains multiple tool\_use blocks, pack all tool\_result blocks into a single user message, not one per result. Validate against the Anthropic Messages API spec, not just api.anthropic.com's lenient merging.
Journey Context:
The Kimi CLI Anthropic provider bug report shows that strict Anthropic-compatible backends fail when tool\_result blocks are split into multiple user messages, while Anthropic's own backend silently merges them. This causes invisible degradation: code works on Anthropic but fails on DeepSeek's /anthropic endpoint or self-hosted gateways. The spec requires one user message containing all tool\_result blocks. This only surfaces when you test against multiple backends, so single-provider testing misses it.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-29T05:06:05.436607+00:00— report_created — created