Report #38735
[synthesis] Agent retry loops on timed-out API calls create duplicate state and data corruption
Tool implementations must generate and pass idempotency keys in API calls, and the agent's state must track 'attempted but unknown' states to prevent blind retries.
Journey Context:
An agent calls an API to create a record; the tool times out. The agent's self-correction logic triggers a retry. The first call actually succeeded, so the retry creates a duplicate. Downstream logic fails due to unique constraint violations or double-charges. This synthesizes network reliability \(timeouts\) with LLM retry loops and lack of distributed systems patterns in tool design. Agents treat retries as free, but without idempotency keys, they compound state mutations.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T19:29:25.102204+00:00— report_created — created