Sprint 18 integration: the knife, the first honest week, 584/0/0 — two rulings filed for John
This commit is contained in:
parent
e0e9f69e71
commit
28de3bb0d1
61
THREADS.md
61
THREADS.md
@ -11299,3 +11299,64 @@ anchors are your GLB), but the tooling is now waiting, not TODO.
|
||||
including "sail cut loose". The verb panel updates inside `player.update` and does not have
|
||||
this problem. Not a shipped bug; it is a harness blind spot, and it hid the knife's ticker
|
||||
line from me for an hour.
|
||||
|
||||
[I] 2026-07-25 — **SPRINT 18 (THE BOOK OF CLIENTS, PART 2) INTEGRATION COMPLETE (main).** D's
|
||||
pass merged fast-forward after a fresh fetch (the pt-1 lesson, applied); selftest
|
||||
**584/0/0** — the exact sum, 574 + D's 10, checked statically per file BEFORE the browser
|
||||
run and confirmed in it. Every lane re-verified at zero unmerged commits against a fetch
|
||||
taken after the merge. Five lanes, five sprints of this model, and the code-conflict count
|
||||
for S18 is again ZERO.
|
||||
|
||||
**THE WEEK NOW HAS A KNIFE.** Hold **X** for 1.2 s at a cleat and the whole sail goes
|
||||
limp — DESIGN.md line 165's signature decision, reachable at last. D's reach rule IS the
|
||||
mechanic: the corner holding the $180 carport is a bracket at y=2.36 that needs a ladder
|
||||
you have no time to fetch, so you cut at a corner you CAN reach and spend the sail. The
|
||||
trade is priced on the glass before you commit, through main.js's OWN collateral walk, so
|
||||
the panel cannot advertise a saving the invoice won't honour. Night 5, one morning, both
|
||||
branches: **cut at t=32.3 → +$142 and ★3.0 held · ride it out → −$83 and ★0.0. A $225
|
||||
swing on 1.2 s of held key**, in a 5.9-second window. D's verdict: a decision, and the
|
||||
best thirty seconds in the game.
|
||||
|
||||
🩹 **D CAUGHT A MONEY BUG THE SPRINT WOULD HAVE SHIPPED:** `_releaseCorner` marked a cut
|
||||
corner `broken`, and every ledger surface reads `broken` — so the knife billed you five
|
||||
ways at once, *including the $180 carport you cut the sail to save, billed AND wrecked*.
|
||||
Ruled: a cut bills nothing, wrecks nothing, warranties nothing, costs no standing, and
|
||||
the refund counts it, because "save the anchors" is a ledger line.
|
||||
|
||||
👁️ **AND A FIVE-SPRINT SILENCE: `interact.step()`'s prompt has never been drawn.** main.js
|
||||
threw the return value away and hud.js had no element for it — every label this lane ever
|
||||
wrote ("out of reach — needs the ladder", "push the water off (169 kg)") reached a bench
|
||||
and never a player. `createVerbPanel` draws them now. Sibling in kind to this sprint's
|
||||
`setFabric` finding: a surface that existed, was correct, and was wired to nothing.
|
||||
|
||||
⚠️ **FOUR SEAMS PUBLISHED THIS SPRINT THAT NOBODY WIRED**, all found by playing night 5,
|
||||
none visible to 574 green asserts: B's authored cowboy rig never landed (the carport
|
||||
corner ARRIVED down, so the knife had no object); `pay.garden = 0` never landed (the first
|
||||
emergency invoice paid $38 for a bed nobody had a prep phase to protect); `rig.breakCorner
|
||||
?.()` — **the door is called `failCorner`, and an optional call to a renamed method is a
|
||||
silent no-op that reads exactly like a call**; and `attach({at, wind})` was never passed,
|
||||
so `clockSkew` read 30.02 and the knife's invoice said "9s in" on a night you arrive at
|
||||
30. Pinned: every door main.js feature-detects must EXIST.
|
||||
|
||||
**THE FIRST HONEST WEEK, re-flown post-fabric-fix (every prior number was measured on a
|
||||
fabric the game never flew, in the easier direction):** 7/7 stood up · **5/7 gardens** ·
|
||||
**$327** · **★0.5**, against S17's $401 / 6-of-7. P5 blew on the calmest night; site_03's
|
||||
first-ever cold play cost a $140 swing set and the whole star rating; the soaker finished
|
||||
**49% — one point under the line**. D withdrew four of their own S17 numbers by name,
|
||||
including the $80 clean-win line. **B's S16 "the membrane stops every stone" fired for the
|
||||
first time ever, because until this sprint the game was always flying the membrane.**
|
||||
|
||||
⚖️ **TWO RULINGS FOR JOHN, both found by play, neither tuned by the lane that found it:**
|
||||
**(1) THE KNIFE'S STATED PRICE IS NOT CHARGED.** The panel promises "costs the garden",
|
||||
but on an emergency night the hail is over before you arrive and `pay.garden = 0`, so the
|
||||
garden only reaches money through `win = hp >= 50` — the cut cost 1 HP and $0. Two correct
|
||||
rulings (B's triage economy, D's honest panel) meeting on one night. **(2) DECLINING COSTS
|
||||
NOTHING AT THE FLOOR.** −½★ genuinely flipped D's night-1 choice mid-ladder — but at
|
||||
★0.0 the clamp eats it, and that is precisely the fee-maximizing player the ruling was
|
||||
written to price. D fixed the PAPER half only (the invoice printed "−½★" four rows above
|
||||
"★0.0 → ★0.0") and left the rule to you. Candidates named in their entry; the floor, the
|
||||
clamp, or a second currency is a John question.
|
||||
|
||||
**Deploy: still owed, now two sprints.** tools/deploy_hardyards.sh is permission-gated in
|
||||
the integrator's session (ssh + docker to the games VPS). The standing rail says the gap
|
||||
never exceeds one sprint, and it is now at two — this is the loudest this log can say it.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user