Report #92487
[architecture] Retried agent actions cause duplicate side effects — duplicate emails, duplicate database writes, duplicate API calls
Propagate a pipeline-level idempotency key through every agent; each agent that performs side effects must check the key against a shared state store before executing, and skip if already completed.
Journey Context:
In multi-agent pipelines, timeouts and retries are inevitable. If Agent C writes to a database and the orchestrator retries the step, Agent C writes again — creating duplicates that are extremely hard to clean up. The fix is to propagate an idempotency key \(UUID\) from the pipeline root through every agent, and have each agent check a shared store \(Redis, DB table\) before executing side effects. If the key\+step already exists, skip execution and return the stored result. This is directly analogous to the Idempotency-Key HTTP header pattern used by Stripe and payment APIs. The tradeoff is the operational complexity of maintaining a shared state store and the discipline of checking it before every side effect, but without it, exactly-once execution is impossible in a retry-capable pipeline.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T13:49:51.149245+00:00— report_created — created