mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-09-22 06:42:19 +03:00
* fix(i18n): make the docs drift gate flag mirrors translated from an older source check-translation-drift.mjs compared only the top-level source_hash of .i18n-state.json. A partial refresh run (17 of 65 locales retranslated before an upstream quota 429) bumps that hash while the interrupted locales keep the old one in locales[code].source_hash — the source no longer reads as changed, the stale mirrors' target hashes still match, and the gate said PASS for 703 stale mirrors. findStaleTargets() now reports every locale record behind its source. * docs(i18n): refresh the mirrors the base left behind and warn on stale ones Section-level retranslation of the docs edited on release/v3.8.51 after the full-coverage cut (README, API_REFERENCE, ENVIRONMENT, FEATURE_FLAGS, PROVIDER_REFERENCE, REASONING_REPLAY, SOCKET_DEV_FINDINGS, admission-lanes, ...): 20 locales complete on the Codex backend before its accounts hit their quota threshold (429, reset in ~146 h); the alternative routes on the LAN instance (auto/gemini -> dva 500, kilocode 401, zai/opencode/cloudflare down, auto/claude-opus at ~30 s per chunk with socket drops) did not converge, so the remaining 689 mirrors stay stale until the quota returns. check-translation-drift.mjs now lists those stale mirrors (locale record behind the top-level source_hash) as a non-blocking warning instead of silently passing; documented in docs/guides/I18N.md. * fix(i18n): translate the 7 dashboard keys the base added without catalogs1b2349de(Claude OAuth lower-priority lane) and7f1b4a5e(sidebar pinned items) added 7 keys to en.json and to no other catalog, so 65 locales missed them and i18n:check-keys was red on the tip. sync-ui-keys --translate-markers over the 65 catalogs (444 leaves) on the auto/claude-opus combo of the LAN instance; zh provider term normalised; gates green. * docs(i18n): adopt the API_REFERENCE and MEMORY mirrors the base refreshed