Files
Mayank Chhabra f273e28524 Generate translations on demand before release
Translation generation currently reruns throughout feature PR
development and writes generated locale changes back into those PRs.
Move it to a manually dispatched **Update translations** workflow,
defaulting to `staging`, that creates or updates one dedicated
translation PR. A plan-only option reports the pending work without API
calls.

Developers continue editing `public/locales/en.json`. The generator
compares it with `translations/last-translated.en.json`, translates
changed wording and missing entries, preserves unchanged translations
and human corrections, and removes only explicitly deleted English keys.
Locale files and the snapshot are published together after every
language passes validation. PR ancestry and automatic English-key
pruning are removed.

The workflow reuses unmerged batches with a three-way merge, rejects
conflicts and branch movement during generation, and validates the
result before publication because bot pushes do not trigger the existing
push CI. Lightweight development checks allow pending translations;
**Translations up to date** fails on PRs targeting `master` until the
prospective merge result has complete, current translations.
2026-09-05 22:11:00 +07:00
..