Open-source localization review and language inclusion
Translation quality is only part of localization. Maintainers also need review infrastructure that detects defects even when nobody on the review team reads the language.
The infrastructure gap
Open source has standardized infrastructure for code contribution — linters, continuous integration, code owners — but no equivalent for language contribution. We call this the language inclusion gap: whether a translation is reviewed well depends on local process and on whether a maintainer happens to read the language.
Locale files often receive less review than source code. A translated string can preserve the intended meaning and still introduce a bidirectional-text override, unsafe markup, a changed format placeholder, or broken interpolation. These are mechanical defects, so a reviewer should not need language fluency to detect them.
The workstream studies real localization contributions and the conditions under which maintainers accept, delay, or reject them. The research is used to define a bounded tool rather than a general claim that automation can evaluate translation quality.
Case studies
Each case study follows one real contribution through upstream review, using the public record. All were re-verified against GitHub on 25 September 2026; corrections are logged in the repository’s corrections file (opens in a new tab). Pull-request states change, and each linked source is authoritative.
- OpenClaw: Simplified Chinese, pull request #36210 (opens in a new tab): an automated reviewer rated it 5/5, but a required check failed and no person reviewed it.
- AWS Labs data-on-eks: Korean, pull request #972 (opens in a new tab): a 349-file change; the reviewer asked for it to be split.
- Kilo Code: Turkish, pull request #7337 (opens in a new tab): the locale was never registered, and three competing pull requests needed a decision.
- Plex Rewind: Portuguese, pull request #354 (opens in a new tab): the maintainer asked for the locale to be registered where the app finds it.
- Hoppscotch: multiple locales, pull request #5636 (opens in a new tab): a 30-file change with 40 automated findings and no human response; the contributor withdrew it.
- Home Assistant: English source strings, pull request #162254 (opens in a new tab): a process case: labels, contributor-agreement status and templates, not translation review.
All case studies (opens in a new tab)
What the tool checks
- Bidirectional control characters
- Markup introduced into translated strings
- Format-string drift
- Broken interpolation placeholders
What it does not claim
- It does not judge translation quality.
- It does not replace native-language review.
- It does not prove a locale is complete.
- It does not infer contributor intent.
Use it
Install from PyPI with pip install i18n-security-lint, then add the command to the same continuous-integration workflow that reviews source changes. It reads JSON, GNU gettext .po, XLIFF, and Fluent files; with --strict it exits non-zero on findings, so it can gate a pull request.
In GitHub Actions: uses: ecogetaway/oss-language-inclusion/tools/i18n-security-lint@v0.2.1 with path: locales/.
Standards context
Unicode Technical Standard #55, Source Code Handling (opens in a new tab), addresses bidirectional-ordering spoofs and confusable characters in source code. Locale resource files, which are reviewed as translation artifacts rather than as code, have no equivalent security review checklist: GNU gettext, ICU MessageFormat 2.0, and XLIFF specify message syntax, not review criteria. The workstream publishes that checklist as an openly licensed specification (opens in a new tab).
Shipped, draft, and planned
- Shipped: i18n-security-lint 0.2.1 on PyPI, with a GitHub Action.
- Draft: i18n-signals.yml (opens in a new tab), a version 0.1 root declaration file that other projects could adopt to describe their localization process.
- Planned, not implemented: a CLDR plural-form completeness checker.
Evidence behind the work
- Communications of the ACM: Open Source's Hidden Language Gap (opens in a new tab).
- DevOps.com: What Five Localization Pull Requests Revealed About Open Source Governance (opens in a new tab).
- Related research: “Write in English, Nobody Understands Your Language Here”: A Study of Non-English Trends in Open-Source Repositories (opens in a new tab) (Bhuiyan, Bala Kumar and Staicu, ICSE 2026; preprint (opens in a new tab)). Across 62,500 repositories, non-English projects receive less visibility and participation. The study measured eight Indian languages; in its published data they barely register, at about 0.03% of the non-English messages counted.
- Translation Day note: Being understood includes the software (opens in a new tab) (September 2026).
Help with this workstream
Native-language review for Hindi and other Indic locales is the capacity the roadmap names as missing. A standing volunteer role covers the localization pipeline and new case studies, at about four to five hours a week.