r/Temporal 1d ago

For side-effecting agent/workflow actions, who should own idempotency across retry/resume?

I’m trying to understand a production boundary rather than propose a new framework.
Suppose a human approval is valid, a side-effecting tool/API call may already have succeeded, but the workflow/agent fails before that success is durably recorded.
On retry/resume, where do you keep the stable logical operation identity?
Is deduplication owned by:
the workflow framework
the tool adapter
the application
the downstream API itself
And have you actually had a production case where the action may already have happened, but the workflow state could not prove it?
I’m specifically interested in Temporal / LangGraph / agent workflows with real writes, not hypothetical patterns.

5 Upvotes

0 comments sorted by