| Timing | One foundation slice after B-layer five-state closed loop; no i18n MVP during dual-layer A/B trust work |
| Default locale | Fallback still zh-CN (unknown browser language); first visit baseNavigator: true matches browser zh/en; user explicit switch useLocalStorage takes priority |
| Backend copy | Structured error code is truth; FE maps copy; do not pass Accept-Language through JDBC errors |
| Foundation three steps | (1) Theme locale configurable via umi/getAntdLocale, fallback zh-CN (2) Clear/replace dead locales/ skeleton (3) E2E anti-fragility rules |
| Full i18n | P3 deferred (language switch UI, full-site keyification) |