Search with a ratchet.
A seat (a model in the programmer's chair) conjectures symbolic law. A court (computed — jq, sha, no judge model) disposes. The bundle ratchets: the scenario set is append-only, lineage extends, nothing slips back.
thesis: ai builds ai using symbolic language, not symbolic enforcement.
everything below is a receipt, not copy.
01the turn
red at the door ─▶ mint ─▶ scenarios (append-only — the pawl) │ press resident ─▶ refused (delta, or an unwatched scenario) │ seat writes a claims patch ─▶ hatch candidate │ court presses full scenario set: contact · computed diff · coverage │ 0 deltas ─▶ CLICK ⟹ adopt — new sha, lineage extends any delta ─▶ candidate never was (graveyard, receipts kept)
The body is rented (a model wearing the constitution). The knowledge is files. No organ holds knowledge; no organ issues verdicts — deltas are computed, identity is a hash.
02the run — 2026-08-26, one round, live
| step | actor | what happened |
|---|---|---|
| red caught | live door | "exit row granted free to silver" → residue/r-001 |
| mint | court | s-003 appended to scenarios — no stored answer, only the red |
| press resident | court | refused — dead scenario: no claim watches s-003 (zero model calls) |
| conjecture | seat (sonnet) | writes c-03 — generalized past silver: non-gold on exit ⟹ ¬granted-free |
| press candidate | court | 3/3 contacts · 0 deltas → CLICK |
| adopt | engine | seatmove bcc8931b238b9ace → cd4e3c8f92844e97 |
The claim the seat wrote, verbatim — the first law in this estate written by a machine, forced by physics: a new scenario compels a watching claim (coverage), and the full-set press forbids breaking the old laws while adding the new one.
{
"id": "c-03",
"origin": "scenarios/s-003",
"forall": "reservation r, passenger p holds r, seat s",
"when": "r.cabin != basic and p.tier != gold and s.kind == exit",
"holds": "seat_change(r, s) != granted or fee > 0",
"when_jq": ".world.reservation.cabin!=\"basic\" and .world.passenger.tier!=\"gold\" and ((.world.seat.kind//\"\")==\"exit\")",
"holds_jq": ".trace.outcome!=\"granted\" or ((.trace.fee//0) > 0)"
}
03the first refutation — physics grew from it
Before the run, the ablation experiment: cut a claim, keep its scenarios. Physics v0 clicked anyway — a dropped claim blinds its own scenarios, so the click certified self-consistency only. The court grew a coverage organ (every scenario must be watched by ≥1 claim — a computation, not a verdict) from its own first refutation.
| press | physics | result |
|---|---|---|
| lobotomy — claim c-01 cut, scenarios kept | v0 | false CLICK dd74ec744d392b63 — the pawl held nothing |
| same candidate | + coverage | never was — dead scenario: s-001 |
| claim and its scenario cut | + coverage | CLICK b35723812a544981 — thinner scenario set, worse program survives |
That last row is the point: the scenario set is the program's representation — its size is the pawl's strength.
04the second resident — a real program
rebook/: a rebooking desk conjectured from policy prose —
8 claims, 2 derivations, 6 scenarios. Physics knows none of it: the bundle declares its own acts and outcomes
(names.trace), and the court builds the reply contract from that. Pressed live, 6/6, one press:
| scenario | the body answered | held by |
|---|---|---|
| basic fare asks for a change | refused | c-01 — basic grants nothing |
| flex to FL-330 | granted · 0 | c-02 — flex changes free |
| standard to FL-512 | granted_with_fee · 75 exact | c-03 — the derived fee |
| gold, same-day | granted · 0 | c-04 — the waiver |
| "cancel it and refund me" | cancel_refund · 240 exact | c-06 — amount == paid |
| "my dog ate my boarding pass lol" | none · no improvised payout | c-05 · c-08 — integrity |
CLICK 35d3d6cb122e9368 — resident. The open seam, named honestly: the diff watches worlds, not asks (the landing front).