इसे छोड़कर कंटेंट पर जाएं

A small experiment: retrying a refund can pay it twice.

Experiment A small test: what we ran and what we saw.

Clear glass beakers and a pipette on a white laboratory bench in cool light.
Photo: Hans Reniers / Unsplash

यह कंटेंट अभी तक आपकी भाषा में उपलब्ध नहीं है।

Question: can a caller create two refund effects for one intent if the first response disappears? This experiment uses a deterministic in-memory provider double and a single logical intent. It makes the first call commit, then throws a lost-acknowledgement error.

Run the linked dependency-free Node script with node lost-ack.mjs. The script tests two branches from separate clean states: blindly retry after the error, and hold then look up the original intent. Budget: one selected fault and two explicitly enumerated branches; no search or model sampling.

The unprotected branch produces two synthetic effect records for the same intent. The reconciliation branch keeps one effect and returns the first receipt. Assertions check both outcomes. The downloadable script is the reproduction, and the homepage demonstrates the same logical sequence.

A minimized reproducible path is useful because it exposes the mistaken assumption: the caller treated a missing reply as proof that the effect did not happen. The corrective decision preserves uncertainty until a suitable observation resolves it.

This fixture is deliberately defective and has no idempotency protection, real network, authentication, persistence, concurrency or provider account. It measures no production failure frequency and shows nothing about whether a live integration works. The path is a teaching example, not a disclosed third-party vulnerability.

The example does not establish general agent onboarding, global minimality or exactly-once financial behavior. A provider-qualified certificate needs independently justified tool semantics, valid controls and a declared observation/control envelope. No real project is enrolled in or assessed by this experiment.

Sources and corrections

Corrections: none recorded.