lib/effects/xa-fx.js — FX audition with sample-exact badges

Loads a golden WAV, takes the loop region from loop.detect, and runs each effect through applyQuantumOp on a fresh copy. Badges are sample-exact: STUTTER must write the first-10 ms slice verbatim at start + k·span (k=0..3); FRACTAL must equal a manual reverse of the loop's first half with the rest untouched; PHASE must differ inside the loop and stay bit-identical outside it (in-place containment). The phase effect running at all proves the 2026-07-02 repair — parameters are now an explicit options argument, not a window.phaserParams bus read (it crashed headless before). Same asserts spot-run in Node pre-ship.