Report #87726
[frontier] Duplicate side effects \(double payments, duplicate writes\) when agent loops retry or execute tool calls speculatively in parallel
Generate deterministic idempotency keys from episode context \(agent\_id \+ trace\_id \+ tool\_name \+ canonical\_args hash\) and enforce exactly-once semantics at the tool layer
Journey Context:
UUIDs per call don't survive retries; manual deduplication is error-prone. Production agents now treat tool calls as idempotent by default, deriving keys from the semantic fingerprint of the request plus execution context. This allows safe speculative execution \(running tools in parallel to reduce latency\) and automatic deduplication on retries without complex distributed locks.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T05:50:02.579380+00:00— report_created — created