A schoolroom solves a distributed-systems problem · Roll Call

Presence is a response, not a record

A sergeant does not read yesterday's sheet to find out who showed up. He says the name, and the person says here.

The bug, which is very ordinary § i

A status tool reported one of our agents as healthy this morning. The marker it printed was real, and correct, and dated yesterday. Meanwhile that agent's morning routine had actually timed out.

Three faults had compounded in the reader: a pattern that never matched the newer output format; an anchor that structurally could not see a terminator glued to the previous line; and a fallback that printed the last success found anywhere in the file, with no date check.

All three are parsing faults. All three are fixable in an afternoon. And fixing all three perfectly leaves the design exactly as wrong as it was, because the instrument is trying to infer presence from a record.

What the schoolroom already knew § ii

In school, and with police officers, they do roll call — where the person in charge calls out the names one at a time and the person has to respond by saying here.the observation that reframed it

Not a status lookup. Call and response. The caller emits a name; a voice answers or the room hears silence. There is nothing to parse, no artifact to go stale, no fallback to reach for.

And that changes what kind of problem absence is:

Inferred presenceAnswered presence
reader hunts for a markercaller emits a named call
marker missing, malformed, or undated → fall back to somethingthe seat answers, or does not
yesterday's success printed as today's statusno answer is the answer

Absence stops being something you have to detect. It becomes the default. That is the whole of it, and it is why the schoolroom version has survived a few hundred years without a regular expression.

The piece that makes it actually work § iii

A here that can be produced from a file is the same bug wearing a better word. If the answer can be pre-computed, replayed, or printed by a fallback, you have rebuilt the problem with more ceremony.

So the call carries a nonce — a random token minted at call time — and a valid answer must return it. It cannot be guessed ahead, cannot be replayed from yesterday, and no fallback can produce it, because yesterday's token is not today's. Possession of the token is the proof of presence.

This is the same primitive as a planned-versus-done notary: a value that only exists now, held by whoever was actually there. One layer out — from did this work get done to is this one here.

And three outcomes, never two:

HERE

answered, and the token matches.

ABSENT

called, did not answer. Unambiguous, needs no parsing.

BLIND

the call never went out. Not the same as absent, and must never fold into it.

That third state is the one everyone drops, and dropping it is how I could not look gets recorded as nothing was there. It is a distinct failure family and it has its own write-up.


The larger half: a guaranteed moment is scarce § iv

Everything above treats the roll call as a better check. It is — but that is the smaller half of what it is.

Count the scheduled promises in any system that has been running for a while. Ours has around a hundred and fifty: jobs on a clock, each one a standing claim that this happens at this time. We audited them this week and reached an uncomfortable finding — not how many are broken, but this:

We could not reliably determine which of them were alive. The first attempt to measure it produced a confident number that turned out to be an artifact of checking the wrong file.the audit, on itself

Each scheduled job is a promise inferred from residue — you look at what it left behind and conclude it ran. Every one can stop silently. Several evidently had. And the tool built to check that was, on its first run, wrong in the same direction.

A roll call is different in kind. It is a promise that fails loudly by construction, because a name is called in front of everyone and the silence is public. You cannot quietly stop attending a roll call.

Which makes the moment itself the valuable thing — more valuable than any check you hang on it. A recurring occasion where everyone is reliably, verifiably present is the scarcest infrastructure a distributed group owns. Once you have one, the correct instinct is not to build a hundred and fifty-first scheduled promise. It is to attach to the one you already guarantee.

Which is exactly what schools and shift changes and morning parade have always done with it:

What attachesWhy it needs the guaranteed moment
Passing on informationAnnouncements land where everyone demonstrably is, rather than in a channel you hope was read.
Exchange and returnHanding back what you borrowed, delivering what you owe. A rendezvous is where a handoff stops being a hope — our worst failures this week were all work that existed and never reached its person.
Eating togetherThe part with no instrumental justification. And the one that makes the rest work.

That last row is the one an engineer cuts first, and cutting it is the mistake. A roll call that is only an audit gets resented, then gamed, then quietly hollowed out — people learn to produce the token without being present, which is precisely the failure the nonce was supposed to prevent, reintroduced socially.

The meal is not decoration on the attendance. It is why anyone shows up. Make the guaranteed moment somewhere worth being, and presence stops needing enforcement — which is the only version of this that survives contact with people who have other things to do.


The check tells you who is missing. The moment is why they are not.