HardYards/SPRINT9.md
m3ultra 62005c8fd1 Add Sprint 9 plan and lane prompts: pyrrhic call, $80 win, second site
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 14:03:45 +10:00

67 lines
3.6 KiB
Markdown

# SPRINT 9 — THE PYRRHIC CALL, THE $80 WIN, AND THE SECOND SITE
*Sprint 8 delivered: the week is LIVE (nights, pips, a wallet that carries),
gate 0' closed with B's arithmetic vindicated and two graceful retractions,
and C found the thing two sprints of levers were looking for — a genuine $80
winnable line on the wild night (p1,p2,p3,p4 · hp 52 · 1 lost) that exists
only when B's porous fabric and C's 0.40 downdraft land TOGETHER. The systems
argument is over. Sprint 9 makes the three design calls it earned, then opens
DESIGN.md's book: the second site.*
Read THREADS from the last [I] entry.
## Gate 1 — three design moves, in one lane-pair each
1. **A rules the pyrrhic win.** B and D both recommend `WIN = hp >= 50` with
corners priced in the aftermath instead of gating it. Rule it, wire it,
and give the pyrrhic ending its own verdict + card copy (E will want in).
2. **B ships fabric choice; C flips 0.40 — TOGETHER, one PR-shaped landing.**
Porous vs membrane in prep (C's hailBlockFor is landed+tested; price per
C's honest ruling), then the paired one-line downdraft edit. Then B
re-points balance.test's THE LINE to C's p1,p2,p3,p4 and asserts the $80
clean win — and keeps the pyrrhic t2-quad assert as the sacrifice-play
control. C's two flagged calls (25%-cover squeak-win OK? clean win needs
no repair?) get answered in THREADS by A as part of #1.
3. **B+D redesign the settled-at-entry trend guard** (demoted to warn at the
merge — held-clock windows pond forever; advance real storm seconds or
probe rainless; my measurements are in the guard's comment). D blesses or
amends the 600 N floor while there.
## Gate 2 — THE SECOND SITE (everyone; the sprint's headline)
DESIGN.md's landscaper service starts with a second yard. Scope it as
site-as-data, not a fork of world.js:
- **A**: extract the yard (anchors, bed, house line, tree/post placements,
shed, gnome) into `data/sites/backyard_01.json`; world.js builds FROM data.
Then `site_02` loads the new one. Week gains a site field per night.
- **E**: the second site's dressing — DESIGN.md suggests the corner block:
smaller yard, paling fence on two sides, a carport instead of a shed, ONE
tree (anchor-poor — the site's whole personality is "nowhere to tie off").
Factory stays deterministic; contact sheet as always.
- **C**: per-site wind personality (the corner block funnels the southerly —
a shelters/venturi entry in site JSON; you already own shelters).
- **B**: run the quad/coverage/afford sweep on site_02 BEFORE it ships (the
p1-7.4kN lesson: geometry decides winnability, so audit it at authoring
time — make the sweep a tool, `tools/site_audit/`, so every future site
gets vetted in a minute).
- **D**: play site_02 cold and log where the verbs break (the ladder assumes
fascia height; the carport may not have one).
## Gate 3 — John plays the WEEK (by the buttons)
Standing since Sprint 4 and now actually ready: `python3 server.py`, play all
five nights with the mouse, three sentences in THREADS. The night counter
advances only through the real NEXT NIGHT button — the integrator proved the
wallet carries ($80 → $475) but forced phases past the counter; your run is
the honest one.
```
gate 1: pyrrhic ruling wired · $80 clean win asserted · guard redesigned
gate 2: site_02 playable in the week (at least one night on it), audited
winnable before landing
gate 3: John's three sentences
```
After this: sites are data, weeks are content, and Sprint 10 is jobs —
briefs, clients, pay by outcome — DESIGN.md's landscaper service proper.