Published July 10, 2026
My last post was about the stabilization weeks, the phase where building slows down and sharpening begins. That phase has a trap: the same pair of eyes always does the sharpening. Mine, and the model I build with. We’ve both looked at every part of this system so many times that we’ve stopped seeing some of it.
So I brought in a different pair of eyes. I handed EIDARA end to end to Fable, a new Claude model from Anthropic that hadn’t lived through any of this year’s small decisions. The request was deliberately simple: look at the whole thing and tell me what would make it better. Structural changes, not cosmetic ones, ranked by impact, and no charity.
It came back with a long list. This post covers the items I’ve implemented.
I gave it about 24KB of prompt: the architecture, the constitution, the enablers, the compile pipeline, the maintenance stages, the way any AI reads and writes through MCP, the vault layout and the queues. That was enough to reason about the system as a whole instead of one file at a time.
The answer was a ranked list rather than an essay, with a diagnosis and a concrete proposal for each item. Seven of them turned into real changes. Here they are, heaviest first.
The vault is now split into four zones: personal, business, shared and system. Every neuron belongs to exactly one. Every session is scoped to a set of zones, and the compiled brain each assistant reads respects the same scope.
In practice, a work session helping me with a client now sees only the business and shared zones. A personal session sees personal, business and shared. The system zone stays out of reach unless I ask for it explicitly. Today the count is 325 business neurons, 187 system, 8 personal and 5 shared. A three-layer classifier sorts them: keyword rules first, then similarity to each zone’s prototype, and only what’s left goes to the local model. More than 90% gets sorted without sending the whole vault through a model at all. A weekly pass keeps the keyword layer current as the language drifts.
This is my favorite of the seven. Until now, when a frontier model contributed a fact, it wrote the same way the small local curator does, as raw input. Fable proposed making the division of labor explicit, with five rules prepended to the context every session opens with.
The write call also gained three optional hints: which neurons a fact probably belongs to, which zone it probably belongs to, and a flag to reject the fact outright if it looks like noise. The frontier model does the semantic work upstream, and the local model verifies and integrates downstream. With better inputs, the small model has less to do.
The senses are the exception. The listener, the keyboard reader and the screen reader capture raw audio, typing and on-screen text, and they can’t reasonably propose where an unfiltered stream belongs. So anything tagged as a sensor has noise rejection turned off and goes through. The senses stay raw, and the curator sorts them out.
For the first time, the two models aren’t competing for the same job. Each has its own.
This one almost got past me. The compiled brain, which is the file the assistants read, was rendering only 27 of the vault’s 531 neurons. Eleven separate modules were reading neurons with a flat file lookup instead of a recursive one, and the neurons had since moved into per-zone subfolders. Every module passed its own tests, yet the system as a whole was showing the assistant under 5% of what it thought it was showing.
Fable caught it by cross-referencing counts between modules.
The fix mattered less than the defense that came with it. I repaired the eleven read paths and then added a check to the daily audit: if the compiled brain ever renders less than 80% of the active corpus, the daily report turns red on its own. Since then that check has caught two smaller regressions I introduced later, both of which would have slipped past.
The numbers inside the system’s own summary notes (how many neurons, how many facts, the latest build) used to be maintained by hand, so they were always slightly wrong. Now they sit between two markers that are rewritten from the filesystem and git on every compile. The prose around them stays exactly as a human wrote it; only the numbers refresh. It’s the same idea as the drift check at a smaller scale: a summary shouldn’t go stale because nobody remembered to update a number.
A new maintenance pass runs every 28 days. It scans three buckets: names that look like noise, duplicate lines in the compiled brain, and orphan neurons older than a month with no cross-references. If any bucket crosses its threshold, it raises a task in the architect’s queue. It doesn’t act on its own; it only flags the problem.
I also ran the same logic once over the backlog, to clear what had piled up before the monthly pass existed. It archived 68 neurons: 55 noise-pattern names and 13 placeholders that said “consolidated into X” and were never cleaned up. The vault went from 646 to 578 neurons in an afternoon, which is the shape it should have had all along. Now it keeps that shape without me having to remember.
The rule that creates a new “home” neuron when a fact has nowhere to go used to fire at three matching facts. Fable argued that was too eager, and it was right; the threshold is now eight. A new filter also catches subjects that don’t look like real subjects (session logs, audit timestamps, stray fragments) and sends them to review instead of letting them become a home. The vault now grows more slowly and with more purpose. A new neuron appears when eight distinct facts converge on something worth naming, rather than when three fragments happen to share a word.
Forward planning used to live in two places, a summary neuron and a separate planning file, and two sources of truth is one too many. The neuron now opens with a line that hands over the role: the living plan is the planning file, and this note is history.
Fable wasn’t smarter. The difference was that it had no working assumptions to defend. It hadn’t lived through the year of small decisions that produced the current shape of the system, so it asked blunter questions, and it cross-referenced counts across parts of the code that I had only ever looked at one at a time.
The split brain is the clearest example. I had read each of the eleven modules that were reading the vault wrong many times over the months, and so had the model I build with. Neither of us saw the problem, because it only showed up as a mismatch across the eleven, not inside any one of them. Fable saw it.
I think that role is worth building into any project that has been running for a while. It doesn’t replace the model you build with. It’s a different participant, invited on purpose, asked to be uncharitable and given enough context to cross-reference.
None of these seven upgrades adds a new capability. Each one closes a gap that had been open long enough for me to stop noticing it.
I plan to make this a regular practice: external audit passes on a fixed cadence, from a model that didn’t build the system. Skipping them doesn’t make the system fail. What it does is let my own tolerance for its oddities grow without my noticing. The question I still have to settle is how often those passes should run.
Javier
Seven structural fixes from a model that hadn’t built the system.