feat(sim): scrub-driven altitude transitions #28
Reference in New Issue
Block a user
Delete Branch "session-0026"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Scrub-driven altitude transitions + 4 operator-eyeball rounds of polish.
Feature (per approved design
docs/superpowers/specs/2026-06-27-scrub-driven-altitude-transitions-design.md): knob position continuously drives the morph video currentTime + a two-track audio crossfade; hold-partway (no auto-complete), fully reversible, re-roll destination per fresh approach; wheel/tap auto-scrub then lock; lock-per-altitude preserved. Pure scrub math (scrub.js) + 9 node unit tests; 154 morphs re-baked all-intra (git-LFS) for smooth seeking.Eyeball fixes: loop-from-tail landing alignment; reef_snapper NOAA title-card strip + morph re-bake; double-buffered video (no morph→loop load stall); audio on/off → 0–10 level dial (first video → 3/10); cancel in-flight volume fades (audio-off-after-landing race); constant per-altitude auto-scrub speed (2× slower, proportional to distance).
Verification: 11 Playwright E2E + 9 node unit + 302 pytest, all green.
🤖 Generated with Claude Code