Files
weirsoe-party-protocol/docs/i18n-drift-check.md
DEV-bot f28a390f95
All checks were successful
CI / test-and-quality (push) Successful in 3m27s
CI / test-and-quality (pull_request) Successful in 3m33s
feat(i18n): add shared key manifest and drift check script
2026-03-02 00:12:17 +00:00

987 B

i18n key manifest + drift check

Issue: #240

This repo keeps shared lobby keyspaces in two files:

  • Contract source: shared/i18n/lobby.json
  • Key manifest: shared/i18n/key-manifest.json

The manifest is intentionally small and explicit. It lists:

  • Supported locales (locales)
  • Frontend error key set (frontend_error_keys)
  • Backend error code set (backend_error_codes)
  • Backend translation key set (backend_error_keys)
  • Optional contract-only aliases (allowed_contract_only_backend_codes)

Local check

Run the read-only drift checker from repo root:

python3 scripts/check_i18n_drift.py

The script returns non-zero when it detects drift, including:

  • key set mismatch between manifest and shared catalog
  • missing backend→frontend mapping coverage
  • mapping to unknown frontend keys
  • mappings for unknown backend codes
  • missing/empty locale translations (en/da)

No CI gating changes are included in this task; this is a local guardrail.