From fcbeea9b40291d8e1b435756316ab6674e7617ef Mon Sep 17 00:00:00 2001 From: type-two Date: Sat, 25 Jul 2026 18:45:06 +1000 Subject: [PATCH] =?UTF-8?q?SPRINT18=20speced:=20John's=20ruling=20(declini?= =?UTF-8?q?ng=20costs=20you),=20the=20emergency=20callout,=20the=20glassho?= =?UTF-8?q?use=20tier=20=E2=80=94=20lane=20prompts=20at=20the=20tail?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LANE_PROMPTS.md | 93 ++++++++++++++++++++++++++++++++++++ SPRINT18.md | 124 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 217 insertions(+) create mode 100644 SPRINT18.md diff --git a/LANE_PROMPTS.md b/LANE_PROMPTS.md index ae092ee..f3574f5 100644 --- a/LANE_PROMPTS.md +++ b/LANE_PROMPTS.md @@ -1110,3 +1110,96 @@ then A/B/C/E; D returns at the end for yard 4 + the cold play. > 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. + +# SPRINT 18 prompts (the book of clients, part 2: the night you didn't rig) + +Same rules: own clone, own branch, `git fetch origin && git reset --hard +origin/lane/` on a clean tree (or merge origin/main — the integrator will +say). Remote is monster/hardyards.git. Read THREADS' last two [I] entries +(the S17 part-1 and part-2 integrations), then SPRINT18.md, then ROADMAP arc 2 +and DESIGN.md lines 29 / 165 / 179 (the emergency callout, release-cut-or-ride, +the glasshouse). Ports: A 8824, B 8825, C 8826, D 8827, E 8828. Baseline +**515/0/0**. FIRING ORDER: A's gate 0 ruling + gate 1 phase land first (the +sprint's critical path); E runs independently from the start; B and C build +against A's published shapes; D returns last for the knife and the cold play. + +⚠️ Every lane: the one-variable law binds hard this sprint — the emergency +callout and the glasshouse may NOT debut on the same night, however well +DESIGN.md's own sentence pairs them. + +## Lane A — Sprint 18 +> You are Lane A on HARD YARDS, Sprint 18. Rebase onto main, read THREADS' last +> two [I] entries, SPRINT18.md, ROADMAP arc 2. Two jobs: (1) gate 0, FIRST and +> FAST — ⚖️ John's ruling: DECLINING A BOOKED NIGHT COSTS YOU. You rule the +> number and the memory (the stood-up client remembers), the cost prints on the +> OFFER CARD before the choice and on the invoice after it, and the +> two-callouts-no-booked-job board state reads as free. (2) Gate 1's spine: THE +> EMERGENCY CALLOUT — a night that starts in storm, no prep, no quote, a +> DISPATCH instead of a job sheet, emergency rates (yours to rule), the whole +> existing ledger running unchanged. Publish the dispatch/emergency-night shapes +> in THREADS EARLY — B, C and D all build against them. Enforce the +> one-variable law in the ordering so a new job type and a new yard cannot debut +> together by accident. Selftest green; mutation-check; look at every card you +> touch. Shepherd as always. + +## Lane B — Sprint 18 +> You are Lane B on HARD YARDS, Sprint 18. Rebase onto main, read THREADS' last +> two [I] entries, SPRINT18.md. Three jobs, in this order: (1) ⚠️ GATE 2, which +> outranks the features — D's cold play lost p2/p3 on the wildnight flying a +> recipe gardenfly holds 0-lost. Two harnesses disagree: FIND THE VARIABLE +> (D's candidate: hail impact load reaching the rig only in-game). Name it, pin +> it, and rule which harness was lying. (2) Gate 3 — the $5-tier clean boundary: +> D flew your audit's own $40 "clean" line and tr1b broke at 1.17/1.2 kN. +> Re-rule the clean/marginal boundary at the cheap tier by measurement. (3) Gate +> 1's half — THE RIG YOU DIDN'T BUILD: someone else's work as data (hardware +> below the night, at least one corner already gone, rating hints telling the +> truth), the economy of triage (paid on the callout plus what you SAVE — you +> rule whether a garden bonus applies at all and write why), and the CUT the +> knife needs: expose cut-away on the rig, D owns the verb. Build against A's +> published shapes (fetch origin/lane/a mid-flight). Selftest green; +> mutation-check; tables in THREADS. + +## Lane C — Sprint 18 +> You are Lane C on HARD YARDS, Sprint 18. Rebase onto main, read THREADS' last +> two [I] entries, SPRINT18.md. Two jobs: (1) gate 1's dispatch — THE CALLOUT +> HAS NO FORECAST. You arrive mid-storm inside weather nobody briefed you on: +> rule what an honest read looks like when no paper is coming (what the sky, the +> grass and the gust front tell a tradie who just got out of the ute), and give +> the dispatch its surface. Your honesty gate covers emergency storms like any +> other — a storm that cannot be described honestly cannot be dispatched either. +> (2) The mid-storm arrival is a NEW seam for your storm clock: an entry at +> t≈30 must produce the same storm a t=0 run would have at t=30 (determinism at +> a non-zero start is exactly the class of bug this repo hunts) — pin it. Build +> against A's shapes; fetch origin/lane/a mid-flight. Optional if room: your own +> polish, filed with reasons. Selftest green; disclose any assert that can't +> fail. + +## Lane E — Sprint 18 (independent — start immediately) +> You are Lane E on HARD YARDS, Sprint 18. Rebase onto main, read THREADS' last +> two [I] entries, SPRINT18.md gates 4 and 5. Two jobs, your standard: (1) THE +> GLASSHOUSE TIER — DESIGN.md's maximum-fragility asset (line 179: highest pay +> on the board, highest collateral, "your own failure is the worst debris of +> all"). Fragility readable at a glance, a collateral price that makes the gnome +> look like pocket change, a wreck state, manifest entry unambiguous or +> refuse-to-guess with the why, 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 A the moment +> it's placeable. (2) Gate 5 with A — the second-rust-post landmine D filed: +> two corroded posts in one yard share the baked collateral key, so first-match +> resolution plus envelope dedupe would bill or wreck the wrong post. Disarm it +> before a yard author trips it. + +## Lane D — Sprint 18 (last: the knife, then the cold play) +> You are Lane D on HARD YARDS, Sprint 18, and you are last on purpose. Rebase +> onto the integrated tree (the integrator will tell you, or main). Read THREADS +> from the last two [I] entries, SPRINT18.md, DESIGN.md line 165. Two jobs: +> (1) THE KNIFE — DESIGN.md's signature decision under load is "release, cut, +> or ride it out", and the cut is yours: a deliberate cut-away that spends the +> sail to save the steel and the collateral. Input, HUD read, and its line on +> the paperwork, all in this sprint (principle 2). B exposes the cut on the rig; +> you own the verb. (2) COLD-PLAY the week through the new board: at least one +> emergency callout, at least one booked night DECLINED (feel the ruling's +> price), and judge it as the playtester — does the knife feel like a decision +> or a button? Does declining cost enough to hurt and little enough to be worth +> it sometimes? Numbers and feel, your standard. Push, THREADS, verdicts per +> gate. diff --git a/SPRINT18.md b/SPRINT18.md new file mode 100644 index 0000000..d404bd2 --- /dev/null +++ b/SPRINT18.md @@ -0,0 +1,124 @@ +# SPRINT 18 — THE BOOK OF CLIENTS, PART 2: THE NIGHT YOU DIDN'T RIG + +*Part 1 shipped whole: the board offers two jobs a morning, client terms refuse +in the client's own voice, the pool yard is in the game only by being chosen — +515/0/0. D's cold play asked one question the board couldn't answer and **John +has RULED it (2026-07-21): declining a booked night COSTS YOU. "It adds +pressure."** This sprint lands that ruling and opens the arc's second half: job +types that are not "rig for tonight". The headline is DESIGN.md's own line 29 — +**the emergency callout: mid-storm, right now, double rates, someone's sail +flogging itself to death over their glasshouse.*** + +Read THREADS from the last two `[I]` entries. Baseline **515/0/0**; keep it +green; mutation-check anything you'd call coverage. Every arc ends live +(ROADMAP principle 1) — main stays shippable. + +⚠️ **THE ONE-VARIABLE LAW BINDS THIS SPRINT HARDER THAN ANY BEFORE IT.** We are +shipping a new JOB TYPE (the emergency callout) and a new YARD (the glasshouse) +in the same sprint, and DESIGN.md pairs them in one sentence. They may **not** +debut on the same night. The emergency callout debuts over a yard the player has +already rigged; the glasshouse debuts as an ordinary rig-for-tonight job. The +sentence they were written for is the payoff, not the introduction — it belongs +to a later week, and A's ordering must make that impossible to get wrong by +accident. + +## Gate 0 — ⚖️ THE RULING LANDS: DECLINING COSTS YOU (A owns; FIRST, fast) + +John's ruling on D's filing. The board currently lets a fee-maximizer dodge the +wildnight and the designed-loss icenight — the week's two hardest lessons — at +zero cost. That is the hole. Close it: + +1. **A booked night is a promise.** The "TONIGHT, AS BOOKED" offer has a client + expecting you; the alternative callout does not. Taking the alternative + stands the booked client up, and standing someone up costs **standing** — + the currency the whole of arc 1 built for exactly this. A rules the number + (the mirror of `REP.CLEAN` is the obvious candidate; it is yours to rule and + to write down as measured-or-unmeasured per house rule). +2. **The cost is on the CARD, before the choice.** No hidden tax — the offer + card names what declining the booked job costs, in the client's terms + ("the Hendersons are expecting you"). A choice whose price is invisible + until the invoice is a trap, and this repo doesn't ship traps without tells. +3. **The stood-up client remembers.** Their next appearance on the board, or + their next brief, carries it. Cheap to build (the job log already exists), + and it is the whole point of "your work follows you". +4. **The invoice states which job you took and what it cost you to take it** — + both papers, same as gate 2 constraints in part 1. +5. **Two callouts, no booked job** is a legal board state: then declining is + free, and it must READ as free. Pin the asymmetry. + +## Gate 1 — THE EMERGENCY CALLOUT (the arc's new job type; A spine · B rig · C dispatch · D verbs) + +ROADMAP: *"you arrive MID-STORM at double rates to someone else's failing rig: +triage, repair, cut-away. The storm phase already does everything this needs +except spawn you at t=30 with a rig you didn't build."* Ship it end to end: + +1. **A — the phase.** A night that starts in `storm`, not `prep`: no rigging + session, no quote, a **dispatch** instead of a job sheet (there was no time + to quote — that's the drama). Emergency rates (A rules the multiplier), and + the ledger runs unchanged: invoice, rep, warranty, all of it. +2. **B — the rig you didn't build.** Someone else's work, authored as data: + hardware below what the night needs, at least one corner already gone, the + rating hints telling the truth about why. The economy of **triage**: paid on + the callout plus what you SAVE, not on a garden you never had a prep phase + to protect. B rules whether the garden bonus applies at all and writes why. +3. **D — the verbs, and DESIGN.md's signature decision: release, cut, or ride + it out.** The knife is canon (line 165: *cut a sail loose — lose the sail, + save the anchors*). Ship the knife: a deliberate cut-away that spends the + sail to save the steel and the collateral. It needs its input, its HUD read, + and its line on the paperwork in this sprint (principle 2, no exceptions). + Seam with B: B exposes the cut on the rig, D owns the verb and the input. +4. **C — the dispatch has no forecast.** You arrive inside weather nobody + briefed you on. C rules what an honest mid-storm read looks like (what the + sky and the grass tell you when no paper does), and the honesty gate covers + emergency storms like any other. +5. **Publish the shapes EARLY in THREADS** (the seam pattern — it is now the + thing this repo does best: five lanes, one code conflict in two sprints). + +## Gate 2 — ⚠️ THE TWO HARNESSES DISAGREE (B owns; the repo's highest-priority class) + +D's cold play lost p2 and p3 on the wildnight flying a recipe `gardenfly` holds +0-lost. **"When two harnesses disagree, find the variable"** is a README rule +and it has never once been wrong. D's candidate: hail impact load reaching the +rig only in-game. Find it, name it, pin it. If the played path is right, the +audit has been selling recipes it can't back — say so in the card. If the audit +is right, D's play found a sim bug. Either way this outranks new features. + +## Gate 3 — THE $5-TIER CLEAN BOUNDARY (B owns) + +D flew the audit's own $40 "clean" line on N3 and `tr1b`'s carabiner broke at +1.17 / 1.2 kN. A card that calls a line clean and then watches it break is the +card lying — the same defect class as part 1's charter silence, which B fixed +well. Re-rule the clean/marginal boundary at the cheap tier with measurement, +not margin-of-taste. + +## Gate 4 — THE GLASSHOUSE TIER (E owns; DESIGN.md's maximum-fragility asset) + +*"Highest pay on the board, highest collateral."* Supply glass as a first-class +fact your family of honesty rules covers: a glasshouse structure whose +fragility is **readable at a glance** (a tell for "this is the most expensive +thing you can break in this game"), a collateral price that makes the gnome +look like pocket change, and a wreck state — your own failure becoming the +worst debris of all is the whole point. Manifest entry unambiguous or +refuse-to-guess with the why, as always. It is the emergency callout's eventual +stage, but per the one-variable law it debuts as an ordinary night — flag A the +moment it is placeable. + +## Gate 5 — THE SECOND-RUST-POST LANDMINE (E + A; D's filing, small) + +Two corroded posts in one yard share the baked `collateral: 'corroded_post'` +key; first-match resolution plus envelope dedupe would bill or wreck the wrong +post. The pool yard ships exactly ONE and pins it, so this is armed, not +firing. Disarm it before a yard author trips it. + +## Gate 6 — JOHN PLAYS (live URL, the standing gate) + +partly.party/hardyards after integration. The week where saying no costs you, +and one night you arrive at somebody else's disaster with a knife. Three +sentences in THREADS — and this sprint they steer arc 2's close: the cowboy +audit and warranty-as-a-night are the two job types still unbuilt, and yards +5–6 (the granny-flat alley, the glasshouse) are waiting on an author. + +**Deploy note carried from part 1:** main is one sprint ahead of live — +`tools/deploy_hardyards.sh` needs John's hand or his green light (the +integrator's session was permission-gated). The rails say the gap never exceeds +one sprint; part 2 must not ship before part 1 is up.