i18n(store): add the zh-CN store listing and correct the language count - #296
Merged
Conversation
The app ships seven UI languages as of #294, but the store metadata still described six and had no Chinese listing at all — so a Chinese F-Droid page would have rendered in English while claiming the app speaks six languages, one of which is now its own. Adds `fastlane/metadata/android/zh-CN/` with a short description, a full description, and the changelog for the current versionCode (124). Only the current one: F-Droid and Play show the latest note, and backfilling 25 historical changelogs into a locale that did not exist would be inventing a record rather than keeping one. The "6 languages" line becomes 7 in all six existing full descriptions. Three hard-coded locale lists had to learn zh-CN, and missing any one of them breaks a different thing: - `noteLocales` in app/build.gradle.kts — the release-notes export throws if a locale has no changelog for the versionCode, so this is what actually enforces the new locale from here on. - `$StoreLocales` in verify-release-notes.ps1 — the pre-cut character check (Play caps notes at 500; zh-CN comes in at 124). - `$StoreLocales` in verify-release-export.ps1 — the post-export check that every locale block reached the notes file. AGENTS.md said "6 store locales" in four places and listed the locale tags in a fifth. Left as-is, the next release would have followed that instruction, written six changelogs, and failed the export gate. Note for the next cut: verify-release-export.ps1 now fails against the *existing* v2.32.2 export in D:\Build, which predates zh-CN. That is expected and was left alone deliberately — re-running the export would rewrite the AAB and R8 mapping, and those have to keep matching the binary that actually shipped. The next release regenerates the file with all seven blocks. Verified: verify-release-notes.ps1 passes on 7 locales, gradle configuration is clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Completes Chinese support on the last surface. #294 put seven UI languages in the app and #295 did the landing page and READMEs; the store metadata still described six languages and had no Chinese listing, so an F-Droid page in Chinese would have rendered in English while claiming six languages — one of which the app now speaks.
New
fastlane/metadata/android/zh-CN/—short_description.txt,full_description.txt, andchangelogs/124.txt.Only the current changelog. F-Droid and Play show the latest note, and backfilling 25 historical changelogs into a locale that did not exist would be inventing a record rather than keeping one.
Corrected
The "6 languages" bullet becomes 7 in all six existing
full_description.txtfiles.Three locale lists, three different failures if missed
noteLocalesin app/build.gradle.kts$StoreLocalesin verify-release-notes.ps1$StoreLocalesin verify-release-export.ps1AGENTS.mdsaid "6 store locales" in four places and spelled out the locale tags in a fifth. Left alone, the next release would have followed that instruction, written six changelogs, and failed the export gate.Standing cost this introduces
Every release from now on needs a
zh-CNchangelog or:app:exportReleaseToBuildDrivethrows. That is the point of the gate, but it is a real per-release obligation and worth stating plainly rather than discovering at the next cut.Verified
scripts/verify-release-notes.ps1— 7 locales, all under the 500-char cap:app:help)One expected failure, deliberately not fixed
scripts/verify-release-export.ps1now fails against the existing v2.32.2 export inD:\Build, which predates zh-CN:Re-running the export would rewrite the AAB and the R8 mapping, and those have to keep matching the binary that actually shipped —
D:\Buildis the only permanent copy (D062/D064). The next release regenerates the notes file with all seven blocks and the check goes green on its own.Not in this PR
No
zh-CN/images/(only en-US has a per-locale image set; the rest fall back to the default).🤖 Generated with Claude Code