Skip to content

Backfill Play Store metadata for the 15 new locales - #15983

Draft
JorgeMucientes wants to merge 3 commits into
issue/woomob-translations-p10-sidecar-baselinefrom
issue/woomob-translations-metadata-backfill
Draft

Backfill Play Store metadata for the 15 new locales#15983
JorgeMucientes wants to merge 3 commits into
issue/woomob-translations-p10-sidecar-baselinefrom
issue/woomob-translations-metadata-backfill

Conversation

@JorgeMucientes

@JorgeMucientes JorgeMucientes commented May 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Backfills Google Play Store listing metadata for the 15 new locales in the translation stack.

This PR adds fastlane/metadata/android/<gp_locale>/{title,short_description,full_description}.txt for:

  • bg
  • cs-CZ
  • da-DK
  • el-GR
  • fi-FI
  • hi-IN
  • hu-HU
  • ms
  • no-NO
  • pl-PL
  • pt-PT
  • ro
  • th
  • uk
  • vi

It also records the metadata translations in fastlane/ai_translation/translation-manifest.json.

Scope

  • Existing 16 human metadata directories are untouched.
  • Titles and short descriptions are within Google Play caps (title <= 50, short_description <= 80).
  • Release notes/changelogs are intentionally excluded; those remain version-scoped and belong to the code-freeze sweep.
  • Screenshots and promo text stay English by design.
  • This PR does not add Android app-string resources for the 15 new locales. That backfill is handled by Backfill 15 new locales via Claude Sonnet subagents #16004.

no-NO is used for the Norwegian Play Store metadata directory to match the Google Play listing locale code.

Review Fixes Included

  • Fixed Romanian tablet wording and the missing Romanian diacritic in astăzi.
  • Fixed Finnish wrist wording so it no longer reads as beach/shore.
  • Kept WooCommerce POS as the product term in Hindi, Norwegian, and Polish instead of expanding it to WooCommerce Point of Sale.
  • Fixed mismatched cha-ching quotes in Czech and Polish.
  • Switched the European Portuguese copy from Brazilian Gerencie to Gira.

Stack

Base: #15974. #15982's metadata char-cap test has already been merged/folded into the base stack history.

Open stack above this PR:

Full stack map: #15961.

Test Plan

  • Local cap check passed for every generated title.txt and short_description.txt.
  • Targeted bad-string check confirmed the fixed review issues no longer appear.
  • git diff --check.
  • Diff from Seed manifest + sidecar baseline for the 16 existing locales #15974 contains only translation-manifest.json plus new metadata files for the 15 locales.

@dangermattic

dangermattic commented May 22, 2026

Copy link
Copy Markdown
Collaborator
1 Warning
⚠️ This PR is larger than 300 lines of changes. Please consider splitting it into smaller PRs for easier and faster reviews.

Generated by 🚫 Danger

@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-charcap-test branch from bd6f99d to f55797b Compare May 23, 2026 06:48
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-backfill branch from ee9e7fc to 6b88e16 Compare May 23, 2026 06:48
@JorgeMucientes JorgeMucientes changed the title Backfill Play Store metadata for the 15 new locales (+ 3 engine fixes) Backfill Play Store metadata for the 15 new locales May 23, 2026
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-charcap-test branch from f55797b to a3c6534 Compare May 25, 2026 12:24
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-backfill branch 2 times, most recently from c705a23 to 38cc38f Compare May 25, 2026 14:14
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-charcap-test branch 2 times, most recently from 0299269 to fc95647 Compare May 26, 2026 13:38
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-backfill branch from a875711 to 7ff86ea Compare May 26, 2026 13:38
Base automatically changed from issue/woomob-translations-metadata-charcap-test to issue/woomob-translations-p10-sidecar-baseline May 26, 2026 14:17
@JorgeMucientes
JorgeMucientes marked this pull request as ready for review May 26, 2026 14:18
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-p10-sidecar-baseline branch from d7d4148 to 92dcfaf Compare May 27, 2026 12:59
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-backfill branch from 7ff86ea to 61596db Compare May 27, 2026 12:59
@JorgeMucientes
JorgeMucientes requested a review from toupper May 27, 2026 13:41
@JorgeMucientes JorgeMucientes added category: i18n Related to localization/internationalization. category: tooling Anything that involves building & maintaining the project, including scripts, `Fastfile`, etc. labels May 27, 2026
@JorgeMucientes JorgeMucientes added this to the 25.0 milestone May 27, 2026
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-p10-sidecar-baseline branch from 92dcfaf to 0d7fa6e Compare May 27, 2026 14:14
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-backfill branch from 61596db to 04db0a8 Compare May 27, 2026 14:15

@toupper toupper left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the backfill, Jorge. Diff scope is clean — only the 15 new locale folders and translation-manifest.json were touched, and the existing 16 metadata directories are unmodified. Locale folder names map correctly to Google Play's expected BCP-47 codes (bg, cs-CZ, da-DK, el-GR, fi-FI, hi-IN, hu-HU, ms, no-NO, pl-PL, pt-PT, ro, th, uk, vi), and the no-NO rationale in the description matches Play's listing locale.

I ran the char-cap and prohibited-content checks across all 45 files; everything is within limits and free of HTML/Markdown leakage, prices, or "#1"/superlative claims. The manifest tracks each new entry with origin: "ai", model: claude-opus-4-7 for titles/shorts and claude-haiku-4-5 for full descriptions, plus a per-entry cache key — clear source attribution.

A handful of translation-quality nits below. These are not Play-policy blockers (the listing will publish without rejection), but most are worth fixing before the strings land in front of merchants. Flagging as suggestions and deferring to the i18n team / native speakers for the final call.

Suggestions

  • fastlane/metadata/android/ro/full_description.txt:15 — "Transformă orice tablă" should be "Transformă orice tabletă". tablă means blackboard, not tablet. Worth fixing before merge; this one reads as a clear mistranslation rather than a stylistic choice.
  • fastlane/metadata/android/ro/full_description.txt:24 — "datele magazinului de astazi" → "astăzi" (missing diacritic). Same line in other Romanian-script sections uses diacritics correctly, so this is a single typo.
  • fastlane/metadata/android/fi-FI/full_description.txt:23-24 — "WooCommerce rannallasi" / "suoraan rannaltasi" use ranta (shore/beach), not ranne (wrist). Should be "ranteessasi" / "ranteestasi". The English source says "right from your wrist", so this is a translation error rather than localization choice.
  • fastlane/metadata/android/hi-IN/full_description.txt:15 and fastlane/metadata/android/no-NO/full_description.txt:15 and fastlane/metadata/android/pl-PL/full_description.txt:15 — these expand "WooCommerce POS" to "WooCommerce Point of Sale". "WooCommerce POS" is the product name in English; other locales (and the rest of these same files) keep it as POS. Worth normalizing for product-name consistency in the Play listing.
  • fastlane/metadata/android/cs-CZ/full_description.txt:18 and fastlane/metadata/android/pl-PL/full_description.txt:18„cha-ching" opens with the Czech/Polish low-9 quote (U+201E) but closes with a straight ASCII quote (U+0022). Should be paired — either both straight "…", or properly close with U+201C („cha-ching"). Same mismatch in both locales suggests a model artifact.
  • fastlane/metadata/android/pt-PT/full_description.txt:1 — "Gerencie a sua loja" uses a Brazilian-Portuguese conjugation, while the rest of the file (lines 3, 5, 8, etc.) is consistent European Portuguese (Gira, Crie, Adicione). Consider replacing line 1's verb (e.g. "Gira a sua loja" or "Faça a gestão da sua loja") to match.
  • fastlane/metadata/android/da-DK/short_description.txt is exactly 80 chars — right at the Play cap. Not a blocker (you're under the limit), but leaves zero headroom if the cap ever tightens or if a future copy edit nudges it. Worth flagging for the next sweep, not this PR.
  • All "cha-ching" instances use ASCII "..." while the en-US source uses curly "…". Not a regression vs other existing locales (e.g. it-IT also uses straight quotes), but if a future pass normalizes typographic quotes per locale convention, that would be the time to align these.

Positives

  • Scope discipline is great: 46 files, exactly the 15 new locales + manifest, no incidental changes to existing locales or changelogs.
  • Char-cap test (woo_ai_translation_test.rb) plus the per-file local cap check are a good safety net for the title/short-description limits; I re-verified all 45 files independently and every one is comfortably within Play's caps (titles 23–28 chars, shorts 47–80, full 2141–2889).
  • Manifest entries are well structured with origin, cache_key, model, prompt_version, and updated timestamps — easy to trace any cell back to its generation later.
  • Folder naming matches Play Console's locale codes (especially the no-NO over nb call, which is the right choice for the listing).
  • No HTML/Markdown leakage, no prices/superlatives/testimonials — Play policy looks clean.

Reviewed on behalf of @toupper — drafted by Claude Code, please confirm before merging.

@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-p10-sidecar-baseline branch from 0d7fa6e to 14ac08c Compare May 29, 2026 17:51
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-backfill branch from 04db0a8 to 12c2178 Compare May 29, 2026 17:54
@JorgeMucientes

Copy link
Copy Markdown
Contributor Author

Thanks @toupper. I pushed the targeted Play metadata copy fixes you flagged.

Changed:

  • Fixed the Romanian tablet wording and the missing Romanian diacritic in astăzi.
  • Fixed the Finnish wrist wording so it no longer reads as beach/shore.
  • Kept WooCommerce POS as the product term in Hindi, Norwegian, and Polish instead of expanding it to WooCommerce Point of Sale.
  • Fixed the mismatched cha-ching quotes in Czech and Polish.
  • Switched the European Portuguese copy from Brazilian Gerencie to Gira.

Not changed:

  • I left the Danish short description at 80 characters because that is exactly within the Play cap and is not a bug.
  • I did not normalize every cha-ching quote globally. I only fixed the mismatched pairs so this stays a targeted correction rather than a broad localization style pass.

Generates fastlane/metadata/android/<gp_locale>/{title,short_description,
full_description}.txt for the 15 new locales (pl-PL, pt-PT, cs-CZ, da-DK,
nb-NO, fi-FI, el-GR, hu-HU, ro, uk, bg, th, vi, hi-IN, ms), translated from
the en-US source via the AI engine (Opus for title/short_description, Haiku
for full_description). The existing 16 locales' human metadata is untouched
(scoped run via --gp-locales). Screenshot/promo text stays English by design.

All 15 pass the Play Store caps (title <=50, short_description <=80 code
points); the char-cap re-prompt-to-fit rescued ro/uk/bg/hi-IN/ms short
descriptions. Manifest records each field/locale (origin=ai) so future runs
reuse them.

Release notes (changelogs) are intentionally NOT translated here -- they're
version-scoped and belong to the code-freeze sweep.
@JorgeMucientes
JorgeMucientes force-pushed the issue/woomob-translations-metadata-backfill branch from 12c2178 to e63b2f4 Compare June 1, 2026 06:18
@wpmobilebot wpmobilebot modified the milestones: 25.0, 25.1 Jun 12, 2026
@wpmobilebot

Copy link
Copy Markdown
Collaborator

Version 25.0 has now entered code-freeze, so the milestone of this PR has been updated to 25.1.

@wpmobilebot wpmobilebot modified the milestones: 25.1, 25.2 Jun 26, 2026
@wpmobilebot

Copy link
Copy Markdown
Collaborator

Version 25.1 has now entered code-freeze, so the milestone of this PR has been updated to 25.2.

@wpmobilebot wpmobilebot modified the milestones: 25.2, 25.3 Jul 10, 2026
@wpmobilebot

Copy link
Copy Markdown
Collaborator

Version 25.2 has now entered code-freeze, so the milestone of this PR has been updated to 25.3.

@JorgeMucientes
JorgeMucientes marked this pull request as draft July 20, 2026 14:15
@wpmobilebot wpmobilebot modified the milestones: 25.3, 25.4 Jul 24, 2026
@wpmobilebot

Copy link
Copy Markdown
Collaborator

Version 25.3 has now entered code-freeze, so the milestone of this PR has been updated to 25.4.

@wpmobilebot wpmobilebot modified the milestones: 25.4, 25.5 Aug 7, 2026
@wpmobilebot

Copy link
Copy Markdown
Collaborator

Version 25.4 has now entered code-freeze, so the milestone of this PR has been updated to 25.5.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

category: i18n Related to localization/internationalization. category: tooling Anything that involves building & maintaining the project, including scripts, `Fastfile`, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants