Skip to content

fix(frontend): require string externalization for multi-locale targets#32

Merged
beefiker merged 1 commit into
mainfrom
codex/frontend-i18n-externalization
Jul 21, 2026
Merged

fix(frontend): require string externalization for multi-locale targets#32
beefiker merged 1 commit into
mainfrom
codex/frontend-i18n-externalization

Conversation

@beefiker

Copy link
Copy Markdown
Owner

Summary

  • add a string-externalization obligation to the shared i18n contract (references/ux.md): when the brief, audience, or distribution intent implies more than one locale, every user-visible string ships through the platform translation mechanism from the first artifact, and hardcoded single-locale copy in a distribution-targeted surface is a defect
  • require a recorded locale decision when shipped copy differs from the brief's language
  • add the matching Qt checklist row (references/qt.md) and pin both in test/frontend-ux-contract.test.js
  • bump Superloopy to 0.12.1 across the five manifests

Why

An end-to-end verification build against issue #28 (EQ Preset Studio, Qt Quick, https://github.com/beefiker/qt-audio-eq) reproduced complaint 3 exactly: a Korean brief with stated open-source distribution intent produced an English-only UI with zero qsTr(), no translation setup, and a visual-QA report that noted the mismatched language without flagging it. The existing contract treats localization as layout survival (CJK/RTL/long translations must not clip) but never obligates externalizing strings, so the model satisfied the letter of the contract while re-committing the original issue.

Validation

  • npm test — 654/654 passed
  • new contract assertions fail if the obligation language is removed from either reference

An end-to-end build against issue #28 (EQ Preset Studio, Qt Quick,
github.com/beefiker/qt-audio-eq) reproduced complaint 3: the skill
shipped hardcoded single-locale copy for an open-source distribution
target and even recorded the mismatched language in visual QA without
treating it as a finding. The contract covered localization only as
layout survival (CJK/RTL/long translations), never as a string
externalization obligation.

Name the obligation in the shared i18n contract and the Qt checklist:
distribution-targeted surfaces ship every user-visible string through
the platform translation mechanism from the first artifact, and a
shipped language that differs from the brief's records its locale
decision. Pin both in the contract test and bump to 0.12.1.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@beefiker
beefiker merged commit bc56d85 into main Jul 21, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant