2 Commits

Author SHA1 Message Date
Yeqi Huang
9c0439f424 fix(v1-en): repair missing figures and section pages in English edition (#506)
- Remap 129 broken image paths in v1/en_chapters to the files that exist
  under v1/img (old chapter numbering, renamed files, and .pdf figures
  that browsers cannot display inline).
- Restore ch07/7.5/distribute.png and ch08/distillation.png, which were
  dropped in #499 because the `dist*` .gitignore rule matched them;
  narrow the rule to `/dist/`.
- Fix the English toc blocks: chapter entries now point at real files and
  the root toc has part headings, so section pages are built again
  (previously only chapter index pages were generated).
- Add tests/test_image_references.py to CI to catch missing or
  unrenderable figure references.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 01:57:57 +00:00
Yeqi Huang
d953030747 feat: add v1/v2 versioning with language selector (#494)
* 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>
2026-03-12 13:37:42 +00:00