Commit Graph

1 Commits

Author SHA1 Message Date
Dominik Seemann 960e3ba81d fix(i18n): externalize chinese ui strings in process and step views
Routes ~50 hard-coded Chinese literals across Process.vue, Step2EnvSetup.vue,
Step3Simulation.vue, Step4Report.vue and Step5Interaction.vue through
vue-i18n, with corresponding entries added in lockstep to locales/en.json and
locales/zh.json (1031 -> 1101 lines each, parity preserved). En-locale users
no longer see Chinese in headers, status messages, error fallbacks, project-
info modals, or chat-history prompt construction.

Backend-coupled regex parsers in Step4Report.vue (28 markers + no-reply
predicate + log-severity helper) are centralised into a frozen REPORT_MARKERS
block at the top of <script setup>, with each entry comment-anchored to its
canonical source line in backend/app/services/zep_tools.py. The block is
allowlisted in the audit script so future English alternates can be added
inline once the backend prompts are translated under spec
i18n-report-agent-prompts (issue #25). The Step2EnvSetup stage watcher gets
the same treatment: a STAGE_PHASE_MAP collapses three Chinese-string
equality checks into a lookup that already accepts both legacy Chinese
display strings and the snake_case backend identifiers.

Adds frontend/scripts/audit-i18n-strings.sh as a local verifier (the
referenced .kiro/specs/i18n-e2e-english-verification audit script no longer
exists). The script greps the five files for non-allowlisted CJK literals,
diffs en.json/zh.json key sets, and guards against an en.json CJK regression
(per #20 / spec i18n-backfill-zh-json). Exits 0 on success.

Closes #23
2026-05-07 21:57:06 +00:00