PROCITY/docs/V7_THE_GAME.md
m3ultra d9d8cbfd3e Lane F R36 w2 (v7.0 close): THE FREEZE — README v7 section, charter risk verdicts, notes §36
README: the v7.0 section (the loop dig->guide->want->travel->list->paper, the
delta-law machinery, the classic covenant) + the morning-paper manual row.

V7_THE_GAME.md: the five charter risks get their retired-or-carried verdicts,
v4-style, written by F under the single-lane-close ruling: economy RETIRED-
structural (the named bot verifier carried to the live tier) · schema drift
RETIRED (three optional widenings, zero migrations) · re-emit identity CARRIED
(never fired; owned-item stability check unbuilt — the next re-emit round owns
it) · scope gravity RETIRED (the stage gates held) · v6 collision RETIRED (the
2 a.m. commits were the one contact, swept R36w1 + gated R36w2).

LANE_F_NOTES §36 + F-progress: the close record — both playtests, E's three
flags closed by measurement, the DJ-roster hold, the full gate numbers
(7 passed / 0 failed / 0 warn / 0 skipped · flags 0 fails / 1 warn (deliberate)
· selfcheck 156,352/156,352 · figure-scale 29 figs incl. the 5 DJ bodies ·
MATRIX GREEN 10 towns x 7 gates · R32-35 smokes re-green on the final tree).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-25 23:10:34 +10:00

142 lines
9.6 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 (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(bandLow1, 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:<id>`, 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
(R3031), beta opened the 23 (R3233), v7.0 closed with the auction + onboarding (R3435).
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.