wobble: C engine port — bit-exact with the JS reference master
pop/dance/c/wobble.c replays renderWobble op-for-op (same xorshift32 stream, Chamberlin SVF, tanh/crush glue, envelope window). Fed by a text score from emitWobbleScore, which pre-resolves every param + bakes the per-event seed so the engine is a dumb, exact replayer. - wobble.mjs: factor resolveWobbleParams (single source of truth for the JS + C paths), export wobbleSeed/LFO_SHAPE_CODES/emitWobbleScore; emit floats at full precision for sample-accurate placement. - build.sh / run-c.mjs / compare.mjs mirror the nullabye+hellsine C-lane idiom. compare.mjs proves parity: all four presets maxΔ=0 (bit-exact). - bake-wobble.mjs: --engine c routes the bass through wobble.c; the JS- and C-baked tracks are byte-identical mp3s.