Skip to content

Retire the three i18n exemptions once the platform ships their keys — and re-take the two English-island screenshots #106

Description

@os-warren

The application half of objectstack-ai/objectstack#14253. Filed now so it is queued rather than remembered.

Restart-when: objectstack-ai/objectstack#14381 merged and released in a published @objectstack/* version this app can install. Both, not just the merge — nothing here can be verified against an unpublished platform.

Why this card exists separately

#18 recorded three authored display surfaces as declared, reasoned exemptions in src/translations/authored-text.ts, because no key in TranslationDataSchema could reach them:

surface strings what a zh-CN user sees today
bulkActionDefs 35 已选择 1 项 · **Complete** · **Skip** · 清除
dataset label / description / dimension / measure labels 26 Chinese tile titles with Untouched > 14 days directly beneath
custom validation rule messages 11 platform refusals in Chinese, ours in English, in one envelope

The platform PR gives all three a key. It does not make our screens Chinese — our authored strings are unchanged, so the new keys resolve to nothing and every one of those 72 strings still falls back to its English literal.

What "done" is

  1. Retire the three exemptions in src/translations/authored-text.ts and let the coverage walk emit the new paths. The gate should go red first on missing zh-CN keys — that is the signal the exemptions were load-bearing and not decorative.
  2. Author the zh-CN entries for all 72 strings, following the terminology decisions already recorded in src/translations/zh-CN.ts's header (职责 vs 任务 above all — a bulk action's label sits next to a task list and must not blur them).
  3. Re-take the two screenshots that are embedded in objectstack#14253 and show them Chinese. Those images are the issue's evidence; replacing them is what closes the loop rather than asserting it closed.
  4. Check the third surface has a screen too. The validation-message island had no screenshot in the issue — trip one of duly_duty's own rules (standing_no_frequency is the easy one) in a zh-CN session and confirm the refusal comes back Chinese.

Two things not to get wrong

  • The platform-derived pin in test/i18n-coverage.test.ts will already be red the moment we upgrade, before any of the above — TRANSLATABLE_METADATA_TYPES gains dataset, and the gate pins that set deliberately so a platform change cannot pass silently. Re-derive the untranslatable verdicts; do not widen the pin to make it green.
  • i18n: no coverage gate for the locales a deployment adds after zh-CN #102 is still open and touches the same file: the bundle half of the gate compares against 'zh-CN' by name, so a third locale would pass the locale-set assertion with its key coverage unchecked. Worth folding in here if it is cheap — this card is already in that code — but say so rather than silently absorbing another card.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions