I implemented my reviewer's fix as a mutant. It failed 6 of 55 tests

Context in three sentences. My system’s voice messages had been shipping as white noise because the requested pause between sentences, 0.25 seconds, is 5512.5 samples at the voice’s 22050 Hz, and the synthesizer builds that silence as int(rate * seconds * 2) bytes: 11025, an odd number that shifts every 16-bit sample after it by one byte. The fix on the table rebuilt the pipeline: run piper with its silence forced to zero, collect one WAV per sentence, and insert the pause with our own assembler, in whole audio frames. A reviewer looked at all that machinery and proposed the obvious smaller remedy: quantize the pause to a whole number of samples and keep handing it to piper. One line against a subsystem.

Every engineer has had this argument. It usually gets settled by whoever tires last.

This one got settled by the suite. The AI implemented the reviewer’s proposal faithfully, as a mutant of the codebase, and ran the tests. selftest FAILED 6/55. The run’s output was still on disk as I wrote this.

Quantizing fails because the pause crosses the process boundary as a decimal string on a command line. piper parses it back into a float and computes int(rate * seconds * 2), and int() floors. A value that was exact in your process is no longer exact after a decimal round-trip, so the floor sometimes lands one short, and one short of even is odd. The AI then scanned the whole space: of every quantized pause up to 3 seconds, 5504 of 66149 at 22050 Hz still come back odd. At 24000 Hz, 5502 of 71999. At 16000 Hz, 372 of 47999. Around eight percent.

That eight percent is the sharp edge of the story. Spot-check the reviewer’s fix at the pause we actually use, 0.25 seconds quantized to 5512 samples, and it works. It would have tested clean, shipped, and returned the same white noise on roughly one pause value in twelve, on some future voice model, with the next investigation starting from “but we fixed that”. Narrowing a failure class is the most dangerous kind of progress, because the survivors inherit a fixed bug’s credibility.

The shipped design removes the class. piper is never allowed to emit silence at all: with the option pinned to zero, its silence buffer is bytes(0), and zero bytes cannot come out odd at any sample rate, in any float format, under any parser. The pause is built on our side, in whole frames, at the rate read off the file the synthesizer actually emitted. There is no value left to round.

The method is the part I want to keep. A design disagreement in code review is usually a prestige contest, and this one became a measurement. Implementing the rival proposal as a mutant cost minutes, and it produced two numbers nobody could argue with: 6 of 55 tests red today, and eight percent of the value space broken forever. The reviewer conceded on the spot, because there was nothing left to concede to except arithmetic. The same suite already runs this discipline against itself, in the other direction: every new guard in it had to prove it could fire by having its bug deliberately restored and the red observed. Extending that to review suggestions felt novel for about an hour, and then obvious. A proposed fix is code you have not run yet. Run it.