The Lucy Syndrome
Why LLMs forget corrections — and the layer that makes them hold.
Corrections don't survive the next session, and more context doesn't fix it. What closes the loop is enforcement that runs outside the model. That is the through-line of everything below. Read it straight through, or jump in wherever you already are.
- 01 The Lucy Syndrome: Why LLMs Forget Corrections
LLMs don't remember yesterday. That gap has a name, a causal mechanism, and a fix that doesn't require better memory.
- 02 The Lucy Syndrome and AI
LLMs don't remember yesterday — and that gap has a name. A five-part essay on the Lucy Syndrome, functional scars, and what it takes for a production system to actually learn.
- 03 Questions and answers
Questions about the Lucy Syndrome essay — its scope, its method, and what functional scars actually look like in operation. Compiled from real conversations and updated as new questions arrive.
- 04 Where this came from
The informal companion to the Lucy Syndrome essay — how the observation started, how the system around it took shape, and why an operator in Paraguay ended up writing about model amnesia.
- 05 From memory to scar: a four-layer progression
Anthropic shipped managed memory stores in April. They sit at the third of four layers. The fourth, hooks, is the one that closes the Lucy loop.
- 06 Functional Scars — turning corrections into a primitive
fscars 0.1.0 is out — a bolt-on correction primitive for AI coding agents, built on the framework from the Lucy Syndrome paper. Apache 2.0, pip install fscars.
- 07 A month of functional scars: 934 fires, one broken validation loop, and what it cost
I wired ten functional scars into my own workspace and let them run for a month. Half the signal came from one hook with documented false positives, and 3,838 captured opportunities sat unread. Here are the numbers and what they forced me to build.
- 08 The same scar, two agents
fscars 0.4.0 promotes the Codex adapter from instructions to native hooks. A correction you write once now fires deterministically in both Claude Code and Codex — and the scar itself does not change. Here is how each side works, and the one honest limitation.
- 09 Does this only work in Claude Code?
The most common objection to the Lucy Syndrome framework is that it's a Claude Code trick. It isn't. OpenAI shipped a native hook API for Codex, and the same functional scar now fires unchanged in both runtimes with identical deny semantics — the difference quarantined in a thin adapter. That is the empirical test of invariant I4: enforcement that runs outside the model's trust boundary belongs to no single platform.
- 10 How do you know a correction held? Instrumenting an agent in production
Functional scars make a correction persist. They don't tell you whether the system as a whole is getting better. So I instrumented every session — deterministic, zero-token, never blocking — and let a monthly pass turn the evidence into mechanism changes. The first thing the data caught was me.
- 11 Ninety days of scars
Ninety days ago I started enforcing corrections outside the model. This week I pulled the first real metrics, and it is a mixed result. The busiest hook gets ignored 62% of the time, two of my own tools disagreed about the same number, and the dashboard stayed green while a whole layer was dead.
What's next
The series continues as the work does.
- When the technical isn't democratic — What happens when the statistically common answer is the wrong one in an expert domain.