Epic: #51 · S6 · depends on #53/#52/#54/#55/#56 (S1–S5) · story testing
Problem
The unit tests cover each invariant on primitives; this story proves the guards fire end-to-end through the manager on synthetic data (the integration layer above each story's own unit tests).
Work — one tests/test_input_integrity_e2e*.py:
Acceptance criteria
Files
tests/test_input_integrity_e2e*.py (new).
Epic: #51 · S6 · depends on #53/#52/#54/#55/#56 (S1–S5) ·
storytestingProblem
The unit tests cover each invariant on primitives; this story proves the guards fire end-to-end through the manager on synthetic data (the integration layer above each story's own unit tests).
Work — one
tests/test_input_integrity_e2e*.py:last_valid_month_idis not delivered as zero (skip/xfail with reason if the companion isn't landed).Acceptance criteria
ruff+ full suite green; the design-contract stubs are all real (no remaining input-integrity xfails except C-40-deferred manager inheritance).Files
tests/test_input_integrity_e2e*.py(new).