mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
An audit comparing every locale's leaf values against en.ts found structural key-parity was already perfect (0 missing/extra keys), but ~2,356 leaf values across the 20 non-English locales were still byte-identical to the English source, meaning they'd shipped untranslated. The largest single cause: the feedback widget (PR #428) shipped with English placeholder text in every locale except Italian, which had a separate community translation (#425/#426). Translates the 1,289 strings that were genuinely missing translations, locale by locale, matching each file's own established register, terminology, and loanword conventions (verified against already-translated sibling strings rather than assumed). Leaves the remaining ~1,067 flagged values untouched where they're legitimately identical to English: brand names, format/protocol acronyms, literal URLs, hex colors, and terms this project already treats as loanwords in that language. Verified against current main: pnpm typecheck 0 errors (9/9 workspaces), i18n-parity/i18n-locale/tool-i18n/template-i18n 45/45 passing (23/23 cross-locale parity), biome check clean.