-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
QAQuality AssuranceQuality Assurancechange-proposalProposal for a new changeProposal for a new changeenhancementNew feature or requestNew feature or request
Description
Why
Users who script SpecFact in CI/CD pipelines rely on stable output: help text format, error message wording, JSON/YAML structured output shapes. Today, a refactoring PR can silently change help text or error phrasing with no test catching it. Snapshot testing makes output changes explicit, reviewable, and intentional — treating help text and structured output as versioned contracts.
What Changes
- NEW:
syrupydev dependency for pytest snapshot testing - NEW: Snapshot tests for all command
--helpoutputs - NEW: Snapshot tests for structured output shapes (JSON/YAML) and key error messages
- EXTEND: CI pipeline to reject unreviewed snapshot changes
- EXTEND:
pyproject.tomlwith syrupy configuration and hatch scripts
Acceptance Criteria
- Syrupy integrated and configured
- Snapshot tests exist for all command group help text
- Snapshot tests exist for key structured outputs and error messages
-
hatch run snapshot-updateandhatch run snapshot-checkscripts work - Documentation describes snapshot update workflow
OpenSpec Change Proposal: cli-val-02-output-snapshot-stability
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
QAQuality AssuranceQuality Assurancechange-proposalProposal for a new changeProposal for a new changeenhancementNew feature or requestNew feature or request
Type
Projects
Status
Todo