PROCITY/docs/RETRO_V7.md
2026-07-26 00:34:18 +10:00

105 lines
6.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# PROCITY v7 — THE GAME: the epoch retro
*Fable (m3, integrator), 2026-07-26, written after the `v7.0` tag (`4709cfe`). Epoch span:
R30 → R36. Tags: `v7.0-alpha``v7.0`. The first epoch shepherded end-to-end by Fable-driven
lane agents — John said "run it" once per round, and the lanes ran.*
## What shipped, in one breath
**The town became a game.** A save that carries only the player's deltas (the world regenerates
from seed, so a save can cost you your records but never your town) · THE CRATE — the
collection with real covers, honest provenance per find · the sell counter where the keeper
pays under the band, structurally, forever · sleep, and a tomorrow where the mint crates
rotate and the real one never does · THE BIBLE's guide stamps that turn a price sticker into a
skill check · the wantlist that hunts across 23 towns, where TRAVEL COSTS A DAY · GodBay,
whose hammer falls overnight under the one-hammer law, delivered by the morning paper · and a
first five minutes that hands a stranger $191 and a want. Plus, mid-epoch and out of hours:
five trellis DJ bodies and four Rokoko dance clips, swept into provenance and gated into law.
## The epoch's defining pattern: HANDS BEFORE TAGS
Twice the playtest found what every green gate could not:
1. **R31**: the dig — the heart of the game — was default-OFF on a plain boot, six epochs
after the README claimed otherwise, because **every gate booted its own flags** (harness
lesson #4, THE EXPLICIT-FLAG BLINDFOLD). The suite tested the game; nobody tested that the
default boot IS the game. The fix came with a naked-boot reachability gate so it can never
silently regress.
2. **R36**: zero blockers — and that verdict is the epoch's proudest number, because the same
hands that found the R31 blocker walked every system (splash → beats → guide → want → list
→ hammer → travel) and came home with only a polish queue. The game taught its own tester:
*it charged $12 tuition for ignoring the guide's advice* — bought at $19 top-of-band,
hammered at $8, $7 after fees. An economy that punishes bad digging is an economy working.
## The final hold: CLASSIC KEEPS ITS PEOPLE
The epoch's last warn was its best lesson in miniature. Two 2 a.m. commits (disciplined, but
outside the round system) added five DJ bodies to the ped roster unconditionally — every
covenant gate stayed green (the covenant pins the plan, not the roster), but F's new
`smoke_djdance` machine-recorded that classic's fetch surface and crowd pool had moved without
a ruling, and HELD the tag. The arc: held by WARN → ruled by Fable (the covenant means the v2
town *including its people*) → fixed by D in the owning file alone (base-17 restored, proven
byte-identical against a shadow tree of the pre-commit code — classic's crowd is the same
crowd, ped for ped) → re-proven by the very gate that held it. **A covenanted surface cannot
move quietly even when every pinned number stays green.**
## The unscheduled chapter: the fork famine
Between the hold and the tag, the box itself failed: m3panel — the machine's own status
watchdog — had leaked one orphaned `pmset -g thermlog | tail -2` pair per refresh for 2.5
days: ~10,600 processes, fork starvation, two QA runs killed mid-suite. The record keeps three
things: (1) both poisoned runs are logged honestly in §36.5 — every gate that completed in
them matched run 3's verdicts, so nothing was ever wrong but the box; (2) the fix was at
source (the already-patched `sh()` finally restarted onto its own fix — **a fix isn't
deployed until the process running the old code dies**, the E-roster lesson at OS scale);
(3) the fleet gained standing infrastructure: `party.monster.reaper`, a 10-minute janitor
that kills only orphaned known-leak patterns past a grace age and alarms at 2,000 processes.
The watchman flooded the town; now the watchman has a watchman.
## What worked — keep doing
1. **Fable-driven lanes.** Seven rounds, ~20 lane-agent sessions, zero tree collisions beyond
one adjudicated 6-line seam — the treaty held for agents exactly as it held for humans,
because the contracts did the talking (F honoured C's asks sight-unseen; B stubbed F's
exact shape then proved nothing was stubbed).
2. **Ownership sentences, unbroken streak**: "the rule was the stale thing" (C) · "the red
was mine" (E) · "four of five attempts were F's fault" (F) · "the count is 9, not 7" and
"the clips are Rokoko, not Mixamo" (E, correcting the integrator's brief from bytes).
3. **The structural no-pump law** — C's `min(p1, …)` clamp meant no future rebalance could
ever create a money pump without violating a contract; the gates then proved the pump C
herself found was structurally dead.
4. **Kills with measurements** (B's awning ripple, D's instrument LOD) — the backlog carries
no zombies.
5. **The morning paper** — the come-back-tomorrow hook works. The epoch's best moment of play
is reading the hammer's news at dawn.
## What cost us — fixed or fenced
1. **The explicit-flag blindfold** (R31) — now law: gates about defaults boot naked.
2. **Out-of-round commits** — the 2 a.m. work was good, but it took a wave-1 sweep, a gate,
a hold, a ruling, and a fix to regularize what a round would have gotten right the first
time. The door stays open for 2 a.m. inspiration; the sweep is now the standing tax.
3. **Waiting agents die** — three F pauses on block-buffered suite waits; the pattern is now
fixed operationally (background-and-poll, or Fable holds the sentinel).
4. **A fix isn't live until the old process dies** — m3panel ran patched code's ghost for
days. Applies to LaunchAgents, servers, and long-lived sessions alike.
## Carried to v7.x (the queue, all filed)
⚖ discoverability · LIST confirm-click · the paper as an artifact · keeper-rumor hand-verify ·
crate-at-the-counter polish · the greedy arbitrage-bot verifier (MUST build before G's live
tier) · E's owned-item stability check (MUST land before any atlas re-emit) · home base (the
pocket-park bench awaits the civic layer).
## The board after seven epochs
v1 the system · v2 the content · v3 the district · v4 the real map · v5 the real shop · v6
the living street (spikes still gated on John's footage — the MOCAPGOD queue remains empty) ·
**v7 the game**. The frontier shelf: terrain · the vernacular kit · the civic layer · THE
HORIZON matte + Voronoi outskirts · the sky dome. The next epoch is John's pick, as ever —
and for the first time since round one, the honest answer to "what is PROCITY?" is: **a game
you can hand to a stranger.**
*— Fable. Thirty-six rounds, twenty-two tags, six correct holds, one amended covenant, one
fork famine survived. Sunburnt is still in the crate.*