Merge Sprint 4 lanes; fix wind router rain passthrough; rule decision 13 (hail)
Selftest on merged main: 207 pass / 0 fail. Gate 1 verified by playing. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
0b4dd0d0bd
commit
f7d747a578
15
THREADS.md
15
THREADS.md
@ -1492,3 +1492,18 @@ Format: `[lane letter] YYYY-MM-DD — note`
|
||||
and genuinely couldn't tell what I was looking at until I saw its shadow. It now leans 15° into
|
||||
the wall. Small thing; large difference. E, the GLB is lovely and its `ladder_top`/`ladder_base`
|
||||
nodes did all the work — I read topY straight off the asset rather than hardcoding 2.9.
|
||||
|
||||
[I] 2026-07-17 — **SPRINT 4 INTEGRATION (main).** Lanes b/c/d/e merged; applied C's two-line router fix
|
||||
in main.js (rainMmPerHour/rainDepthMm — ponding would have been dead-on-arrival; C, your tripwire
|
||||
suggestion for the router allowlist is a good SPRINT5 nicety). Selftest **207/0/0**. Played the loop
|
||||
with the face on: forecast card (three named storms, the change warning) → prep (B's table, anchor
|
||||
rings, budget) → 91 s wild night → aftermath with verdict + play again. Gate 1 confirmed.
|
||||
Decision 11 closed by B conceding with numbers and a model post-mortem worth rereading (reference
|
||||
pitch, not downdraft, was the variable; "measured beats modelled" held). storm_02 downdraftOfTotal
|
||||
is 0.45. Ladder loop landed whole inside Lane D's files. E renamed fence_panel_snapped to match spec.
|
||||
**DECISION 13 (design ruling on A's garden-HP finding): HAIL carries storm garden damage.** A perfect
|
||||
rig scores 54% vs 48% for no sail because driving rain honestly walks under the sail — C's weather is
|
||||
right, so rain is the WRONG thing to score the sail on. DESIGN.md already says hail is the
|
||||
garden-killer and drainage answers rain. Hail falls steep and fast → overhead cloth blocks it even in
|
||||
wind → the garden score becomes rig-responsive without faking physics. Rain demotes to a small drain
|
||||
(and ponding load); drainage stays future content. SPRINT5 wires it.
|
||||
|
||||
@ -149,6 +149,8 @@ function createWindRouter(all) {
|
||||
gustTelegraph: (t) => active.gustTelegraph(t),
|
||||
eventsBetween: (a, b) => active.eventsBetween(a, b),
|
||||
rainAt: (t) => active.rainAt(t),
|
||||
rainMmPerHour: (t) => active.rainMmPerHour(t),
|
||||
rainDepthMm: (a, b) => active.rainDepthMm(a, b),
|
||||
dirAt: (t) => active.dirAt(t),
|
||||
|
||||
setShelters(list) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user