# PROCITY — Round 25 lane instructions (from Fable, integrator) Date: 2026-07-17 · **R24 verdict: THE CRATE WALKS — and the tag correctly holds a second round.** F proved the epoch's claim falsifiably: Monster Robot Party resolves its own per-shop base, **120/120 rendered titles from its atlas and 0/120 from the generic pack, the GPU samples `stock_godverse/3962749/*.webp`**, a real record debits $15 exactly, the ladder re-proved on every rung, and the wire is a verified no-op off the godverse path. G gave the shop its street (Red Hill, 884 real roads, the shop's coordinate John-supplied because **no dataset we hold derives it** — honest sourcing), proved **Ruling 2 was load-bearing not cosmetic** (census-only Red Hill = 306 m spacing warn + a poster inside a kerb; with the texture layer it passes — the headline town was one design decision from shipping flagged), and recorded John's **A-then-B write-back ruling as mechanism**: `/reserve` + `/buy` stay ABSENT, not stubbed — a sandbox a config typo can flip isn't a sandbox. C owned the R23 root cause squarely. E built the street and the honest validator. A published the identity field first, as briefed. **Why the tag holds:** the tree carries 8 selfcheck reds F cannot fix — 2 are re-emitted `newtown_godverse` goldens awaiting A's pin (A ran before G; a handoff gap, not a defect), and **6 are A's sweep asserting what Fable's own Ruling 2 makes impossible by design** (every-shop- keyed on deliberately-mixed caches). Plus R24's finding chain, in escalating cost: the brief's own honest-gate spec was vacuous (positional `rec_0000…` ids collide across packs — id equality can't discriminate; **the vacuous-gate law's first application broke the law**, and the fix — titles + texture URLs — is F's, not the brief's); A's uniqueness check collapses `undefined`s into one Set entry (fails structurally on mixed caches AND can't catch a real duplicate — F measured the guarded hazard at zero); E's validator prints the licence flag from British `licence` while the contract mandates US `license`, so **"FLAG BEFORE ANY PUBLIC/COMMERCIAL RELEASE" silently never prints on real product photos**; and F's own classic gate cried wolf (fixed by F, two assertions two verdicts). Round 25 closes all of it. Tag **`v5.0-alpha`** at close — third time, earned. ## Process rulings (from R24's events) 1. **Lane G is a full lane on main.** G committed straight to main and it was right: the namespace is disjoint, the commits were pathspec-atomic, and the branch ceremony has served its purpose. Same treaty as A–F from here: own files only, atomic pathspec commits; anything cross-namespace still needs a ruling first. (The R23 merge amendment is thereby retired along with the branch.) 2. **Ruling 2 is confirmed as law** — G measured it: mixed caches (keyed GODVERSE layer + inherited texture layer) are the *design*, not an accident A's gates may assert away. 3. **The brief-was-wrong entry for the record:** my #7a spec (id equality) was itself vacuous. F's replacement (title sets + texture-URL provenance) is the canonical honest-gate pattern for stock — measurement over brief applies to the integrator's gate specs too. ## The ledger 1. **A — reconcile the sweep with Ruling 2, pin the six (the round's spine).** - The sweep's godverse arm goes per-layer: keyed asserts apply ONLY to shops carrying `godverseShopId` (the GODVERSE layer); texture-layer shops are legitimately unkeyed. - Replace the uniqueness check with one that works: uniqueness over **defined** ids only (F measured zero real duplicates — the check should be able to catch one if it ever appears, which the Set-collapse version cannot). - Pin the six goldens: `newtown_godverse` base+gig (moved by G's keyed re-emit — values are in G's commit), `redhill_real` base+gig, `redhill_godverse` base+gig. - Acceptance: **selfcheck ALL GREEN, zero warns pending** except any E leaves deliberately. 2. **E — the licence line, made unmissable (conflict #1).** Align the validator with C's §7.3 (top-level provenance, US `license` — one truth; your own docstring/check disagreement dies in the same commit). Per the vacuous-gate law: when provenance exists, the licence evidence line is a REQUIRED printed output and its absence is a FAIL — the flag exists for a human to read, on real product photos; a gate that can say OK while hiding it is the R23 species. 3. **C — one contract line; G — the sku re-emit (F's finding #1, made structural).** Positional slot ids collide by construction. C: amend §7 — atlas-pack slot ids MUST be unique across packs (sku-derived: `sku_` or similar — your wording). G: re-emit the two atlases with sku slot ids (index-only change — no town cache touched, no golden moves; the .webp bytes shouldn't move either, same as your R24 re-bake). E's validator asserts the form. This makes id-equality gates discriminating forever, before there are 50 atlases to migrate. 4. **F — land your R24 work, then the tag.** Your wire, the DBG interior handoff, the crate smoke, the classic-gate fix, and the notes are staged/uncommitted as of the R24 close — commit them (F-pathspec) if the harness verdict hasn't already. Then, after A/E/G land: full `qa.sh --strict --matrix` with the honest validator AND your crate smoke in the gate set, the README v5 teaser ships WITH the tag (one claim, as you ruled), tag **`v5.0-alpha`**, push. Your hold streak is the system working — end it only on green. 5. **B / D — on-call.** B: the standing first-pick-of-polish offer moves to the beta round, where the dig UX for real items will want street-side support anyway. ## Laws Charter v5 + the vacuous-gate law (now with its own first counterexample on record) + the process rulings above. Golden moves this round: A's six pins only. No server code; the ratified G3 stays paper until the beta charters tier-2 read-live. ## THE EXACT RUN ORDER 1. **Start together: A (#1) + E (#2) + C (#3's one line).** 2. **When C's line lands: G (#3) re-emits.** (G needs nothing else — A's pins don't gate the re-emit since atlas indexes aren't in goldens.) 3. **When A + E + G are in: F (#4)** — commit your R24 work if not already, full gate, tag, push. Waves: **[A, E, C] → [G] → [F]**. B/D on-call. ## Standing - **John — nothing needs you.** Your A-then-B ruling is recorded as binding mechanism in the G3 doc (§7); the alpha tags this round on green. - **v5.0-beta preview (next round, do not start):** G2a at scale — every hero shop in newtown_godverse + redhill_godverse stocked (the census inventory question: most census shops aren't on the POS — the beta decides what a real-but-un-inventoried shop's crate holds) · mint()-seeded tier-0 variety per the G3 doc's note · the dig UX for real items (price cards are real data) · B's polish pick.