Why
Validation only has value if it runs automatically. Today, pr-orchestrator.yml runs a cli-validation job that only checks specfact --help. The new validation layers (snapshots, anti-patterns, acceptance tests) need to slot into CI with clear gating rules so broken CLI behavior never reaches PyPI.
What Changes
- EXTEND:
pr-orchestrator.yml with snapshot validation, black-box acceptance, and anti-pattern safety steps
- NEW: Snapshot update CI workflow (manual trigger)
- EXTEND:
contract-test system with CLI behavior contracts as a new tier
- EXTEND:
pyproject.toml hatch scripts with combined CLI validation command
Acceptance Criteria
Blocked by: #280 (cli-val-02), #282 (cli-val-04)
OpenSpec Change Proposal: cli-val-05-ci-integration
Why
Validation only has value if it runs automatically. Today,
pr-orchestrator.ymlruns acli-validationjob that only checksspecfact --help. The new validation layers (snapshots, anti-patterns, acceptance tests) need to slot into CI with clear gating rules so broken CLI behavior never reaches PyPI.What Changes
pr-orchestrator.ymlwith snapshot validation, black-box acceptance, and anti-pattern safety stepscontract-testsystem with CLI behavior contracts as a new tierpyproject.tomlhatch scripts with combined CLI validation commandAcceptance Criteria
hatch run contract-testincludes CLI validation tierBlocked by: #280 (cli-val-02), #282 (cli-val-04)
OpenSpec Change Proposal: cli-val-05-ci-integration