diff --git a/AGENTS.md b/AGENTS.md index 3622f5f..f3e7747 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -2175,9 +2175,9 @@ similar are internal endpoints/hook names, not credits — leave them.) ### Thai (ไทย) — third locale (2026-10-06) - Added `th` alongside en/es on the **same framework**; core plumbing unchanged. Translations live in **`src/i18n/th/`** as fragments composed in `index.ts` - (so parallel batches don't edit one giant file). Batch 1 = app shell + static - pages (`common`, `nav`, `chromeUi`, `desktopNav`, `navSheet`, `pwa`, `home`, - `about`, `faq`, `onboarding`); more namespaces land in later batches. + (so parallel batches don't edit one giant file). +- ✅ **COMPLETE (2026-10-07): `th` is 100% — 7,889/7,889 keys.** The partial-locale + rule below still applies to any *future* keys. - **Partial by design:** a missing `th` key falls back to English. `check:i18n` is now **multi-way** — en/es stay key-for-key identical (unchanged), `th` (and `ja`) may be partial and are reported as **coverage %**; a `th`/`ja` key absent @@ -2193,8 +2193,9 @@ similar are internal endpoints/hook names, not credits — leave them.) ### Japanese (日本語) — fourth locale (2026-10-07) - Added `ja` alongside en/es/th on the **same framework**. Translations live in - **`src/i18n/ja/`** as fragments composed in `index.ts`. Batch 1 = `common`, - `nav`, `pwa`, `home`; more namespaces land in later batches. + **`src/i18n/ja/`** as fragments composed in `index.ts`. +- ✅ **COMPLETE (2026-10-07): `ja` is 100% — 7,889/7,889 keys**, same as `th`. + Both partial-locale rules below still hold for any *future* keys. - **Partial by design** (same as `th`): a missing `ja` key falls back to English. `check-i18n.mjs` reports `ja` coverage and fails if a `ja` key is absent from `en`. - **Font:** `@fontsource/noto-sans-jp` (Noto Sans JP) imported in `main.tsx` and