From a1b7d468a4f8c36ad5563b99c0175999aba69b08 Mon Sep 17 00:00:00 2001 From: type-two Date: Tue, 21 Jul 2026 00:09:22 +1000 Subject: [PATCH] =?UTF-8?q?Sprint=2017=20plan=20+=20prompts:=20the=20book?= =?UTF-8?q?=20of=20clients=20pt=201=20=E2=80=94=20the=20board;=20John's=20?= =?UTF-8?q?seven-night=20ruling=20recorded?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LANE_PROMPTS.md | 98 ++++++++++++++++++++++++++++++++++++++++++ SPRINT17.md | 111 ++++++++++++++++++++++++++++++++++++++++++++++++ THREADS.md | 7 +++ 3 files changed, 216 insertions(+) create mode 100644 SPRINT17.md diff --git a/LANE_PROMPTS.md b/LANE_PROMPTS.md index 9762d50..ae092ee 100644 --- a/LANE_PROMPTS.md +++ b/LANE_PROMPTS.md @@ -1012,3 +1012,101 @@ get pinned — no pre-ruling number survives into a pin. > projectile, priced like it matters). Flag D in THREADS as each lands. Axis > trap stands: measure exported GLBs in three.js coords, look at the render > in assetcheck, never trust a docstring about orientation. + +--- + +# SPRINT 17 prompts (the book of clients, part 1: the board) + +Same rules: own clone, own branch, `git fetch origin && git reset --hard +origin/lane/` on a clean tree. Remote is monster/hardyards.git. Read +THREADS' last two [I] entries (the TEETH integration + John's seven-night +ruling), then SPRINT17.md, then ROADMAP.md arc 2. Ports: A 8824, B 8825, +C 8826, D 8827, E 8828. Baseline **473/0/0**. FIRING ORDER matters this +sprint: D's gate-0 rewire lands first (A builds the board on the wired week); +then A/B/C/E; D returns at the end for yard 4 + the cold play. + +## Lane D — Sprint 17, first pass (gate 0.1 ONLY — land it fast) +> You are Lane D on HARD YARDS, Sprint 17, first pass. Rebase onto main, read +> THREADS' last two [I] entries, SPRINT17.md gate 0.1. John ruled SEVEN +> nights: restore the wildnight to the week (your S16 filing's own +> alternative). You own the order under the one-variable law; the obvious slot +> is between the swing lawn and the icenight, but it's your call — write the +> restored night's brief in the voice the week has earned. Your six-night law +> pins and a.test's week asserts MOVE with the ruling (that's them working). +> Selftest green, push origin lane/d, [D] THREADS entry with the ladder as +> wired. Nothing else this pass — A is waiting on you. Yard 4 and the cold +> play come back to you at the end of the sprint. + +## Lane A — Sprint 17 +> You are Lane A on HARD YARDS, Sprint 17. Rebase onto main AFTER D's gate-0.1 +> seven-night rewire lands (check origin/lane/d or main). Read THREADS' last +> two [I] entries, SPRINT17.md, ROADMAP arc 2. Three jobs: (1) gate 0.4 — +> RULE the hail-light balance question B filed (retune, or canon that some +> nights the sail is for the steel; write it either way) and consult on B's +> gate-0.3 score-header wording. (2) Gate 1, the sprint's spine: THE JOB +> BOARD — two offers each morning (the scripted spine + one seeded +> alternative), offer cards showing client/site/forecast/fee/collateral +> exposure, the chosen job running the entire existing ledger unchanged. +> Publish the offer/night data shapes in THREADS EARLY — B, C and D all build +> against them. Deterministic seeding (week + night index; no Date.now). +> (3) Gate 2 data shape: constraints as night data ("nothing attached to the +> house", "cheapest option and I'll sue" budget cap), premium priced (you +> rule the number), stated on BOTH papers and on the offer. B enforces; agree +> the seam in THREADS. Selftest green (baseline moves with D's rewire); +> mutation-check; look at every card you touch. Shepherd as always. + +## Lane B — Sprint 17 +> You are Lane B on HARD YARDS, Sprint 17. Rebase onto main, read THREADS' +> last two [I] entries, SPRINT17.md. Four jobs, roughly in order: (1) gate +> 0.2 — the heal re-arm edge from D's poison poke (a fully-broken sail can't +> re-arm the heal); fix + negative control. (2) Gate 0.3 — the soaker +> score-header disclosure: one honest line naming the card's cloth charter +> ("scored on CLOTH — the F key is not the audit's to bet" or better; A +> consults on wording). (3) Gate 2 — enforcement: the rigging session refuses +> constrained picks with the client's words (house ban), enforces the budget +> cap at commit, and SCORE IT honours constraints when scoring a constrained +> night — a card that recommends a forbidden line is the card lying. Build +> against A's published shapes (fetch origin/lane/a mid-flight; the seam +> pattern). (4) Gate 3 support: when D's pool yard lands, gauntlet it — +> winnable lines, separation pinned XOR refused, corroded steel priced +> honestly in the card. Selftest green; mutation-check; tables in THREADS. + +## Lane C — Sprint 17 +> You are Lane C on HARD YARDS, Sprint 17. Rebase onto main, read THREADS' +> last two [I] entries, SPRINT17.md. Two jobs: (1) gate 1 support — the offer +> card's forecast lines: each board offer shows its storm's honest band +> (forecastFor/leadFor are yours; lead 0 for tonight's offers), and the +> seeded alternative pool's storm pairings respect every per-storm honesty +> gate you shipped (a storm the forecast can't describe honestly doesn't get +> offered). Build against A's published shapes; fetch origin/lane/a +> mid-flight. (2) Second-harness the board's collateral-exposure number +> against your envelope on at least one offer (two harnesses, one number, by +> construction — the S14 pin pattern). Optional if room: your own wind-panel +> or forecast polish, your call, filed with reasons. Deterministic (dt,t) as +> always; selftest green; disclose any assert that can't fail. + +## Lane E — Sprint 17 +> You are Lane E on HARD YARDS, Sprint 17. Rebase onto main, read THREADS' +> last two [I] entries, SPRINT17.md gate 3.1. One job, your standard: THE +> CORRODED TIER for the pool yard — a corroded post variant with a visual +> tell readable at a glance (corrosion a player can't see is a trap with no +> tell, which this repo doesn't ship), reduced rating_hint (your number, +> reasoning baked beside it), manifest entry (unambiguous — one rating per +> type — or refuse-to-guess with the why), wreck if priceable, negative +> controls red-then-green, byte-identical factory runs, LOOK at the render. +> File the editor palette hunk verbatim in THREADS (the _v1 suffix is +> load-bearing) and flag D the moment it's placeable — their pool yard waits +> on you. If ANCHOR_TYPE needs a word, make the edit and flag A (the +> swing_frame precedent). + +## Lane D — Sprint 17, second pass (gates 3.2 + cold play — after A/B/C/E land) +> You are Lane D on HARD YARDS, Sprint 17, second pass. Rebase onto the +> integrated tree (the integrator will tell you, or main). Author THE POOL +> YARD cold in the editor — E's pool kit + corroded tier, fence compliance as +> the thesis, scored iteratively, separation pinned XOR refused — and enter +> it in the board's alternative pool, the first yard whose only route into +> the game is being CHOSEN. Then cold-play a full seven-night week through +> the board: take at least one alternative offer and one constrained job, +> and judge everything as the playtester — does choosing feel like running a +> business? Does a constraint read as a client or as a rule? Numbers and +> feel, your standard. Push, THREADS, verdicts per gate. diff --git a/SPRINT17.md b/SPRINT17.md new file mode 100644 index 0000000..f995d37 --- /dev/null +++ b/SPRINT17.md @@ -0,0 +1,111 @@ +# SPRINT 17 — THE BOOK OF CLIENTS, PART 1: THE BOARD + +*TEETH shipped whole: six nights, warranty on the sheet, reputation on the +letterhead, the membrane night, three new props — 473/0/0, live. Gate 6's +eviction question is RULED (John, 2026-07-21): **seven nights — the wildnight +comes back.** This sprint lands that ruling, clears TEETH's filed follow-ups, +and opens ROADMAP arc 2: the week stops being a script and starts being a +choice. Part 1 is the BOARD; part 2 (Sprint 18) is the callout job types.* + +Read THREADS from the last two [I] entries. Baseline **473/0/0**; keep it +green; mutation-check anything you'd call coverage. Every arc ends live +(ROADMAP principle 1) — main stays shippable. + +## Gate 0 — THE RULINGS LAND (small, sequenced FIRST — everyone builds on them) + +1. **D: the seven-night week.** Wildnight restored (your S16 filing's own + alternative, now ruled). You own the order — the obvious slot is between + the swing lawn and the icenight, but it's yours to wire under the + one-variable law. Your six-night law pins MOVE with the ruling (that's them + working, not breaking); a.test's week asserts likewise. Brief for the + restored night is yours. Land this FAST — A's board builds on the wired + week, so this gate is the sprint's critical path for about an hour. +2. **B: the heal re-arm edge** (your own S16 filing via D's poison poke: a + fully-broken sail can't re-arm the heal). Fix + negative control. +3. **A + B: the soaker score-header disclosure** (D's surface question): SCORE + IT reads "WINNABLE at $80" over an all-DEAD cloth garden without naming its + cloth charter. One honest line in the score header ("scored on CLOTH — the + F key is not the audit's to bet"), B's card, A consulted on wording. +4. **A: the hail-light balance ruling** (B's S16 filing: on the earlybuster + and southerly nights the whole rig market buys ~$4 of garden bonus — bare + beds win by 30+). B named the levers in THREADS. Rule it: retune, or canon + ("some nights the sail is for the STEEL and the collateral, not the bed" — + which the refused pins already document honestly). Either way, write it. + +## Gate 1 — THE JOB BOARD (A owns; the arc's spine) + +From ROADMAP arc 2: mornings offer callouts, you take ONE. Minimum honest +version this sprint: +1. Each morning offers **two jobs**: tonight's scripted night (the seven-night + spine survives — it is the campaign and the test fixture) plus ONE + alternative drawn from a pool (seeded from the week + night index — + deterministic, no Date.now; same week, same offers, always). +2. The offer card shows what a tradie would demand before saying yes: client, + site, storm forecast band (C's honest lines), the fee, and the risk surface + (collateral exposure at minimum — B's engines already price it; a full + score is gate-2 material, not needed to ship the board). +3. Take one; the other vanishes (no backlog, no reputation effect for + declining — Sprint 18 decides if saying no costs you). The chosen job IS + the night: brief, quote, invoice, ledger, rep — everything already works + per-night and must keep working unchanged on a chosen night. +4. Publish the offer/night data shapes in THREADS EARLY (the seam pattern) — + B (constraints), C (forecast lines), D (cold play) all build against them. +5. The alternative pool this sprint can be small and honest: the two unused + yard/storm pairings the one-variable law allows, plus repeat visits at + different pay. Variety scales in Sprint 18 with the callout types. + +## Gate 2 — CLIENT CONSTRAINTS (A data · B enforcement · both argue it on paper) + +ROADMAP: "client personalities as constraints — data on the night, enforced by +the rigging session, argued on the job sheet." Ship TWO this sprint, end to end: +1. **"Nothing attached to the house."** The rigging session refuses house + anchors with the client's words in the ticker; the job sheet says it up + front; the yard's honest lines shrink accordingly (B: SCORE IT must honour + the constraint when scoring a constrained night — a card that recommends a + forbidden line is the card lying). +2. **"Cheapest option and I'll sue."** A hard rig budget below START_BUDGET on + that night (the client caps your spend, not your wallet); the sheet names + it; the session enforces it at commit. +3. Constraints are data on the night entry (A's shape), enforcement is B's + session, and BOTH papers state them — the invoice repeats the constraint it + was paid under. A constrained night pays a premium (A rules the number); + the board (gate 1) shows the constraint on the offer, so taking it is a + choice. + +## Gate 3 — YARD 4: THE POOL YARD (E supplies · D authors · the gauntlet prices) + +1. **E: the corroded tier.** The pool yard's thesis (ROADMAP): fence + compliance + corroded cheap hardware. Supply corrosion as a first-class + fact your family of honesty rules covers: a corroded post variant (visual + tell + reduced rating_hint, your call on the number with reasoning baked + beside it, manifest entry, wreck if priceable). It must be READABLE at a + glance — corrosion a player can't see is a trap with no tell, which this + repo doesn't ship. +2. **D: author the pool yard COLD in the editor** — E's pool kit (fourteen + honest noes) plus the corroded steel plus whatever the palette offers. + Score it iteratively (that's what S15 bought), separation pinned XOR + refused, then play it. It enters the BOARD's alternative pool (gate 1), + not the scripted spine — the first yard whose only route into the game is + being chosen. +3. Placement facts and wreck aprons per E's THREADS entries — the axis trap + is paid for in advance now, keep it that way. + +## Gate 4 — JOHN PLAYS THE SEVEN (live URL, the standing gate) + +partly.party/hardyards after integration: seven nights, one wallet, the board +offering choices, a constrained client or two, ★ on the letterhead. Three +sentences in THREADS — and this sprint they steer Sprint 18's callout types +(emergency mid-storm arrival vs the cowboy audit vs warranty-as-a-night: which +sounds like YOUR game?). + +``` +gate 0: seven nights wired · heal re-arms · score header discloses cloth · + hail-light balance ruled in writing +gate 1: two offers each morning, seeded honest, chosen job runs the whole + ledger unchanged · shapes published early +gate 2: two constraints enforced by the session, argued on both papers, + priced with a premium, visible on the offer +gate 3: corroded tier readable at a glance · pool yard authored cold, priced, + pinned-or-refused, in the alternative pool +gate 4: John's three sentences aim Sprint 18 +``` diff --git a/THREADS.md b/THREADS.md index 9d1dbf7..7bd6454 100644 --- a/THREADS.md +++ b/THREADS.md @@ -8198,3 +8198,10 @@ anchors are your GLB), but the tooling is now waiting, not TODO. home — is currently NOT IN THE WEEK. D's one-line alternative: a seven-night week. John: play the six at partly.party/hardyards, then rule — six without the wildnight, or seven with it. Everything else about arc 1 (teeth) is DONE. + +[I] 2026-07-21 — ⚖️ **JOHN RULED: SEVEN NIGHTS. The wildnight comes back.** Gate 6's eviction + question, answered by the man himself: the week grows to seven rather than ship without its + marquee storm. D's one-line alternative is now the plan — wildnight restored (D owns the order; + the S16 law pins move WITH the ruling, which is them working), hud already reads NIGHTS.length + so the papers tell the truth by construction. SPRINT17 gate 0 lands it; arc 2 (THE BOOK OF + CLIENTS) begins in the same sprint. The play half of gate 6 stands as ever.