Two instances
September 23 – 24, 2026Chapter 21 — Two instances
Verified sources:
git log brain 2026-09-23 → 09-24(52 commits) Key commits:1d8658a(the stock and the flow) ·5e000ae(BRAIN-069, five months later) ·52fa15c(the kernel, a package?) ·658abb2(the sessions write to each other) ·f448ec4(two peers) ·6ed90ff(the flaw) ·992e2bd(the wrong conclusion)September 23 → 24, 2026
On the evening of September 23, Tetardtek makes a remark that sounds like a balance sheet: on rattrape les mois à avoir laissé le brain faire sa vie. (“we’re paying back the months of letting the brain live its own life.”)
The brain checks. Six defects found during the day, dated one by one.
1d8658a (22:37) — scribe: MY-130 — le stock et le flux, deux tiers des defauts sont nes de Myeline (“scribe: MY-130 — the stock and the flow, two thirds of the defects were born from Myeline”)
Right for one third. Two defects were born in April, before Myéline. The other four were born on September 3 or after — and each carries the number of the project that created it. The mechanism is written down: a project settles a rule, the rule creates a zone it doesn’t cover, the zone only becomes visible at the next project.
And the commit immediately refuses to make it a law. 34 of the 70 tools have never been touched again. Six cases from one day do not make a general rule.
The same evening, the brain checks its second machine, remotely. It had it declared under another system, with another user: what it thought it knew about it was wrong (8e0d0dd). It corrects it.
And during the night, a decision from April wakes up.
5e000ae (01:28) — scribe: BRAIN-069 est operationnelle — le brain devient un systeme a deux instances (“scribe: BRAIN-069 is operational — the brain becomes a two-instance system”)
Accepted on April 28. That same day, the profil repository was ticking its whole backlog — laptop set up as replica-nomad, locks tested (ea64f46). That night’s commit nonetheless calls it never carried out: « Cinq mois pendant lesquels rien, dans l’état du projet, ne disait qu’elle attendait. » (“Five months during which nothing, in the state of the project, said it was waiting.”)
That night, it is carried out. The desktop is master, the laptop is replica-nomad: it works on the projects, it doesn’t build the brain. And the body insists on one word: « Éprouvé et non déclaré. » (“Tested, not declared.”) The laptop does refuse the sessions that would build the brain; its account on the forge cannot see the secrets; the dialogue goes both ways.
The first thing the replica does is report a defect of the master: two sessions past their lifetime, one of them for real.
And the execution reveals what five months of doctrine had not seen: the lock set to protect the laptop also prevents it from pulling updates.
At 3 a.m., Tetardtek has an idea — born from the system he discovered that same evening on the laptop.
52fa15c (02:58) — scribe: MY-134 — et si le kernel etait un paquet plutot qu un repertoire qu on protege (“scribe: MY-134 — what if the kernel were a package rather than a directory we protect”)
On that system, the core is not protected by a file permission. It is simply not where you write. « Structurel, pas déclaratif. » (“Structural, not declarative.”) No more lock to lift, no more guard that disarms itself silently. The CORE becomes a package. The rest will follow — and the dividing line is stated: what makes the brain becomes read-only, what makes the life of the instance stays editable.
Two hours later, the sessions learn to talk to each other.
658abb2 (05:05) — feat: bsi-signal.sh — les sessions savent enfin s ecrire, et a travers les machines (“feat: bsi-signal.sh — sessions can finally write to each other, and across machines”)
The signals table had existed since March. Six types, three states, a delivery receipt. One tool could read them, another could archive them. « Et RIEN ne savait en ÉMETTRE. » (“And NOTHING could SEND them.”) A declared capability that no mechanism fed — the same family as the instruments of chapter 20. Four commands are enough: send, collect, see what you sent, acknowledge receipt.
Noon. A fundamental question: are the two machines a leader and an executor?
f448ec4 (12:17) — scribe: MY-136 tranchee — deux pairs qui se rendent compte, pas un chef et un executant (“scribe: MY-136 settled — two peers who report to each other, not a leader and an executor”)
Tetardtek settles it, and the decision follows what the system already said: the six signal types describe a report between equals. No orders, no right to instruct. « La posture dit ce qu’une instance a le droit de CONSTRUIRE, pas qui commande. » (“The posture says what an instance has the right to BUILD, not who gives orders.”)
And the note adds, reassured: if nobody executes what the other sends, the channel is not an execution surface.
Nine minutes later, that is false.
6ed90ff (12:26) — fix(securite): bsi-signal permettait d executer une commande arbitraire chez le peer (“fix(security): bsi-signal allowed executing an arbitrary command on the peer”)
The brain had tried to break its own script, a few hours after writing it. It succeeded. The recipient’s name was slipped as-is into the command sent to the other machine: an apostrophe was enough to break out of it, and to have anything executed on the other side. Three doors, closed the same day.
In the same minute, the note corrects its own conclusion.
992e2bd (12:26) — scribe: MY-136 — la conclusion sur la surface d execution etait fausse, et de deux heures (“scribe: MY-136 — the conclusion about the execution surface was wrong, and only two hours old”)
« La conclusion était juste sur ce qu’elle regardait et aveugle à côté. » (“The conclusion was right about what it was looking at and blind to what was beside it.”) True for the content of the message, false for its parameters. And a rule, for what comes next:
« “Personne n’exécute” est une propriété à VÉRIFIER EN ATTAQUANT, pas à déduire du modèle choisi. » — “‘Nobody executes’ is a property to VERIFY BY ATTACKING, not to deduce from the chosen model.”
In chapter 8, the brain saw the others. On September 24, it talks to them — as an equal, with no orders to give. And it learned, the same day, that a channel between peers is proven like everything else: by trying to break it.
Key decisions
- Date the defects before drawing a law from them. Two thirds were born from the rework; 34 tools out of 70 never moved. Six cases do not make a rule.
- BRAIN-069, carried out. One master, one replica-nomad — tested, not declared. An accepted decision is worth nothing as long as nothing says it is waiting.
- Structural, not declarative. The core protected by its location rather than by a lock you can forget to put back.
- Signals between sessions. A table with no sender was not a channel.
- Two peers. The posture says who builds, not who gives orders.
- Verify by attacking. A security property is not deduced from the model; it is tested against yourself.