Evidence from the 2026-09-02 fault-planting pass run by the accuracy session on Brad's "break it" challenge (workflow journal wf_88202b87-a89, each agent in its own worktree, audioif verified byte-identical to HEAD afterwards). Filed by Arthur because that session is write-frozen; the measurements are its, quoted, not mine.
Three shipped configurations across two node types never return to silence. Source driven with a 0.09 s tone then digital silence; residual after 100 s of silence:
| configuration |
residual |
audioeffects.Phaser(src), shipped defaults |
−4 LSB, exactly constant, never decays |
audiofilters.Phaser(frequency=200, stages=2, 48 kHz) |
−179 LSB, about −45 dBFS of DC |
audiofilters.Phaser(frequency=1000, stages=2, 48 kHz) |
−36 LSB |
audioeffects.LowPass(src, frequency=100.0), default q |
+1 LSB DC, forever |
audioeffects.LowPass(src, frequency=40.0, q=8.0) |
−4 LSB DC, forever |
Cause
The biquad is fixed-point (audioif_biquad.h: int32 coefficients with a per-filter shift, int32 state with 12 fractional bits). At low W0 it settles on a stuck DC value rather than zero.
Why the parity probe sits exactly where the fault is not
audiofilters.Phaser(frequency=1234, sample_rate=8000) — the probe's exact configuration — measures residual 0. It differs from the product on all four axes that decide this: 8 kHz vs 48 kHz, a static 1234 Hz vs an LFO sweeping 470–1730 Hz, 0.256 s vs minutes, and a never-silent random source vs real silence between notes. The probe occupies the one cell of the grid where the property holds.
Why nothing in the suite catches it
Five places assert nodes are not silent (assertGreater(peak, 0.001, "%s renders silence") — test_cpython_effects_library.py:245, test_cpython_instruments.py:75, :85, test_cpython_render.py:175, :685). Exact-zero output is asserted in only two places, test_cpython_dsp_nodes.py:83 (Dynamics) and :163 (Splitter), two blocks each, both stateless passthrough. No recursive node is ever asked to go quiet.
A −4 LSB DC offset held forever on a shipped default is a product defect, not a test nit: it is a DC component in every rest.
Three shipped configurations across two node types never return to silence. Source driven with a 0.09 s tone then digital silence; residual after 100 s of silence:
audioeffects.Phaser(src), shipped defaultsaudiofilters.Phaser(frequency=200, stages=2, 48 kHz)audiofilters.Phaser(frequency=1000, stages=2, 48 kHz)audioeffects.LowPass(src, frequency=100.0), default qaudioeffects.LowPass(src, frequency=40.0, q=8.0)Cause
The biquad is fixed-point (
audioif_biquad.h: int32 coefficients with a per-filter shift, int32 state with 12 fractional bits). At low W0 it settles on a stuck DC value rather than zero.Why the parity probe sits exactly where the fault is not
audiofilters.Phaser(frequency=1234, sample_rate=8000)— the probe's exact configuration — measures residual 0. It differs from the product on all four axes that decide this: 8 kHz vs 48 kHz, a static 1234 Hz vs an LFO sweeping 470–1730 Hz, 0.256 s vs minutes, and a never-silent random source vs real silence between notes. The probe occupies the one cell of the grid where the property holds.Why nothing in the suite catches it
Five places assert nodes are not silent (
assertGreater(peak, 0.001, "%s renders silence")—test_cpython_effects_library.py:245,test_cpython_instruments.py:75,:85,test_cpython_render.py:175,:685). Exact-zero output is asserted in only two places,test_cpython_dsp_nodes.py:83(Dynamics) and:163(Splitter), two blocks each, both stateless passthrough. No recursive node is ever asked to go quiet.A −4 LSB DC offset held forever on a shipped default is a product defect, not a test nit: it is a DC component in every rest.