The variable was renamed from docsRoot to root in #496 but one
reference was missed, causing a ReferenceError that broke the
entire script and prevented V1/V2/EN/ZH buttons from rendering.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Two fixes:
1. version-selector.js: Simplify basePath() to determine site root from
the URL prefix (/ or /docs/) instead of trying to strip path segments.
Previously, visiting /index.html caused basePath to compute
/index.html/v1/ (404) because it didn't strip the filename first.
2. prepare_mdbook.py: Strip pandoc-style heading IDs ({#label}) from
both extracted titles (used in SUMMARY.md sidebar) and rendered
markdown content. Fixes "Model Deployment {#ch:deploy}" showing
raw in the sidebar and page headings.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* feat: add v1/v2 versioning and language selector for mdbook
- Copy current content to v1/ directory (1st Edition)
- Create v2/ directory with new TOC structure (2nd Edition) and placeholder chapters
- Add version selector (V1/V2) and language toggle (EN/ZH) in top-right nav bar
- Add build scripts: build_mdbook_v1.sh, build_mdbook_v2.sh
- Update assemble_docs_publish_tree.py to support v1/v2 deployment layout
- Fix mdbook preprocessor to use 'sections' key (v0.4.43 compatibility)
- Update .gitignore for new build artifact directories
- Deployment layout: / = v2 EN, /cn/ = v2 ZH, /v1/ = v1 EN, /v1/cn/ = v1 ZH
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* build: update CI to build and verify all four books (v1/v2 x EN/ZH)
- Clarify step names: "Build v2 (EN + ZH)" and "Build v1 (EN + ZH)"
- Add verification step to check all four index.html outputs exist
- Deploy workflow assembles: / = v2 EN, /cn/ = v2 ZH, /v1/ = v1 EN, /v1/cn/ = v1 ZH
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: gracefully skip missing TOC entries instead of crashing
resolve_toc_target() now returns None for missing files instead of
raising FileNotFoundError. This fixes v1 EN build where chapter index
files reference TOC entry names that don't match actual filenames.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>