Skip to content

Chinese docs pages for operators: Cloudflare settings and the disaster-recovery runbook, held to their English by hash - #329

Merged
wms2537 merged 5 commits into
mainfrom
docs-zh
Oct 3, 2026
Merged

wms2537 merged 5 commits into
mainfrom
docs-zh

Conversation

@wms2537

@wms2537 wms2537 commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

The owner approved translating key operator pages for mailda.site's /zh-cn/.

  • docs/zh-cn/cloudflare-settings.md (whole file) and docs/zh-cn/disaster-recovery.md (the runbook part), in the owner-confirmed glossary's words, rendered at their English page's path under /zh-cn/ in place of the "not translated" notice; the English stays authoritative and says so.
  • Each records its English source's SHA-256 (the whole file, or only the translated span up to translated_until); apps/site/test/translations.test.mjs fails, naming both files, when the English changes, so a translation cannot fall behind silently. Edits outside a partial translation's span do not fail it.
  • Structure parity checked (code blocks byte-identical, links, inline code, tables, heading levels), no glossary NEVER phrase, Han-Latin spacing and full-width punctuation.
  • The README is not translated (it changes about twice a day); the /zh-cn/ landing page carries its intro and status.
  • README fixes found on the way: <mailbox> was swallowed on the site; the delivery-events paragraph now says what the installer actually does (and what a button-deployed Node needs).

Verified: site tests 17/17, worker node suite 885/885, lint, typecheck.

🤖 Generated with Claude Code

wms2537 and others added 5 commits October 3, 2026 14:33
docs/zh-cn/ holds translations of the README through its Status section,
docs/cloudflare-settings.md and the runbook part of docs/disaster-recovery.md,
each recording the SHA-256 of the English it was made from. mailda.site renders
them at their English pages' paths under /zh-cn/ in place of Starlight's
fallback. apps/site/test/translations.test.mjs fails when an English source
moves, and holds each translation to its source's code blocks, links, inline
code, tables and headings, the glossary's NEVER list and the zh-Hans register.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The README changes about twice a day, so a whole-file hash on its translation
would have failed every unrelated pull request until somebody re-translated it,
and the /zh-cn/ landing page already carries its pitch and status in Chinese.
A translation with translated_until now records the hash of the English before
that line, so a new drill report under the runbook does not fail it; the whole
file stays hashed for cloudflare-settings. `node apps/site/scripts/translations.mjs`
prints each current hash.

Two README defects the translation found: the delivery-events paragraph said
only the Setup screen creates the subscription, while the installer's setup
step does (provisionNode posts /api/provider/subscription with wrangler's
login, attaching the consumer when none is); it now says so, and names what a
button-deployed Node needs. "Alice via <mailbox>" was raw HTML and drew as
"Alice via"; escaped in the README and in history.md.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@wms2537
wms2537 merged commit c481e32 into main Oct 3, 2026
2 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

Development

Successfully merging this pull request may close these issues.

1 participant