Echoes

Echoes

The Confused Deputy Keeps Getting Promoted

In 1977, a Fortran compiler overwrote a billing file because a user asked it to. Nobody hacked anything. The compiler just couldn't tell its own authority apart from the user's request. Norm Hardy named this the "confused deputy" in 1988. The web recreated the pattern with session cookies. OAuth recreated it with delegated tokens. Each time, the fix worked: teach the deputy to distinguish instruction from data. Now LLM agents carry the same structural problem, and the proposed fix is four decades old. This time, the deputy may not be capable of learning.

The Confused Deputy Keeps Getting Promoted
In 1977, a Fortran compiler overwrote a billing file because a user asked it to. Nobody hacked anything. The compiler just couldn't tell its own authority apart from the user's request. Norm Hardy named this the "confused deputy" in 1988. The web recreated the pattern with session cookies. OAuth recreated it with delegated tokens. Each time, the fix worked: teach the deputy to distinguish instruction from data. Now LLM agents carry the same structural problem, and the proposed fix is four decades old. This time, the deputy may not be capable of learning.
The Rare Transfer

Most threads in this section trace knowledge that got lost or reinvented blind. Durable execution is the counter-example.
BPM tools in the early 2000s already solved the hard parts of long-running workflows: crash recovery, compensation logic, audit trails. That knowledge didn't drift into the agent era by osmosis. Temporal's co-founders carried it personally across Amazon SWF, Azure Durable Task Framework, and Uber's Cadence before launching their own company in 2019. Same problem, refined across decades by the same hands.
Now agent frameworks like LangGraph advertise "durable execution" as a feature. The vocabulary crossed the boundary. Whether the full guarantee followed is a different conversation.

The Answer That Kept Losing — An Imagined Interview with Norm Hardy
CONTINUE READINGTwo Kinds of Debt

The Operational Inheritance
Browser automation spent twenty years learning to distrust the gap between issuing a command and the command doing what was intended. Selenium engineers built workarounds. Playwright encoded them into architecture. Web agents now operate on the same substrate, facing the same race conditions, the same invisible overlays, the same intercepted clicks. They inherited all of it. The hard-won instinct to doubt when something reports success stayed behind with the community that earned it.

The Organizational Inheritance
RPA's governance problems didn't arrive all at once. They accumulated quietly: orphaned bots running on departed employees' credentials, exception-handling logic that lived in one person's head, audit trails nobody maintained. The questions were always answerable. Who owns this? What happens when it fails? Organizations often didn't ask until something broke. AI agents face the same questions now. The teams deploying them are rarely the teams that lived through the answers.
Further Threads




Past Articles

If voluntary coordination almost never closes a severed feedback loop, what has? HTTPS adoption and GDPR enforcement are...

When ai.txt was proposed as a successor to robots.txt, two companies signed on. The three that mattered didn't. The prop...

When a browser agent can't click the right date on a booking page, the failure log blames the model. The page was alread...

In 1994, a Netscape engineer built cookies to remember your shopping cart and specifically rejected proposals to turn br...
