October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk4 min

What the Agent Era Keeps Rediscovering About Distributed Systems

Agent workflows still inherit distributed-systems problems. Medori’s examples show why idempotency, independent reconciliation, and explicit failure handling matter—and why none guarantees correctness.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Agent workflows do not make distributed-systems problems new. Duplicate delivery, partial success, and failed branches still need explicit guarantees and observable outcomes. In a September 16, 2026 essay on DEV Community, Pierre-Laurent Medori describes three familiar mechanisms resurfacing in newer automation work: idempotency, reconciliation, and explicit workflow graphs. His examples are useful reminders—not proof that these mechanisms are novel or that using them makes a system correct.

Why a sequential retry test can miss duplicate effects

Medori’s first example is a webhook handler receiving two copies of the same event at nearly the same time. A test that sends one request, waits for it to finish, and then retries may pass: by the time the second request checks, the first has already recorded the event. Concurrent requests create a different race. Both handlers can check that the event is absent before either writes a record, then both proceed.

As an Amazon Associate I earn from qualifying purchases.

A database uniqueness rule can arbitrate that race. PostgreSQL documents unique constraints on one column or a group of columns, so a system can enforce an event identity such as a provider-and-account-scoped key. Its PostgreSQL 16 index documentation explains that a concurrent insert encountering an uncommitted conflicting row waits for the other transaction and checks again. That database-level enforcement is stronger than an application-only “look, then insert” check. PostgreSQL: Constraints and PostgreSQL 16: Index Uniqueness Checks.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The uniqueness rule should gate the local business writes, and the deduplication record should commit in the same transaction as those writes. If the system commits “processed” first and crashes before doing the work, a later delivery may be discarded even though the effect never occurred. If the business writes happen without the protected deduplication record, another delivery can repeat them. A simultaneous-duplicate test should therefore check the resulting database effects, not merely whether both requests returned successfully.

This protects a local transaction boundary; it does not provide global exactly-once execution. Email, payments, and other external effects are separate boundaries. Medori suggests recording outgoing intent in the same local transaction with a transactional outbox, then delivering it asynchronously. Delivery may still happen more than once. A stable operation key helps only if the receiving service supports an idempotency contract, and the key’s retention window matters; Medori’s essay does not establish the contract or retention behavior of any particular provider.

For stochastic agent output, the event or operation identity should be chosen before a run and carried through it, rather than inferred from generated text. In the DEV discussion, a reader makes this point and Medori agrees in a reply. Generated content can vary even when the intended operation is the same.

How to detect partial success with reconciliation

Medori’s second case is a pipeline where a webhook reports successful delivery, but a downstream consumer silently drops records because of a schema mismatch. A delivery acknowledgement confirms something about delivery; it does not, by itself, prove that the intended business result was persisted.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

His proposed backstop is an independent, read-only reconciler that compares durable expectations with persisted outcomes. Independence matters: if the checker follows the same flawed path as the writer, it may share the same blind spot. Reconciliation should look beyond aggregate counts. Equal totals can hide a missing object offset by a duplicate, while matching identities can still conceal an empty or incomplete object. Check relevant content invariants as well as which objects exist.

For a fixed batch of unique messages whose processing has finished, Medori gives the accounting identity inbound = stored + dead-lettered. If processing is still underway, include pending messages too. Compare like with like: delivery attempts cannot be reconciled directly against unique event identities. These are operational accounting rules from the essay, not statistical findings.

A rejected message in a dead-letter queue is recoverable only if someone owns a recovery path. Recording the rejection makes it visible; it does not repair the missing result. Reconciliation is a detector, not an automatic guarantee of correction.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

What an agent workflow graph must say about failures

Medori uses “graph engineering” to describe an inspectable representation of workflow steps, dependencies, conditions, parallel work, joins, and allowed transitions when a branch fails. The essential question is not only what the successful route looks like, but what happens when it does not happen.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Define the behavior at a join

Suppose a workflow fans out to several review branches and one times out. Does the join expose a missing result, retry that branch, or mark the whole review incomplete? A diagram that records only the happy path leaves those control decisions unspecified.

Keep model choices inside an execution contract

A graph can make state transitions and failure handling easier to inspect without making model output deterministic. If a model can choose the next step, that choice still needs to fit an execution contract: which transitions are allowed, what state is required, and how missing or failed work affects the outcome. Otherwise, the diagram describes an expected route while actual control flow lives elsewhere.

What these rediscoveries do—and do not—guarantee

The three examples point to different boundaries: concurrent duplicate delivery versus sequential retry; local transaction versus external side effect; delivery acknowledgement versus persisted outcome; and happy-path diagrams versus explicit branch-failure behavior. They are design distinctions, not a ranking of implementations or evidence that agent systems have made old mechanisms obsolete.

Medori puts the limitation plainly: “A transaction can prevent a duplicate write; it cannot tell you the content deserved to be written. A graph can make a decision inspectable, not correct.” The database documentation supports the mechanics of uniqueness checks; the remaining examples and recommendations are his account and perspective, not a systematic survey or benchmark. His earlier line captures the operational risk: “Every line of code behaves exactly as written, and the system does the wrong thing twice.”

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For teams modernizing integrations or agent pipelines, the practical questions are concrete: can simultaneous copies produce repeated effects, can persisted results be checked independently against durable expectations, and can every failed or missing branch be accounted for at the join?

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.