Skip to content

fix(service-settings): complete zh-CN coverage for auth/sms/ai settings (objectui#2851 P1)#3598

Merged
os-zhuang merged 2 commits into
mainfrom
claude/settings-i18n
Jul 27, 2026
Merged

fix(service-settings): complete zh-CN coverage for auth/sms/ai settings (objectui#2851 P1)#3598
os-zhuang merged 2 commits into
mainfrom
claude/settings-i18n

Conversation

@baozhoutao

Copy link
Copy Markdown
Contributor

What

Complete zh-CN coverage for the auth / sms / ai built-in settings manifests. These manifests grew new groups and fields but the zh-CN translation bundle wasn't updated, so those settings rendered English under a Chinese UI.

Part of objectstack-ai/objectui#2851 (P1).

Changes

packages/services/service-settings/src/translations/zh-CN.ts — fill every missing group title + field label/help for:

  • auth: breach/complexity/min-classes/history/expiry password policy, anti_abuse (lockout + rate-limit), multi_factor (MFA + grace), extra session controls (idle / absolute / concurrent), network allow-list.
  • sms: the whole SMS Delivery namespace (provider select + Aliyun + Twilio groups/keys, test action).
  • ai: DeepSeek / DashScope / Cloudflare / SiliconFlow / OpenRouter provider groups + keys + select options, and the conversation-title group.

Plus zh-CN.coverage.test.ts — a guard that pins zh-CN to full title/group/key coverage of every built-in settings manifest, so a future manifest addition can't silently regress into English. Dropdown option labels are intentionally excluded (some are codes / format specimens like date_format = "YYYY-MM-DD" that must not be translated).

Test

pnpm --filter @objectstack/service-settings test12 files / 155 tests pass, including the new coverage guard and the manifest schema-parse tests.

Follow-ups (not in this PR)

  • localization option labels (timezones / currencies / format specimens) — low value, several are codes.
  • ja-JP / es-ES parity — currently sparser than zh-CN (missing whole groups).

🤖 Generated with Claude Code

@vercel

vercel Bot commented Jul 27, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
objectstack Ignored Ignored Jul 27, 2026 9:25am

Request Review

@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

This PR changes 1 package(s): packages/services.

6 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:

  • content/docs/automation/webhooks.mdx (via packages/services)
  • content/docs/kernel/runtime-services/audit-service.mdx (via packages/services)
  • content/docs/kernel/runtime-services/index.mdx (via packages/services)
  • content/docs/kernel/runtime-services/settings-service.mdx (via packages/services)
  • content/docs/plugins/packages.mdx (via packages/services)
  • content/docs/protocol/kernel/i18n-standard.mdx (via packages/services)

Advisory only. To re-verify, run the docs-accuracy-audit workflow scoped to these files:
node scripts/docs-audit/affected-docs.mjs origin/main → pass the list as args.docs.

@github-actions github-actions Bot added size/l and removed size/m labels Jul 27, 2026
@os-zhuang
os-zhuang merged commit 7cf20c6 into main Jul 27, 2026
16 checks passed
@os-zhuang
os-zhuang deleted the claude/settings-i18n branch July 27, 2026 09:42
baozhoutao and others added 2 commits July 27, 2026 04:42
The auth, sms and ai manifests grew new groups and fields (breach/complexity/
history/expiry password policy, anti-abuse, MFA, extra session controls,
network allow-list; the whole SMS Delivery namespace; DeepSeek/DashScope/
Cloudflare/SiliconFlow/OpenRouter providers + conversation-title options) but
the zh-CN bundle wasn't updated, so those settings rendered English under a
Chinese UI (objectui#2851 P1).

- Fill every missing zh-CN group title + field label/help for auth, sms, ai.
- Add a coverage guard test that pins zh-CN to full title/group/key coverage
  of every built-in settings manifest (option labels excluded — several are
  codes/format specimens that must not be translated).

localization option labels (timezones/currencies/format specimens) remain a
tracked follow-up; ja-JP / es-ES parity likewise.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ctui#2851 P1)

Follow-up to the zh-CN auth/sms/ai fix:

- zh-CN: translate the remaining localization option labels (timezone,
  locale, date/number format, currency, fiscal-year-start) — the settings
  bundle is now 100% covered, options included.
- ja-JP / es-ES: bring both to full structural parity — extend auth (policy /
  anti-abuse / MFA / extra session controls / network) and ai (DeepSeek /
  DashScope / Cloudflare / SiliconFlow / OpenRouter + conversation titles),
  and add the previously-missing sms, company and localization namespaces.
- Generalize the coverage guard to all three shipped non-English locales
  (renamed zh-CN.coverage.test.ts → settings-translation-coverage.test.ts).

Package suite: 12 files / 175 tests pass (31 coverage assertions).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants