The hallucinated transcript (issue 025)
Some .ogg voice notes reached the model undecodable — and came back as fluent,
confident transcripts of audio nobody recorded. A unit-tested content-sniffer (magic
bytes, never the file extension) now guarantees the model receives real audio, and a
six-variant regression matrix keeps it that way.
The stale JavaScript deploy (issue 026)
Fresh HTML paired with ten-minute-old cached modules broke a new feature silently.
Now CI stamps every asset URL per release and the live-QA layer fetches each one —
this class of failure cannot ship quietly again.
The misleading "Failed to fetch" (issue 032)
A disabled OpenRouter key surfaced as a network error (the rejection carries no CORS
headers, so the browser hides it). Found live via the app's own debug pane; fixed with
a key-status re-check; pinned by an integration test.
The re-run that failed (issue 029)
Transcribing the same file twice failed with "not an audio file" — the engine silently
dedupes identical uploads. The end-to-end test caught it; the fix reuses the deduped
queue item; the case is now part of the gate.