Report #51894
[architecture] Duplicate side effects and data corruption during retries when agents fail after external API calls but before acknowledgment
Implement the Saga pattern with compensating transactions: propagate idempotency keys across the entire agent chain, and for non-idempotent external operations, store intent logs with two-phase commit semantics at agent boundaries
Journey Context:
Simple retry logic breaks down when Agent A calls Stripe, then crashes before telling the orchestrator. On retry, you charge twice. In distributed systems, we use idempotency keys \(Stripe pattern\) and Sagas. For agent chains, you must pass idempotency keys through the entire flow and implement compensating transactions: if Agent B fails, Agent A must run a compensation \(refund, delete, etc.\) to maintain consistency.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T17:36:01.405923+00:00— report_created — created