Report #63003
[architecture] Retrying a failed multi-agent workflow causes duplicate side effects
Assign a globally unique idempotency key \(workflow ID \+ step ID\) to each agent execution and pass it down to external tool calls, ensuring retries safely no-op instead of duplicating state.
Journey Context:
Agents often call external APIs \(e.g., Stripe, SendGrid\). If Agent B fails after executing a side effect and the orchestrator retries Agent B, it might send a second email or charge a card twice. Unlike pure functions, agents have side effects. Passing an idempotency key through the agent context ensures the effect is idempotent. Tradeoff: requires external APIs to support idempotency keys and adds state tracking overhead to the orchestrator, but is the only way to safely retry failed agent steps.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T12:14:07.922846+00:00— report_created — created