Report #56069
[architecture] Duplicate side effects when agent retries cause double-charging or data corruption
Require idempotency keys for all inter-agent requests; implement deterministic deduplication using key \+ payload hash with idempotent receiver pattern, persisting processed keys for at least 24 hours
Journey Context:
Network timeouts trigger retries, but if Agent B already processed the request, naive retries create duplicates. Idempotency keys \(like Stripe's pattern\) must be generated by the client \(Agent A\) and respected by the server \(Agent B\) for the retention window. The key should cover the entire operation including sub-calls. Simply checking 'received' is insufficient; operations must be algebraically idempotent \(f\(f\(x\)\) = f\(x\)\). This prevents the need for distributed transactions which are heavy and complex.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T00:36:20.672566+00:00— report_created — created