Wires `decompose_audit()` into a new `core eval math-contemplation` subcommand: - `cmd_eval_math_contemplation` in `core/cli.py` dispatched via `cmd_eval` when `lane == "math-contemplation"` - `--audit` (default: audit_brief_11.json) + `--output` (default: teaching/math_proposals/proposals.jsonl) with path-traversal validation (absolute paths and directory-escaping relative paths → exit 2) - exit 0 success / exit 1 audit-not-found / exit 2 parse-error or rejection - `--json` flag for machine-readable output - idempotent: re-run on same audit writes byte-identical JSONL - output sorted by proposal_id (inherits decomposer sort contract) - forbidden: no auto-apply, no writes outside teaching/math_proposals/, no audit-file mutation - `teaching/math_proposals/.gitkeep` directory scaffold committed - `.gitignore` entry for `teaching/math_proposals/proposals.jsonl` - 11 tests in `tests/test_adr_0172_w3_cli_lane.py`; runtime suite green |
||
|---|---|---|
| .. | ||
| .gitkeep | ||