Commit Graph

7 Commits

Author SHA1 Message Date
Vijay Janapa Reddi
c30f2a3bfd refactor: move mlsysim to repo root, extract fmt module from viz
Moves the mlsysim package from book/quarto/mlsysim/ to the repo root
so it is importable as a proper top-level package across the codebase.

Key changes:
- mlsysim/fmt.py: new top-level module for all formatting helpers (fmt,
  sci, check, md_math, fmt_full, fmt_split, etc.), moved out of viz/
- mlsysim/viz/__init__.py: now exports only plot utilities; dashboard.py
  (marimo-only) is no longer wildcard-exported and must be imported
  explicitly by marimo labs
- mlsysim/__init__.py: added `from . import fmt` and `from .core import
  constants`; removed broken `from .viz import plots as viz` alias
- execute-env.yml: fixed PYTHONPATH from "../../.." to "../.." so
  chapters resolve to repo root, not parent of repo
- 51 QMD files: updated `from mlsysim.viz import <fmt-fns>` to
  `from mlsysim.fmt import <fmt-fns>`
- book/quarto/mlsys/: legacy shadow package contents cleaned up;
  stub __init__.py remains for backward compat
- All Vol1 and Vol2 chapters verified to build with `binder build pdf`
2026-03-01 17:24:11 -05:00
Vijay Janapa Reddi
3266bc7dfa Standardize chapter discovery via Quarto config
Refactors chapter discovery across CLI commands to use a single, canonical source of truth: the volume's Quarto PDF configuration file.

Introduces a new `get_chapters_from_config` function in `core/discovery.py` that parses the `_quarto-pdf-{volume}.yml` to derive the ordered list of testable chapter stems. This ensures consistent chapter order for `build` and `debug` operations, reducing duplication and improving maintainability.

Updates `build.py` and `debug.py` to delegate all chapter list retrieval to this new centralized method within `ChapterDiscovery`. Also enhances chapter QMD file location to support shared content paths.
2026-02-28 17:08:17 -05:00
Vijay Janapa Reddi
d299e49d10 update 2026-02-28 16:25:00 -05:00
Vijay Janapa Reddi
77d0081e38 Refactors build process and validation logic
Refactors the build process to leverage shared output file resolution logic, ensuring consistency across build and debug commands.

Improves validation by streamlining bibliography handling and adding stricter citation matching.

Updates diagram dependencies and adjusts content for clarity and accuracy.
2026-02-22 12:06:46 -05:00
Vijay Janapa Reddi
37d26f6def Book volumes: content, VS Code ext, CLI debug, and build updates 2026-02-15 16:02:54 -05:00
Vijay Janapa Reddi
f48680e388 Fix all Vol I chapter builds (HTML + PDF) and unblock Vol II builds
Build fixes:
- Add viz.py symlink at book/quarto/ so import viz works with execute-dir: project
- Add VIDEO_1080P constants to calc/constants.py for ml_systems bandwidth calc
- Fix ml_systems bandwidth-bottleneck cell to use proper pint unit conversions
- Fix ops YAML escape sequence in fig-cap that blocked all project builds
- Remove duplicate fig-rotting-asset-curve cell and stray code block in ops
- Fix data_engineering inline math (standalone dollar on own line)
- Move fig-tail-latency-explosion out of callout box in serving (LaTeX float fix)
- Fix debug tool _get_output_path to use correct PDF filenames per volume
- Add 16 empty .bib placeholder files for Vol II chapters referenced in configs
2026-01-31 21:32:46 -05:00
Vijay Janapa Reddi
863557cca6 Add debug CLI command and improve build command
New 'debug' subcommand for diagnosing build issues (orphan detection,
cross-reference validation, config checks). Enhanced build command with
additional options and better error reporting.
2026-01-31 19:46:36 -05:00