Parent: #494 Related: docs/DOCS_ACCURACY_PLAN.md
Problem
bun run docs:build currently renders successfully through the owner-maintained ../../Tools/bunpress checkout, then fails its output-manifest gate because the renderer identity changed from BunPress 0.1.21 to 0.2.0. The new tree adds search-index.json and changes every rendered page, so this is a renderer-wide release boundary rather than an incidental docs-data update.
Observed on 2026-08-10 from clean tracked zig-js main after #526:
- manifest generator: 0.1.21
- active owner renderer: 0.2.0
- added output:
search-index.json - changed output: every documented HTML page, with substantial byte/hash deltas
Scope
- Audit the owner BunPress 0.2.0 change and rendered output for intended markup, assets, search-index content, links, escaping, and deterministic ordering.
- Resolve defects in
../../Tools/bunpress, not through a zig-js-local renderer substitute. - Regenerate
docs/.data/bunpress-output-v1.jsononly after the complete rendered-tree diff is reviewed and stable. - Make
bun run docs:buildpass from clean tracked zig-js and BunPress inputs and keep CI reproducible.
No-workaround rules
- No bypass of
--check-manifest, stale-version spoof, selective hash omission, committeddist/, or blanket manifest acceptance without inspecting the renderer-wide change. - Do not conflate unrelated source/evidence edits with the renderer upgrade.
Acceptance
- BunPress 0.2.0 output and
search-index.jsonare audited for correctness, determinism, and safe escaping. - Any renderer defect is fixed and tested in the owned BunPress source.
bun run docs:manifestrecords only the accepted final tree and the exact generator identity.- Two clean consecutive
bun run docs:buildruns reproduce the manifest byte-for-byte. - The resulting zig-js commit reports flips 0 test262 cases and links the exact BunPress revision used.