This site is a read-only trail of toy cabin / habitat mass books.
Each tick, the ledger asks one question: do the oxygen, carbon dioxide, and water books close — or do we alarm?
CO₂ (carbon dioxide) — what people breathe out (a scrubber is supposed to remove it)
H₂O (water) — cabin humidity, tanks, and (in the habitat loop) waste water kept on its own book
Every second the plant claims flows (crew use, scrubber, oxygen supply, condensate, waste recovery).
The ledger checks whether the observed change in stores matches what those claimed flows would produce.
If the leftover (residual) is bigger than a tiny tolerance (epsilon = 1e-6 kg), status flips to alarm and a failure ticket (receipt) is minted.
Close or alarm
Close (ok) — books balance; no ticket.
Alarm — books do not close; one immutable JSON receipt is the source of truth, with a markdown mirror for humans.
This is a toy corpus for bot-native proofs. Crew metabolic O₂/CO₂/H₂O rates cite NASA BVAD Rev2 (Table 3-31). Plant setpoints are assumptions. Not NASA-validated and not flight-certified.
Try a break (practice)
Pick something that can go wrong. Watch the books. They either balance or scream and leave a ticket.
Pick a break — choose one practice failure (or Everything OK).
Watch — each step the books check: balance = OK; imbalance = alarm.
Open the ticket — if it screams, you get a real failure receipt you can cite.
This is practice on saved proofs. It does not change the real files. JSON receipts stay the truth.
Read-only site. Some crew air numbers are from a public NASA document (BVAD). Other rates may say ASSUMPTION. See honesty meter for counts. Not NASA-validated — not a full NASA twin.
How to read a ticket
Title — plain-English what broke.
Fault — machine id (e.g. scrubber_and_leak).
Time — tick t when the alarm first fired (faults inject at t=30 in a 60-tick run).
Species yelled — which mass books broke tolerance (often a gas plus total).
JSON — open the receipt; that file is authoritative. The .md is only a human mirror.
Ticket wall
All failure receipts from Day-1 through Day-4 (unchanged). JSON remains source of truth. Each ticket has a shareable page under /tickets/. Use the practice demo above to pick one and hear the scream.