June 2026

We Shipped a Silent Bug: Translations Failing in the Shareware Build

A reader trying the free Romanian shareware build reported that the Translate button did nothing — no translation, no error, just silence. He was right. This is what broke, why it shipped that way, and how we confirmed the fix actually works instead of assuming it did.

What was broken

The full app and the free shareware build use different, smaller corpora — the shareware version ships a sample bundle named differently from the one used internally. Translations are looked up by a compound key combining the corpus name and the audio file name. The shareware corpus name didn't match the key prefix baked into the bundled translation files, so every single lookup against the shareware corpus returned nothing.

No error was thrown. The translation lookup just returned null, and the UI rendered that as an empty Translate button. On our own dev machines this was masked entirely — local installs have a Google Cloud Translation API key configured, so when the bundled lookup failed, it silently fell back to a live network call and still produced a translation. The shareware build users actually run has no such fallback, so for them it just failed.

The fix

The translation provider now also builds a lookup index keyed on the audio file name alone, so a corpus-name mismatch between the build that bundled the translations and the build that ships to a given tier no longer breaks the lookup. We added unit tests that reproduce the exact mismatch (different corpus name, same file name) so this specific failure mode can't silently regress again.

How we verified it — not guessed

Because the bug only showed up when the network fallback was unavailable, a quick local click-through wasn't enough to prove anything either way. We built two genuinely separate copies of the shareware app from two different commits — the one before the fix and the one after — ran them side by side with the Google Cloud fallback removed, and watched the old build fail with the exact same silent null result while the new build resolved every translation from the bundled files. Then we re-ran the same check against the full 300-clip shareware corpus and the real translation bundle: 300 out of 300 resolved correctly.

Only after seeing that — not before — did we rebuild and re-upload the shareware binaries for macOS, Windows, and Linux, bumped as version 1.0.1.

One honest caveat: our side-by-side test ran on macOS. The original report came from Linux Mint/Ubuntu, and we haven't yet confirmed the fix on that exact setup. We're confident the root cause and fix are correct — the bug was in the translation index, not the platform — but if you're on Linux and still see the Translate button fail after updating, please tell us. We'd much rather hear "still broken" now than assume it's fixed and be wrong.
Get the updated download →