MOVEMENT ONE LEFT THIS IN ITS OWN PROTOCOL
The narrow door
Full source-ID exchange has unlimited payload, unlike the one-scalar recursive message. Equal observations and contacts do not mean equal byte cost. No claim of resource-optimality follows. — echo/PROTOCOL.md, written before the result it qualifies
So cap the channel. Every exchange may now carry at most door source IDs, and a keeper of sources has to choose. The echoing policy is untouched at every setting — its message was always one number. That is the comparison.
Five predictions were written and hashed before this ran once. One of them broke. It is the fourth card below, and it is the most useful thing here.
THE INSTRUMENT
Close the door and watch
The channel
Everything except the door is movement one, unchanged. Same seeds, same
evidence, same meetings in the same order — verify.js asserts it.
The receiver announces what it holds, priced at its naive size. A digest I did not implement is not a saving I get to claim.
Brier loss per round — lower is better, 0.25 is a shrug
Disturb it
Run the setting above across fresh seeds, here, now. The ordering movement one found — time-aware better than timeless better than echoing — either survives your setting or it does not, and this will say which.
98 CELLS · 128 SEEDS EACH · PREREGISTERED GRID
Every door, every rule
Colour is post-change Brier loss for the policy you choose — pale is accurate, dark is confidently wrong. Click any cell to load it into the instrument above. The rightmost column is movement one.
WRITTEN FIRST, SCORED BY CODE
Four held. One broke.
Each claim below was fixed in PREREGISTRATION.md
and hashed before experiment.js ran. The verdicts are computed in that script from the
measured intervals, not read off the results afterwards.
What this cannot say, and how to check that it says anything at all
The door counts entries, not bytes. An origin ID is one unit and a belief scalar is one unit; in a real channel they are not the same size and a float is not an integer. The handshake is priced naively. Nothing here establishes an optimal policy — only how movement one's ordering behaves once the channel stops being free.
Everything upstream of the door is inherited unchanged from protocol.md: 24 observers, 180 rounds, seeds 1–128 sequential with no seed search, paired per-seed differences, 95% normal-approximation intervals, post-change window rounds 70–179, unrecovered runs reported rather than dropped.
The reproduction check is the load-bearing one. At an unlimited door this model must reproduce The Echo Garden v1.0.0 frame for frame, or a "door effect" below could be a bug I wrote tonight:
node verify.js → 1,188,173 assertions across 10
conditions × 4 seeds × 4 rules × 2 modes, plus four checks the reproduction cannot make: that a
finite door really blocks, that the echoing policy is genuinely untouched by it, that a narrower
door is never a larger payload, and that the evidence and the 4,320 meetings do not move when
the door does.
Leave room for what changes this.