mirror of
https://github.com/nexu-io/open-design.git
synced 2026-06-01 03:14:35 +07:00
Adds `scripts/i18n-coverage-report.ts` (wired via `pnpm i18n:coverage`) that reports per-locale key-coverage drift against English. The output looks like: Locale (key total = 1578 on en) en English keys=1578 missing= 0 ... zh-CN 简体中文 keys=1578 missing= 0 coverage=100% th ภาษาไทย keys=1261 missing= 317 coverage=80% ... Why this is useful right now: - The existing `scripts/i18n-check.ts` validates *structural* consistency (locale registration, README switcher alignment, core doc link references) and exits non-zero on failure. It does not surface content-coverage drift. - The test suite enforces strict English-parity only for Indonesian (`id`) — other locales pass CI even when an English key was added without a matching translation. Today the average locale is missing ~140–300 keys vs English on `main`. This script is purely informational — exit code stays 0. It gives contributors and release managers a fast way to see which locale needs translation work without breaking PRs until the locale catches up. Issue #1894 covers the policy question of *whether* strict enforcement should extend beyond Indonesian (e.g., to a tier-1 locale set); this script is the substrate for that policy conversation, not a substitute for it. Refs #1894. Validation: - `pnpm i18n:coverage` runs end-to-end against the 19 locale files under `apps/web/src/i18n/locales/`, exit 0. - `pnpm guard` green. - `pnpm exec tsc -p scripts/tsconfig.json --noEmit` green. Co-authored-by: nicejames <nicejames@gmail.com> |
||
|---|---|---|
| .. | ||
| migrate-to-plugins | ||
| bake-community-pets.ts | ||
| bake-html-ppt-examples.mjs | ||
| batch-design-system-test.test.ts | ||
| batch-design-system-test.ts | ||
| check-design-system-flag-parity.ts | ||
| check-tokens-fixture-sync.ts | ||
| guard.ts | ||
| i18n-check.ts | ||
| i18n-coverage-report.ts | ||
| import-prompt-templates.mjs | ||
| notebooklm-export-github.ts | ||
| postinstall.mjs | ||
| release-beta.ts | ||
| release-preview.ts | ||
| release-stable.ts | ||
| scaffold-html-ppt-skills.mjs | ||
| seed-curated-design-skills.ts | ||
| seed-test-projects.ts | ||
| style-policy.test.ts | ||
| style-policy.ts | ||
| sync-community-pets.ts | ||
| sync-design-systems.ts | ||
| sync-hyperframes-skill.mjs | ||
| sync-litellm-models.ts | ||
| tsconfig.json | ||
| verify-media-models.mjs | ||