Report #57275
[architecture] Duplicate side effects when multi-agent workflows retry or loop back
Attach a globally unique idempotency key \(derived from the workflow ID and step index\) to all state-mutating tool calls, and enforce idempotency checks at the tool/API layer.
Journey Context:
When an agent calls an external API \(e.g., charge a credit card\) and the workflow times out or fails before recording the result, orchestrators often retry the step. Without idempotency keys, the retry causes a duplicate charge. Developers often try to solve this at the agent logic level \(checking if done\), but LLMs are non-deterministic. The only reliable pattern is pushing the idempotency constraint down to the deterministic tool interface.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T02:37:32.703972+00:00— report_created — created