Skip to content

docs(zh-Hant): name the Setup app and its nav-group roster in English on the last two sites - #1563

Merged
os-sales merged 1 commit into
mainfrom
claude/issue-1559-setup-ui-and-nav-roster
Sep 3, 2026
Merged

docs(zh-Hant): name the Setup app and its nav-group roster in English on the last two sites#1563
os-sales merged 1 commit into
mainfrom
claude/issue-1559-setup-ui-and-nav-roster

Conversation

@os-sales

@os-sales os-sales commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Fixes #1559

Two zh-Hant sites still named platform navigation in Chinese with no arrow. Prose only, both replacements taken verbatim from each page's English twin.

What changed

Site 1 — content/docs/administration/index.zh-Hant.mdx:40, an apposition:

-- **設定 UI** —— 在齒輪圖示下(右上角)找到它。所有管理任務的主中樞。
+- **Setup UI** —— 在齒輪圖示下(右上角)找到它。所有管理任務的主中樞。

The twin reads - **Setup UI** — find it under the gear icon (top right).UI is inside the bolded run there, so it is inside it here.

Site 2 — content/docs/guides/integrations.zh-Hant.mdx:33, the Setup app's nine navigation groups:

-…另外八個是*概覽*、*應用*、*人員與組織*、*存取控制*、*簽核*、*設定*、*診斷*與*進階*——但…
+…另外八個是 *Overview*、*Apps*、*People & Organization*、*Access Control*、*Approvals*、*Configuration*、*Diagnostics* 與 *Advanced*——但…

The trap on site 2

That roster's sixth entry, 設定, renders Configuration — not Setup. A substitution mapping 設定 to Setup across the line would have been wrong twice: it mistranslates the group and silently asserts a group that is not in the roster at all. PR #1537 hit the identical roster on guides/import-and-export.zh-Hant.mdx and said so in its own changeset. So all eight labels were taken from the English twin as one block, not translated individually and not mapped entry by entry from the Traditional.

The line was self-evidencing before the twin was opened: the same sentence already writes Setup → Integrations and 「平台 Setup 應用」 in English while listing that app's own groups in Traditional.

Why English on a Traditional page

The platform ships en / zh-CN / ja-JP / es-ES and no Traditional-Chinese pack, so a zh-Hant reader's console falls back to Simplified. A Traditional page therefore labels platform navigation in English rather than mix Simplified glyphs into Traditional prose (#1368, restated at AGENTS.md:343-345). It is not because the reader sees an English UI — that reason was measured false and is retired.

Measurements

The nine roster labels — four sources, all agreeing on the same names in the same order. Overview · Apps · People & Organization · Access Control · Approvals · Configuration · Diagnostics · Integrations · Advanced.

Source Agrees
SETUP_APP in @objectstack/platform-objects/apps — the platform's own declaration, nine type: 'group' entries
English twin, content/docs/guides/integrations.mdx:33 (eight, with Integrations elided as the subject)
content/docs/guides/import-and-export.zh-Hant.mdx:10 — this roster, already in English
content/docs/administration/sandbox-and-releases.zh-Hant.mdx:10 — likewise

The zh-CN pack labels those same nine 总览 / 应用 / 人员与组织 / 访问控制 / 审批 / 配置 / 诊断 / 集成 / 高级 — independent confirmation that entry six is Configuration, and that 設定 was never its name.

The graded sweep — 289 occurrences of 設定 across the 68 zh-Hant pages, every one graded on today's tree (0edd3037, i.e. after PR #1560 landed). Not keyed on a shape: the place-form probe that filed the earlier card is exactly what missed these two.

Bucket Count
權限設定檔 — Profile, the noun 87
The docs site's own page titles and cross-links — 設定清單 = Setup Checklist, 「管理 › 設定」, 「管理 → 設定清單」 8
The verb, or the common noun — 設定變更, 設定項, 部署設定, 可設定, 偏好設定 192
The platform Setup app or one of its nav groups — the defect 2

The 8 docs-site entries were each checked against the twin: every one glosses a documentation page (/docs/administration/setup), not console navigation, and every one is translated in every locale by design. The 192 were read in context; the borderline ones were checked against the twin and are lowercase there — guides/email-and-calendar's three 設定頁 gloss a Settings page the twin marks (not shipped), sales/quotes's 郵件範本設定 glosses "your email-template settings", ai-copilot/skills's 管理設定 glosses "admin settings".

A complementary probe ran in the opposite direction — for every zh-Hant page, the twin's count of the word Setup against the page's own — and its seven deltas were read line by line. Six are the docs-site page titles and cross-links above. The seventh is reported below rather than swept in.

Neither edit moves any guard, as the card's model predicts.

before after
test/docs-setup-navigation-names.test.ts 18/18 passed 18/18 passed
Rule-2 bold navigation citations in content/docs 142 — Setup 86, Studio 42, 设置 14, 設定 0 142 — Setup 86, Studio 42, 设置 14, 設定 0

Both sites are structurally invisible to that rule, before and after: its matcher needs a bold **App → …** run, site 1 has no arrow and site 2 is single-asterisk italics inside a sentence. That is the same blindness the card describes, and whether any rule can catch this shape is #1553, still open and untouched here.

Both edits proved on disk, blob hash before → after:

File before after
content/docs/administration/index.zh-Hant.mdx 3904633d f97e7eee
content/docs/guides/integrations.zh-Hant.mdx 63410d63 289b3256

Anchored counts on both the removed and the injected text: removed 1 → 0, injected 0 → 1 per site, plus each of the eight injected labels at exactly 1. Both edited paragraphs were then read back in full as Traditional-Chinese prose — 「另外八個是 A、B、…、G 與 H」 is grammatical with the Latin labels in place, and the count 「八個」 still matches the eight names listed.

Nothing behavioural changes here, so there is nothing to ablate — this is a prose diff, and the proof that matters is the pair of hashes and the anchored counts above.

Reported, not swept in

  • content/docs/administration/profiles.zh-Hant.mdx:122 — 「| 系統權限 | 設定存取、…」 against the twin's | **System permissions** | Setup access, …. It is a third candidate of the same shape: the app named in Chinese with no arrow. Weaker than the two above — it is a permission category in a table, and Setup access is not a label the platform ships anywhere either (zero hits across the installed @objectstack/* tree) — so it wants its own grading rather than a rider on this PR. Out of this card's declared file surface; the seat can file it.
  • The zh-Hans siblings carry the same shape at both sitesadministration/index.zh-Hans.mdx:40设置 UI」 and guides/integrations.zh-Hans.mdx:33 「…另外八个是概览应用、…」 — and are deliberately left alone. On a Simplified page the console really does render Simplified, so the same shape may be the convention working; that question is live on [Decision] Do docs-site breadcrumb labels follow the console-navigation convention or the page titles? Three spellings currently point at the same page #1545 and is not pre-empted here. One datum for it, offered without a verdict: the zh-Hans roster's entry six is already 配置, correctly distinct from 设置, while its entry one is 概览 where the shipped zh-CN label is 总览, and the app label the pack ships is 系统设置 rather than 设置.

Out of surface, untouched

The justification parenthetical at guides/integrations.zh-Hant.mdx:8 (already correct after PR #1549), test/docs-setup-navigation-names.test.ts, and content/docs/releases/.

Verification

pnpm verifyvalidate && typecheck && lint && lint:i18n-gate && hygiene && hygiene:tokens && build && test — green end to end, exit 0, on the tree of ed816684 (git status empty at the time of the run, so the verified tree is the committed tree).

✓ i18n lint gate: 0 `i18n/missing-*` issues (59 total lint issue(s) reported, unaffected by this gate)
✓ source hygiene clean
✓ source token ratchet clean
  ✓ Build complete (1909ms)
 Test Files  159 passed (159)
      Tests  3363 passed | 1 skipped (3364)

A changeset is included: .changeset/zh-hant-setup-ui-and-the-nav-group-roster.md.

🤖 Generated with Claude Code

https://claude.ai/code/session_019hUuCQStzXGMFSX4dzww5t


Generated by Claude Code

…e last two sites

Two zh-Hant sites still named platform navigation in Chinese with no arrow, a
shape all three rules of test/docs-setup-navigation-names.test.ts are
structurally unable to see: rule 1 bans only names the platform ships nowhere,
and 設定 is both a live zh-CN label and the ordinary Chinese word for
"configure"; rules 2 and 3 need a bold **App -> ...** path.

administration/index named the app as an apposition, 「**設定 UI**」, against the
twin's 「**Setup UI**」. guides/integrations listed the Setup app's nine
navigation groups in Traditional inside a sentence that already writes
`Setup -> Integrations` and 「平台 Setup 應用」 in English.

The roster carried a trap. Its sixth entry, 設定, renders Configuration, not
Setup, so a substitution across the line would have been wrong twice: a
mistranslated group, plus a silent claim that the app is one of its own
navigation groups. All eight labels were taken verbatim from the English twin
as one block. Four sources agree on the nine names and their order -- the
platform's own SETUP_APP declaration in @objectstack/platform-objects/apps, the
English twin, and the two zh-Hant pages that already carry this roster in
English (guides/import-and-export, administration/sandbox-and-releases).

All 289 occurrences of 設定 across the 68 zh-Hant pages were graded on today's
tree: 87 權限設定檔 (Profile), 8 docs-site page titles and cross-links, 192 the
verb or the common noun, and these 2 the app.

Prose only. No guard change: the guard is 18/18 green before and after, and its
rule-2 citation count is unchanged at 142 (Setup 86, Studio 42, 设置 14, 設定 0).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019hUuCQStzXGMFSX4dzww5t
@vercel

vercel Bot commented Sep 3, 2026

Copy link
Copy Markdown

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

1 Skipped Deployment
Project Deployment Actions Updated
hotcrm Ignored Ignored Sep 3, 2026 12:14pm UTC

Request Review

@os-sales
os-sales marked this pull request as ready for review September 3, 2026 12:18
@os-sales
os-sales added this pull request to the merge queue Sep 3, 2026
Merged via the queue into main with commit 7736bd4 Sep 3, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants