| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Mirror repo for the published OpenClaw docs site.
Source of truth lives in openclaw/openclaw, under docs/.
Signed R2 requests and the hostname cutover helper default to a 30-second per-request timeout. A stalled R2 request enters the existing retry loop; a stalled cutover request fails the helper. Set R2_UPLOAD_FETCH_TIMEOUT_MS for scripts/docs-site/r2-upload.mjs, or CLOUDFLARE_API_TIMEOUT_MS for scripts/cloudflare-cutover-docs-hosts.mjs (including dry runs), to raise the relevant budget. Use an integer from 1 to 2147483647 milliseconds (Node's maximum timer delay). The workflow job timeout remains an outer limit even when a request budget is raised.
CI uses Node 26. Install the locked dependencies with npm ci, then run npm test for the renderer and Worker checks and npm run test:i18n for the translation control plane. The lockfile includes the MDX checker and its tsx loader; translation tests need no separate dependency install.
Translation checks exclude leading YAML frontmatter from MDX parsing while preserving body validation and the original offsets needed for markup repairs.
Docs Code CI restores the production article and OG caches before its full shell build. Each entry still validates its renderer, dependency and content identity; a missing or stale cache renders normally. The complete build, smoke and visual checks run in either case.
The source-owned .openclaw-sync/lib/docs-markdown.mjs supplies Markdown/MDX-ish preprocessing, tokens, IDs and links to both this renderer and the source docs:check-links:anchors command. docs-redirects.mjs owns redirect resolution. These files are generated by source sync; never edit their mirror copies. Missing support files fail the build through their imports.
MarkdownIt Anchor 10.0.0 preserves the canonical heading-ID contract from 9.2.1, including punctuation, percent bytes and duplicate suffixes. Each document gets a fresh parser environment so duplicate suffixes stay local to that document. TOC entries and copy controls use those IDs. Compatibility aliases follow the compiler shipped with mint@4.2.808 (@mintlify/common@1.0.1096, @sindresorhus/slugify@2.2.0) for existing Mintlify links. They are emitted only when unambiguous. Markdown headings and authored HTML or component IDs reserve their names first. A conflicting alias is omitted and reported by the source audit; an alias never moves a published target. Existing duplicate authored/canonical IDs remain visible as audit failures.
Titled Accordion/Expandable, Step and Tab components and named fields now emit fragment targets. Explicit IDs take precedence. Generated component targets allocate the next available numeric suffix after canonical/authored IDs and heading aliases have been reserved. Components without a title/name or explicit ID do not receive a synthetic target. A title that produces an empty Mintlify slug also needs an explicit ID. The {#custom} heading syntax remains unsupported; use explicit HTML IDs when authoring a distinct target.
Relative document links resolve from the final published page URL and render as root-relative HTML page links, including directory index pages. Explicit root-relative .md links still request raw Markdown and cannot carry HTML section fragments.
Fragment navigation checks literal percent-containing IDs first, then one URL decode, and opens every containing details element before scrolling. Heading aliases live inside their canonical heading; scrolling and TOC selection use that owner. The same behavior applies to initial loads, same-page links, PJAX and browser history.
Rollout order: land the source parser, dependencies and support-sync changes; wait for their generated support files to reach this mirror; then roll out this renderer and its lockfile; activate the source shared anchor audit only after the deployed renderer emits the shared targets. Validate the combined tree with npm test and make docs-check before publication. A support-file-only change must trigger a full artifact build; scoped content refreshes include the complete sync closure.
| Back | FazBrowse Home | New Git URL |