The novel is written from a realized world: 2,435 people who each have a life, a group, a household, a place, a body that eats and starves, a stance on six questions, relationships that move, and a memory of what they lived through. This is the machine that realizes that world and carries it forward a day at a time so the story never has to invent a fact it could have looked up.
Read it top to bottom. Section 02 is the spine — what about a person is computed and what is accepted — and every later section is one part of how that table comes true.
You author rules, targets, counts and exceptions. The machinery derives the individuals and refuses when your rules cannot all be true at once. Three parties hold the whole world this way: you, the agent that writes your sentences into the files the engine reads, and the engine, which computes consequences and never invents a fact.
| Who | Does what |
|---|---|
| You | “The kiln cracked this week — no bricks.” Or, most days, nothing at all until the draft asks. |
| The agent | Drafts the day. Writes the production entry for bricks with a yield of zero, cites the range a working kiln would have produced, records your sentence as the reason. Drafts everything else the day needs for the other 2,434 people, at the grain of cohorts, from the record and the plan. |
| The engine | Checks zero is a permitted value. Checks the kiln crew exists. Realizes the day against yesterday, computes the physics, extends every memory, and hands you back what needs you and what changed. |
| You | Read the brief — at the cadence you set. “That direction”, or “another way”. |
The division of authority is on the record. The agent settles small, reversible choices and must record each one. You rule what cannot be delegated — the population total, the role envelopes, lead-character canon, the premises of the story — and you judge at the level of rooms, people and distributions, never keys. Named characters are drafted like everyone else, from their record and disposition; the difference is that whatever the draft does with them is the first thing you read.
Everything about a person is set one of two ways. Computed: a rule derives it from facts already in the record, with no one in between. Accepted: it was proposed — by you, by the agent's draft, by a model's candidate, by a rule the agent applied — and became a fact when you accepted it. Who proposed it is noted; it changes nothing about its standing. The table is the whole design in one place; the rest of the page says how each row is made true.
| About a person | Kind | How it moves, and who proposes |
|---|---|---|
| Identity, life, occupation, family, biography | accepted | 2,457 character records, proposed and written by you and by agents under your rules. Read-only to everything below. |
| Traits, crisis disposition, the twelve stable dimensions, voice | computed | Scored from the biography by the psychology engine, once. Day-0 facts; a group may admit on them. |
| Group, seat, household, spouse, guardian, host | computed | The Day-0 solve, from the group contracts you wrote. Structure, created jointly, least-moved from your proposal. §03. |
| Crew, place | computed | Each day, by the same solve against yesterday, inside whatever the day's draft dictates. §04. |
| What they ate, deficit, risk band, alive | computed | The ledger's arithmetic from the ration policy and the deaths dictated. Never a behaviour. |
| Belief frame, bloc, strategic position, dominant concern | accepted | At cohort grain with a reason — “445 of the uncommitted convert by Day 2” — proposed by the agent from the weeks walks and any rule it applies, accepted by you, disaggregated to named people by a seeded rule. |
| Health-state, crew and status lenses | computed | Fall out of the physics and the staffing. Nobody proposes them. |
| Morale | computed | A cohort stream from accepted events and physical reads. What it moves in turn — a smaller hunt, a bloc — is a rule the agent applies in the draft, and you accept the result. |
| Relationships: intact, strained, broken, allied, formed… | accepted | After Day 0, a state on every pair, changed at cohort-pair grain — “three couples across the mainland/foreign line break under the ration cut” — and disaggregated to real pairs the record has joined. Named pairs you pin. unbuilt |
| Memory: what they lived through | computed | An event reaches exactly the people it reached, through the groups, crews and places the day realized. §07. |
| How a lead reacts; what they say | accepted | For the dozen leads only, on request, a model proposes from memory and disposition; you accept or reject. §07. |
Two things fall out. Your hand touches about a dozen people individually; the other 2,400 are handled at cohort grain and every one of them still has a full row every day. Anything may be computed about behaviour, and nothing enters the record unaccepted. If morale is computed to lower a hunt's draw, the agent applies that rule in its draft and you see the smaller hunt before it is real. What is refused is only a rule that bypasses you: one running inside the ledger's replay, where the record would come to depend on a value nobody signed.
Before anything moves, one question: given every rule you wrote about groups, relationships, capacities and pins, is there any assignment of 2,435 people that satisfies all of them at once? The answer is usually no, and that is the point.
What the solve decides on Day 0 becomes structure: who is in which group, who is married to whom, who lives where. Everything in section 02 marked computed on Day 0 comes from here. It is also where the first real run found a real defect — seventeen people no group would admit, because one file spelled a group name with capitals and ten others did not — which is the loop doing its job.
Once Day 0 is accepted, the same machinery runs one day at a time, and you are in the loop every day without writing every day. Six steps; you are the last one.
Why one day at a time. Your dictation lands day by day, so the placement must read each day's file before placing that day; a solve over ten days at once would decide day ten's crews before day one had been read, which is the forward simulation by another name. A run over a window is still available as a what-if — “what does this placement do to who dies by day ten” — and it promotes nothing.
Inside step 3, the ledger's day has seven fixed steps of its own. Step 5 is the only place arithmetic happens; the other six are bookkeeping around it. Every categorical change enters at steps 3 and 4 from the accepted day file, which is where any behavioural rule's result already sits; step 5 reads nothing that was not accepted.
At every pause the agent writes you the entry a chronicler would write for the span, from the record, every sentence citing the row it stands on. It is editorial judgement, not a dump, and it comes in a fixed order so the first thing you read is the thing most likely to be wrong.
| In order | What it holds |
|---|---|
| Your people | Anything a lead or a named character did, was moved to, or reacted with that you would want to check: a lead placed somewhere wrong, a reaction that reads false, a named couple changed. |
| The colony | What happened that matters. A ration cut. The first death. A bloc forming, a cohort flipping its frame, the kiln failing, a cohort drifting from the plan past the tolerance you set. |
| What the loop could not decide | One line: a drafted change the constraints refused, an entry outside the agent's delegation (a death canon does not name, lead canon, a premise), a candidate awaiting your yes. |
| Then the counts | For whoever wants them: lenses and pairs per cohort with the entry behind each move; the solve's own moves; stocks, bands, deaths; what changed since the last pause; at a window's close, every count beside the weeks walk's target. |
| Sampled lives | Every week, and on request: a seeded handful of ordinary people, their window told as prose — where they were, whom they were with, what changed for them and why — from the record and memory alone. Add anyone by name. |
The last row is the honesty check for everyone the brief does not mention. Rules that run unread produce absurdities that a table hides and one person's ten days told straight does not. What nothing eliminates is noticing late; what the loop buys is that noticing late is cheap — reopen the day, fix the rate or the rule, and everything after it re-runs.
About fifty named checks exist because an agent writes the inputs, and an agent will confidently invent a plausible value. Five of them decide the character of the whole thing.
| Guard | Refuses |
|---|---|
| Nobody falls through | A person no rule matches stops the build. The alternative is a silent default nobody chose, which is how a colony quietly becomes wrong. |
| Nothing enters unaccepted | Any rule may be computed about behaviour, in the draft. The ledger's replay — the re-derivation of the record from the accepted files — reads no mood, memory or reaction and no behavioural rule, and ledger code importing anything from that side fails a static check. This is the whole of what has been called the firewall: the machine proposes, you accept. |
| Dramatic licence is declared | A death written for somebody the physiology says was not close to dying needs an explicit argument. A number outside its researched range needs one too. |
| Two accounts must agree | The solve's calorie total and the ledger's, replayed over the same day file, must match to the calorie. On 18 August they were 7.2% apart with every test green; nothing but this check could see it. |
| Nothing drifts unseen | Run the thirty day files through the ledger twice from scratch; the two outputs must be identical byte for byte, or something non-deterministic crept in. Every file a run reads gets a hash recorded with the run, so a later run can prove it saw the same inputs. Edit day 3's file after day 7 was accepted, and days 3 to 7 are flagged for a re-run. |
The physics can be complete and still barely reduce the work of writing, because plot is psychology. This part carries the other side: not what happened to somebody, but what they made of it, and what that makes a lead say when you ask.
One open question here, and nothing waits on it: whether a lead's biography or their 52-trait profile grounds their reactions better. Both sources run today; the comparison needs a scene and your blind verdict, and the loop is built either way.
The Day-0 solve at 2,435 people, run once on the real colony: it found a real defect and named one person. The ledger across thirty days with every declared relation. The seam between them, replay holding to the calorie. Memory, disposition and the oracle. Valid time on every fact.
The loop of section 04: the agent's draft, realization against yesterday, the brief with its sampled lives, accept and redirect at your cadence. The pair stream of section 02 — today a relationship is Day-0 structure and nothing moves it. And a re-encoding of one constraint family in the solve, which is why a whole-colony run does not yet fit this machine's memory; the horizon was never the cost.
The vocabulary of pair states. Three physical guesses stamped as guesses: shelter per square metre, litres per fridge, insulin dose-days per litre. The research ratification the map coordinates rest on. A scene and a blind verdict for the biography-versus-profile comparison.
Everything above is the middle band. You author the top; the middle turns those decisions into something that can be interrogated; the bottom is what a reader ever sees, and it owns none of it.
What the research established about the ground is written to be read at the site, by topic, with the map as a figure in it; the map on its own is here: eleven layers, two scales, 21 conflicts, and since 30 September the facts checked against the real coast marked on each feature. Beside it, The ground, checked: the eight things the resource research got wrong about the real coast, with the evidence and the sources opened.
A map, not an authority. The system is specified in specs/substrate/ and described in
MASTER_PLAN.md and substrate/daily_state/docs/ARCHITECTURE.md. Where this
page and those disagree, they are right and this is stale.