Full corpus re-run after mutation-testing the pipeline: every chapter
builds, every LEGO cell execs, every inline ref verified in rendered
HTML, LLM coherence reviewed. 44/44 PASS.
Allow intentional cross-section anchors in lego_focal_verify, skip algorithm
LaTeX false positives in audit_html, and add appendix_inference to HTML builds.
Document the chapter-anchor exception in LEGO_CELLS.md; ledger now 45/45 pass.
Expand lego-prose-units for FLOP/byte and carbon-intensity glyphs, add regression tests and an explicit audit report, and strip redundant g/kWh after fmt_carbon_intensity refs in sustainable_ai.
No-backward-compat sweep, part 2. The module had been reduced to a
units-only re-export ('retired, do not add values'); per policy it is
now gone and every consumer reads the real home:
- 32 internal modules, the package __init__, and core/__init__ import
core.units (physics modules keep their own physics/constants)
- 43 book chapters' LEGO cells migrated (star imports, named imports,
and the appendix attribute style 'constants.VIDEO_*' -> units.*);
lego_focal_verify confirms identical pass/flag state to pre-sweep
(8 pre-existing structural flags, A/B-verified unchanged)
- tutorial/tools/test imports migrated (incl. binder test_units.py);
book tests' legacy-symbol scanner treats a missing constants.py as
'nothing defined'
- test_constants_allowlist.py rewritten as a deletion pin: the module
(and any shim for it) must never return; core.units must keep the
measurement surface (ureg, Q_, GB, BYTES_FP16, PRECISION_MAP, ...)
- test_mlsysim_registry_parity.py deleted: it compared registry values
against legacy constants 'before deletion' — that migration is
complete (registry gate list updated)
- Docs prose (DATA_MODEL, architecture, contributing) states the
deletion instead of describing a retired shim
749 passed; binder registry gate green; star import intact.
All 49 LEGO cells pass mechanical audit + LLM prose coherence
with --strict-coverage --fail-on-warn. GPT2Compute and
ResNetMemoryScaling HTML refs verified after fresh render.