# PROCITY v7 — THE GAME (epoch charter — **RATIFIED by John, 2026-07-17**) *(Ratified as drafted; the fantasy stands. R30 opens the epoch — v7.0-alpha wave 1.)* *Fable (m3), 2026-07-17. From THE_FRONTIER's headline gap: the world is built, the game isn't. v7 is the smallest set of systems that makes a stranger play twice. Design principle: every system below rides machinery that ALREADY EXISTS — nothing here invents a new world layer.* ## The fantasy, one line **You're a crate-digger in 90s Australia: build the collection, learn the prices, work the towns — and be home in time for the gig.** ## The loop Wake (save point) → plan the day (shops shut per their real hours; the gig starts at night — the clock finally matters) → dig shops, spot the gems (priced below the guide), spend scarce cash → sell the flips (keeper today; the auction tomorrow) → sleep = save, the day advances, stock rotates → the collection grows → the wantlist points at another town → travel costs a day. Repeat, richer and one gem wiser. ## The systems (each with its existing foundation) 1. **PERSISTENCE — the foundation stone.** Save = THE DELTA ONLY: cash, owned items, town, day number, wantlist, stats. The world is never saved — it regenerates from seed (the seeded-everything law finally pays its biggest dividend: saves are tiny and can't corrupt the world). localStorage, schema-versioned, JSON export/import for moving machines. *Foundation: item identity is already stable — parody items are seeded, real/mint carry skus (the R25/R26 sku fences were built for exactly this, before we knew it).* 2. **THE COLLECTION.** Your crate, as a UI: cover, title, artist, price paid, where and what day you found it. The trophy case of the whole game. (A walkable home-room shelf is v7.x — UI first.) *Foundation: the atlas indexes already carry every field the card needs.* 3. **THE GUIDE + THE GEM (the thrill loop).** An in-game price guide — thriftgod's BIBLE concept — gives a VALUE BAND per item (imperfect, like the real 90s guide books). Shops price with seeded variance around it → a **gem** is an item priced under its band. Skill = spotting them. *Foundation: mint() gem/price bands exist as data and drive nothing; real items have real dealgod prices; the dig card already shows asking price.* 4. **SELLING — where cash comes back.** v7.0-alpha: sell to a keeper at the counter (below guide, always — the no-money-pump law). v7.0: **GodBay** — list an item, a SEEDED offline auction resolves NEXT DAY (the come-back-tomorrow hook; thriftgod's auction brain, G's lane, offline tier first per the proven tier-ladder pattern — a live tier is v7.x and rides the G3 rails). 5. **THE DAY.** Sleep advances the day; **stock rotates per (shop, day)** — seeded, so day 3 in Bendigo is the same for every player on that seed (parody/mint rotate; the real shop's real stock stays real); gigs already run a 7-night week — `day % 7` plugs straight in; hours already exist — now closing time costs you something. *Foundation: the segment spine, `isOpen`, and `plan.gigs` are all sitting there waiting.* 6. **THE WANTLIST + TRAVEL.** Mark items/artists you're hunting; seeded rumors surface hints ("saw one in Castlemaine" — a keeper line, a gig-crowd mutter: D's citizens finally gossip for a reason); **travel costs a day** → 23 towns become a strategy map instead of a dropdown. *Foundation: the selector, the pack, the personas.* 7. **THE FIRST FIVE MINUTES.** You arrive with $50 and a want. Three toast-beats: dig, buy, sell. A real splash. *(Smallest system, biggest stranger-facing payoff.)* ## The stages - **v7.0-alpha — THE SAVE AND THE CRATE:** persistence + collection UI + sell-to-keeper + sleep/day cycle + stock rotation. ONE town plays as a complete (small) game. - **v7.0-beta — THE THRILL:** the guide bands + gem variance + wantlist + rumors + travel costs a day. The 23 towns become the map. - **v7.0 — THE AUCTION:** GodBay offline tier, onboarding, the tour ("day one to first gem" as the money shot), docs freeze, tag. ## The laws (new ones this epoch earns) 1. **The delta law:** a save NEVER contains world state — only player deltas. A corrupted save can cost you your stuff, never the town. 2. **The no-pump law:** every sell price < the buy-side guide band, structurally. The economy gets a GATE (an agent plays N seeded days and asserts net-worth growth is bounded by finds, not arbitrage loops). 3. **Game money is game money:** the write-back law extends — no bridge to real money, ever, in either direction. 4. **Classic stays pure:** `?classic=1` boots the v2 town with NO game layer (no save, no HUD additions) — the covenant is untouched. The game layer defaults ON for normal boots (the v3.1 flip precedent) with `?game=0` as the opt-out. 5. **Rotation is seeded:** stock rotation draws from (citySeed, shopId, day) — deterministic, gate-checkable, same for everyone on a seed. ## Lane map (first cut) **F** the save core + gates (delta law, no-pump gate, save/load determinism) · **B** the UI surfaces (collection, wantlist, day clock, splash — hud.js territory) · **C** the counter sell interaction + dig-card guide hints (+ the home room, v7.x) · **A** the day/rotation seeding contracts (new sub-streams, goldens untouched — rotation rides runtime, not plan gen... A verifies that boundary) · **E** guide-band data baked into packs/atlases (mint bands, real prices) · **D** rumor lines through keepers/citizens · **G** GodBay (the auction brain, offline seeded tier) + real guide prices from dealgod. ## Risks (named now, v4-style) 1. **Economy balance** — pumps, dumps, degenerate flips. The no-pump gate is the fence; a playtest-bot (an agent that greedily arbitrages for N days) is the adversarial verifier. 2. **Save schema drift** — versioned from day one, migration-or-reject, never silent. 3. **Item identity across re-emits** — a re-baked atlas must not orphan owned items (the sku IS the identity; E's validator grows an owned-item stability check). 4. **Scope gravity** — the game wants everything (housing! romance! a phone!). The stage gates are the fence: alpha ships ONE town playing well before beta touches 23. 5. **v6 collision — none by design:** v7-alpha is systems/UI (F/B/C-heavy); v6's spikes are clips/ultra (E/D/G-heavy). They interleave; Fable sequences the rounds. ## Sequencing v7.0-alpha can start **now** — it's unblocked (v6 waits on footage; the two don't collide). Recommended: R30 = v7.0-alpha wave 1 (F save core + B collection UI + C sell counter contracts first). John ratifies this charter (or amends the fantasy — it's your shop, your era, your game) and says go. ## Risk verdicts at the close (R36, v7.0 — written by F per the single-lane-close ruling) 1. **Economy balance — RETIRED (structurally fenced).** The no-pump gate is STRICT since R30 (5 real UI round trips all strictly negative + C's broke-player negative control); R32 moved the fence from the receipt to the band (`credited == min(bandLow−1, ⌊bandLow/2⌋)`, the exact formula, not an inequality); R34's GodBay holds EV ≈ 0.8×mid under the ONE-HAMMER law (item- identity-seeded — a passed-in item re-lists to the same result forever, so there is no retry farm), bounded above at 2×high×0.88. Both hand playtests confirmed the shape — Fable's wave-0 line: the game charged $12 tuition for ignoring its own advice. *Honest residue:* the named adversarial verifier (a greedy N-day arbitrage bot) was never built as an agent — the structural gates + two hand playtests stood in for it. It goes live again with G's live tier (v7.x), where structure alone won't be enough. 2. **Save schema drift — RETIRED.** `procity-save/1` versioned from day one; corrupted/foreign blobs loud-reject + stash raw + boot fresh (gated since R30). The schema widened three times in-epoch (`pulls` R32 · `wants` R33 · `listings` R34), every field optional, validated-exact-and-loud when present, absent-compatible — zero migrations, zero silent rejections, alpha saves still load at the close. 3. **Item identity across re-emits — CARRIED (narrowed, never fired).** The sku IS the identity (the R25/R26 fences); real-sourced pulls/listings key by `sku:`, parody by seeded slot identity. No atlas was re-emitted during v7, so the risk never had a chance to fire — and E's validator still lacks the chartered owned-item stability check. Carried to whichever round next re-bakes an atlas: that round must add the check BEFORE the re-emit. 4. **Scope gravity — RETIRED (the stage gates held).** Alpha shipped one town playing complete (R30–31), beta opened the 23 (R32–33), v7.0 closed with the auction + onboarding (R34–35). Every mid-epoch want was FILED, not built: the §31.6 beta queue, then the v7.x queue (⚖ discoverability · LIST confirm · the paper as artifact · keeper-rumor by hand · walkable home room). No housing, no romance, no phone. 5. **v6 collision — RETIRED (none, by design).** The epochs interleaved without a merge conflict or a contract collision. The one contact was the July-20 2 a.m. commits (`046668e`/`b339402`: 4 Rokoko dance clips + 5 trellis DJ bodies, v6-flavoured assets landing mid-v7 outside the round system) — swept into provenance/licence/depot by E (R36 w1) and gated by F (R36 w2: figure-scale spawn proof, runtime bind census, classic zero-fetch for the clips). One hold from that sweep rides the R36 record: the DJ bodies joined `?classic`'s roster ungated — Fable to bless or bounce.