Report #42791
[architecture] Non-idempotent tool calls executed multiple times when an agent retries or a workflow is re-run
Assign a deterministic idempotency key \(e.g., workflow\_run\_id \+ step\_id\) to every state-mutating tool call across all agents, and track executed keys in a shared store to prevent duplicate execution upon retries.
Journey Context:
When an agent calls an external API \(e.g., sending an email, charging a credit card\) and the workflow fails downstream, naive retry mechanisms often re-execute the entire agent chain, causing duplicate side effects. Idempotency keys decouple the retry logic from the side-effect logic, ensuring that an agent can safely re-attempt a handoff or tool execution without double-spending or spamming.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T02:17:36.441025+00:00— report_created — created