Repository navigation
i18n(service-messaging): ship the notification objects and digest heading in ru, de and ko (第 5 包的 B 半) - #30673
Conversation
…ding in ru, de and ko Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Utp6Cai5CRdAs4u9gTipWU
📓 Docs Drift CheckThis PR changes 1 package(s): 8 hand-written doc(s) NAME something this change touched and may need an implementation-accuracy re-verification:
⛔ 5 release-owned page(s) also name something this change touched. These are read-only:
What this run could not see
Coarse fallback — 6 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): Which tree this was computed onThis run read A worktree cut from an older # while this PR is open — GitHub drops the merge commit once it closes
git fetch origin ce69dc4a474448691960679b47ed1c118e3b4a0a && git checkout ce69dc4a474448691960679b47ed1c118e3b4a0a
# afterwards, rebuild it from the two parents, which stay fetchable
git fetch origin b77c160a02c2bb69ad6c986461b2633fa8d28c18 2ef9d0883afa997d1e34f26bc471de77840a8ce8 && git checkout -B drift-repro b77c160a02c2bb69ad6c986461b2633fa8d28c18 && git merge --no-ff 2ef9d0883afa997d1e34f26bc471de77840a8ce8
node scripts/docs-audit/affected-docs.mjs --json b77c160a02c2bb69ad6c986461b2633fa8d28c18
|
|
domain:server#2 · os-bill · session_01Utp6Cbvcmv8YWFhFJwzjKL 维护者速读
席位核对 — ACCEPT · domain:server#2 · head
|
Requested by Bill · project thread
domain:server#2 · os-bill · session_01Utp6Cai5CRdAs4u9gTipWU
Refs #30512 — 第 5 包的 B 半 (package 5 of 11,
@objectstack/service-messaging, second half:ru,de,ko). The A half (zh-Hant,ar,fr,pt-BR) merged as #30638; with this half the package carries all eleven platform languages. The card stays open until the last PR of the series flips the bundle check to the platform locale table.Clause-②: no
Metadata-protocol: none
维护者速读
messages.ts的语言类型加宽到 11 种;不动逻辑、schema、接口,已有 8 种一字未改。两处测试只是把新语言加进它们检查的语言表,规则覆盖变宽,不是放宽。回滚即撤 PR。src/translations/messages.ts(俄语 2 以上也变格:2–4 与 5+,所以俄语标题和阿语一样写成计数式「Уведомлений: {{count}}」,说明注释已点名俄语),再抽看ru.objects.generated.ts。node scripts/check-i18n-bundles.mjs --filter=messaging输出 in sync;pnpm --filter @objectstack/service-messaging test全绿。What changes
TAG.objects.generated.tswith all 203 object leaves plus itsTAG.source-hashes.generated.ts, written by the repo's ownos i18n extract --fill=default --source-hashes, served throughwithSourceFallbackafter the A half's four.messages.ts: the digest heading in the three locales;MessagingLocalewidens to all eleven tags. The plural note now names Russian beside Arabic:t()selects no plural form and Russian varies above two (2–4 vs 5+), so its heading is a tally (Уведомлений: {{count}}), correct for every count. German takes the plural for every count from two up; Korean does not inflect.check:i18ncovers them from this PR on.Test changes — coverage widened, nothing loosened
admin-copy-vocabulary.test.tsandsetup-list-empty-states.test.tslist the bundles they hold to their wording rules; the three new bundles join that list, so the rules now also cover them. No assertion changed.Acceptance notes
en. German writes the digest asZusammenfassung, not the English loanword.APNs,FCM,Android,iOS, and one help leaf that is a list of status codes, in every locale; beyond those, native German words only:Info,Partition,Status,Version,Web.ruandkocarry nothing else equal to English.check:i18n-stale-fillpasses with the baseline untouched.Verification
Package suite, typecheck, build (verify lock, at the rebased head)
i18n gates and size
Derived gate families (dispatch-gates --commands, reconciled with --ran): 62 run, 0 not measured, all exit 0; recorded in the os-dev-report on #30512.
Dogfood: not run — content-only package PR, no
!in the title and no(narrowing)arm.🤖 Generated with Claude Code
https://claude.ai/code/session_01Utp6Cai5CRdAs4u9gTipWU