Skip to main content

Overview

The /sdd-verify command launches the verifier sub-agent to validate that the implementation matches the specs, design, and tasks. It performs comprehensive quality checks and produces a compliance report.
v2.0 Enhancement: Now runs real tests and builds, produces spec compliance matrix, and reports issues at severity levels.

Usage

string
Optional. The change to verify. If omitted, verifies the most recent change.

What It Does

1. Loads Artifacts

Reads all planning and implementation artifacts:
  • proposal.md - Original intent and scope
  • specs/*.md - Requirements and acceptance criteria
  • design.md - Technical approach and decisions
  • tasks.md - Implementation checklist

2. Performs Validation Checks

  • ✓ All tasks marked complete?
  • ✓ All files mentioned in tasks exist?
  • ✓ Any TODO comments left in code?

3. Runs Tests and Build (v2.0)

Executes real commands:

4. Builds Spec Compliance Matrix (v2.0)

Maps each requirement to implementation status:

5. Reports Issues by Severity

array
Blocking issues that prevent the change from being archived:
  • Test failures
  • Build failures
  • Unimplemented MUST/SHALL requirements
  • Missing rollback plan steps
array
Issues that should be addressed but don’t block:
  • SHOULD requirements not implemented
  • Coverage below threshold
  • TODOs in code
  • Design deviations
array
Nice-to-have improvements:
  • Code style inconsistencies
  • Optimization opportunities
  • Documentation gaps

6. Generates Verification Report

Creates verification-report.md or verify-report artifact with:
  • Executive summary (PASS / FAIL / WARNINGS)
  • Spec compliance matrix
  • Test results
  • Issues by severity
  • Recommendation (ready to archive or needs work)

Example Output

Successful Verification

Output:
$ npm test
$ npm run build
$ npm test — —coverage
Impact: Minor - doesn’t block functionality Recommendation: Create follow-up issue or remove if not planned

SUGGESTION

  1. Consider extracting theme colors to separate file
    • Current: All in globals.css
    • Suggestion: theme-colors.css for easier maintenance
  2. Add visual regression tests for theme switching
    • Current: Only unit tests
    • Suggestion: Playwright/Cypress tests for UI

Verification Report

Status: ✅ PASS WITH WARNINGS

Summary

  • All requirements implemented
  • All tests passing
  • Build successful
  • 1 warning (TODO comment)
  • 2 suggestions for improvement

Recommendation

Ready to archive - Change is complete and meets all acceptance criteria. Warnings are minor and don’t block release.

Artifacts

  • openspec/changes/add-dark-mode/verification-report.md

✅ Verification complete. Run /sdd-archive to close this change.
$ npm test
Expected: id,title,content 1,“Test, with comma”,“Data” Received: id,title,content 1,Test, with comma,Data Error: Quotes missing around fields with commas
Expected file to start with UTF-8 BOM (\uFEFF) Received: No BOM present
$ npm run build

Verification Configuration

Configure in openspec/config.yaml:
string
Command to run tests (e.g., npm test, pytest, cargo test)
string
Command to build the project (e.g., npm run build, go build)
number
default:"80"
Minimum test coverage percentage required (0-100)

Validation Criteria

MUST/SHALL Requirements

All requirements using RFC 2119 keywords MUST or SHALL must be implemented:

SHOULD Requirements

Recommended but not blocking:

MAY Requirements

Optional features:

When to Use

After Implementation

Run after /sdd-apply completes all tasks

Before Archiving

Always verify before running /sdd-archive

After Bug Fixes

Re-verify after addressing issues

Pre-Deployment

Final quality gate before release

Fixing Verification Issues

When verification fails:
1

Review the report

Read verification-report.md to understand all issues
2

Prioritize CRITICAL issues

Fix blocking issues first (failed tests, unmet MUST requirements)
3

Address WARNINGS

Fix non-blocking issues if time permits
4

Re-verify

Run /sdd-verify again after fixes
5

Archive when passing

Run /sdd-archive once verification passes

Verification Report Format

The generated report includes:

Best Practices

Make /sdd-verify a mandatory step. It catches issues early and ensures quality.
Don’t ignore failed tests or unmet requirements. These indicate incomplete implementation.
If you intentionally skip a SHOULD requirement, add a note in the proposal explaining why.
The compliance matrix serves as a checklist for manual code review.