While doing a second pass over the i18n setup, I noticed four flat JSON files sitting next to the per-locale directories:
core/i18n/locales/en.json
core/i18n/locales/es.json
core/i18n/locales/de.json
core/i18n/locales/zh.json
Evidence they are unused:
core/i18n/request.ts loads messages exclusively via import(`./locales/${validLocale}/${namespace}.json`) — the flat files are never referenced
- No other file in the repo imports them (checked
.ts/.tsx/.js/.mjs/.json/.yml)
- Content drift confirms staleness:
en.json contains a single "MenuInfo" namespace (capital M) with 3 keys, while the actual runtime namespace is menuInfo (lowercase) served from en/menuInfo.json
If these are leftovers from before the namespace refactor, they could be removed to avoid confusion when adding new locales. If some external translation pipeline still consumes them, feel free to close this — just flagging the inconsistency.
Happy to send a removal PR if you confirm they're safe to delete.
While doing a second pass over the i18n setup, I noticed four flat JSON files sitting next to the per-locale directories:
core/i18n/locales/en.jsoncore/i18n/locales/es.jsoncore/i18n/locales/de.jsoncore/i18n/locales/zh.jsonEvidence they are unused:
core/i18n/request.tsloads messages exclusively viaimport(`./locales/${validLocale}/${namespace}.json`)— the flat files are never referenced.ts/.tsx/.js/.mjs/.json/.yml)en.jsoncontains a single "MenuInfo" namespace (capital M) with 3 keys, while the actual runtime namespace ismenuInfo(lowercase) served fromen/menuInfo.jsonIf these are leftovers from before the namespace refactor, they could be removed to avoid confusion when adding new locales. If some external translation pipeline still consumes them, feel free to close this — just flagging the inconsistency.
Happy to send a removal PR if you confirm they're safe to delete.