Validate spec documents for EARS syntax compliance
Validates specification documents for EARS syntax compliance and structural completeness.
/plugin marketplace add iButters/ClaudeCodePlugins/plugin install spec-driven-workflow@claude-code-plugins<feature-slug>Validate the specification at .specs/$ARGUMENTS/ for correctness and EARS compliance.
Every acceptance criterion in requirements.md MUST match one of these EXACT patterns:
| Pattern | Regex | Example |
|---|---|---|
| Ubiquitous | ^THE .+ SHALL .+$ | THE System SHALL encrypt passwords |
| Event-Driven | ^WHEN .+ THE .+ SHALL .+$ | WHEN user logs in THE System SHALL create session |
| State-Driven | ^WHILE .+ THE .+ SHALL .+$ | WHILE user is authenticated THE System SHALL show dashboard |
| Optional | ^WHERE .+ THE .+ SHALL .+$ | WHERE 2FA is enabled THE System SHALL require code |
| Unwanted | ^IF .+ THEN THE .+ SHALL .+$ | IF password is wrong THEN THE System SHALL show error |
| Complex | ^WHILE .+ WHEN .+ THE .+ SHALL .+$ | WHILE logged in WHEN timeout occurs THE System SHALL logout |
Strict Rules:
Each requirement MUST have:
_Requirements: ..._ links in tasks.mdRequired sections:
.specs/$ARGUMENTS/requirements.md# Validation Report: <feature-slug>
## EARS Syntax Validation
### Result: [PASSED/FAILED]
**Valid Statements:** X
**Invalid Statements:** Y
### Issues (if any)
#### Line [N]: Invalid EARS Syntax
**Content:** `[the invalid statement]`
**Error:** [specific error]
**Fix:** [how to fix it]
---
## Requirements Structure
### Result: [PASSED/FAILED]
- [OK/-] All requirements have titles
- [OK/-] All requirements have objectives
- [OK/-] All requirements have acceptance criteria
---
## Task Coverage (if tasks.md exists)
### Result: [PASSED/FAILED]
| Requirement | Covered | Tasks |
|-------------|---------|-------|
| Req 1 | OK | 1.1, 2.1 |
| Req 2 | - | - |
---
## Design Completeness (if design.md exists)
### Result: [PASSED/FAILED]
- [OK/-] Overview section
- [OK/-] Architecture diagram
- [OK/-] Components section
- [OK/-] Data Models section
---
## Summary
**Overall Status:** [PASSED/FAILED]
**Total Issues:** X errors, Y warnings
### Required Actions
1. [Action to fix issue 1]
2. [Action to fix issue 2]