From 2c1ae37160b3c716ff4a81d4044fec10a11082b9 Mon Sep 17 00:00:00 2001 From: m3ultra Date: Fri, 17 Jul 2026 02:14:02 +1000 Subject: [PATCH] =?UTF-8?q?Fable=20(integrator):=20round-25=20instructions?= =?UTF-8?q?=20=E2=80=94=20the=20tag,=20earned=20(sweep=20vs=20Ruling=202,?= =?UTF-8?q?=20licence=20line,=20sku=20ids,=20F=20closes)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- docs/LANES/ROUND25_INSTRUCTIONS.md | 98 ++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 docs/LANES/ROUND25_INSTRUCTIONS.md diff --git a/docs/LANES/ROUND25_INSTRUCTIONS.md b/docs/LANES/ROUND25_INSTRUCTIONS.md new file mode 100644 index 0000000..d16a807 --- /dev/null +++ b/docs/LANES/ROUND25_INSTRUCTIONS.md @@ -0,0 +1,98 @@ +# 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.