glytch/fktry/lanes
type-two dc1591d0e6 [render] scram latches with hysteresis, mirroring sim (fixes a ~4s visual lie)
SIM landed heat this round, so I read their implementation: `scrammed` lives
on their internal Ent, never on EntityState; they deliberately clear `jammed`
on scram ("reported by its own event, not as a flow jam"); and Renderer only
ever receives snapshots, never events. So the latched-off state is not
snapshot-visible at all.

A plain `heat >= 1` test (what I shipped earlier today) therefore un-scrams the
moment a machine starts cooling. With HEAT_RESTART=0.5 and dissipation
0.004/tick, the sim holds it dead for ~125 ticks (~4s) while heat falls 1.0 ->
0.5 — the renderer showed it alive, glowing and animating, that whole window.

Now latches at 1.0 and releases below SCRAM_RELEASE=0.5, mirroring them.
Verified: 1.0 dead -> 0.7 STAYS dead -> 0.3 releases and recovers.

This duplicates SIM's constant, which is the wrong place for it to live —
EntityState.scrammed is filed as a contract request with the evidence.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 17:47:15 +10:00
..
LANE-DATA.md [data] art direction, heat economy, container + bloom lines 2026-07-17 17:20:36 +10:00
LANE-RENDER.md [render] scram latches with hysteresis, mirroring sim (fixes a ~4s visual lie) 2026-07-17 17:47:15 +10:00
LANE-SCREEN.md [screen] round 2 notes + snapshot-access contract request 2026-07-17 17:22:32 +10:00
LANE-SIM.md [sim] round 2 NOTES 2026-07-17 17:28:42 +10:00
LANE-UI.md [ui] round 2 notes 2026-07-17 17:27:58 +10:00