Files
cs249r_book/labs/pytest.ini
Vijay Janapa Reddi 25d200638a feat(labs): add Level 4 protocol invariant tests and integrate into CI
New test_protocol.py validates 6 protocol invariants from PROTOCOL.md:
- Invariant 1: constants sourced from mlsysim registries (not hardcoded)
- Invariant 4: multi-part tabbed structure (4-5 parts + synthesis)
- Invariant 5: multiple deployment contexts (2-3 hardware tiers)
- Zone structure (4 zones: opening, widgets, tabs, ledger)
- Ledger integration (ledger.save with correct chapter number)
- Pedagogical flow (predictions per part, mo.stop gates, stakeholder msgs)

Known gaps surface as xfail, not hard failures — provides a quality
dashboard without blocking CI while labs are brought up to protocol.
2026-03-22 08:48:27 -04:00

7 lines
258 B
INI

[pytest]
testpaths = tests
markers =
engine: Level 2 — headless cell execution via marimo.App.run()
widget: Level 3 — widget structure and prediction-reveal flow
protocol: Level 4 — protocol invariant compliance (pedagogical quality gates)