# Retry AI Workflows Without Duplicates: Check Uncertain Results

Authored ToolFlowKit practice material. These records are teaching examples, not customer data, current vendor offers, or measured software results.

## Which replay is safe after a lost acknowledgment?

REPLY-A-v2 stays the same operation during the lookup. A new attempt ID is a log entry, not permission to repeat an external action. If lookup cannot establish the outcome, keep the hold rather than writing failed and retrying automatically. Stripe's idempotency rules illustrate a service-specific mechanism; an email destination needs its own documented support.

| Operation / attempt | Observed result | Destination check | Next step |
| --- | --- | --- | --- |
| REPLY-A-v2 / attempt-1 | Timeout; acceptance unknown | No saved message reference | Hold for lookup or manual inspection |
| REPLY-A-v2 / review-1 | Message M-103 found with matching recipient and body | Confirmed in this training scenario | Record success; do not resend |
| REPLY-B-v1 / attempt-1 | Validation rejected before acceptance | Provider says invalid recipient | Correct input; create a reviewed new attempt |

Guide: https://toolflowkit.com/guides/retry-without-duplicates

License: CC0 1.0.
