skills/validating-specs/SKILL.md
SOW/Spec cross-document consistency validation. Use when: 整合性チェック, consistency check, spec validation, 仕様検証.
npx skillsauth add thkt/claude-config validating-specsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| Document | Prefix | Links To | | -------- | ------- | ---------------- | | SOW | AC-N | — | | Spec | FR-NNN | Implements: AC-N | | Spec | T-NNN | FR: FR-NNN | | Spec | NFR-NNN | Validates: AC-N | | Spec | AS-NNN | — |
Priority levels (P0/P1/P2) and the Gate rule are defined in formatting-audits.
Each check below assigns priority per finding type.
Run P0-producing checks (1-3) first. If any P0 is raised, downstream checks may be skipped — the gate will already be NotReady.
Each AC-N must have ≥1 FR with Implements: AC-N.
| Finding | Priority | | --------------------------------------------- | -------- | | AC has no FR implementing it | P0 | | Orphan FR implements non-existent AC | P1 |
Each FR-NNN must have ≥1 T-NNN with matching FR reference.
| Finding | Priority | | ------------------------------------- | -------- | | FR has no test scenario | P0 | | Test references non-existent FR | P1 |
| Column | Must exist in | | ------ | ------------------------- | | AC | SOW Acceptance Criteria | | FR | Spec Functional Req table | | Test | Spec Test Scenarios | | NFR | Spec NFR table |
| Finding | Priority | | --------------------------------------- | -------- | | Matrix row references non-existent ID | P0 | | Matrix row missing expected column | P1 |
SOW In-Scope targets must appear in Spec phases. Extra files → P2.
Cross-check SOW↔Spec for technology mismatches, numeric conflicts.
| Finding | Priority | | ----------------------------------------- | -------- | | SOW and Spec specify conflicting tech | P0 | | SOW and Spec specify conflicting numerics | P0 | | Terminology used inconsistently | P1 |
| Language | Patterns | | -------- | ---------------------------------------------------------------------------------- | | JA | 適切に、できる限り、なるべく、ある程度、検討する、考慮する、予定、高速に(数値なし) | | EN | appropriately, as much as possible, reasonable, adequate, TBD, fast(no metric) |
| Finding | Priority | | ------------------------------------------------- | -------- | | Ambiguous term inside a SHALL clause (FR) | P0 | | Ambiguous term in NFR Target | P0 | | Ambiguous term elsewhere | P1 |
Same concept must use same term across documents.
| Finding | Priority | | ------------------------------------------------ | -------- | | Synonym mixing (user/member) in same role | P1 | | Abbreviation mixing (DB/database) | P2 |
| Finding | Priority | | ------------------------------------------------ | -------- | | AC Observable signal column empty (SOW) | P0 | | In Scope Observable outcome column empty (SOW) | P1 | | NFR Rationale column empty | P1 | | Assumption Impact-if-broken column empty | P1 | | Dependency Purpose column empty | P2 |
Risks column rules (Probability/Mitigation × Impact): delegated to
sow-spec-reviewer Risks Completeness section.
Implementation table must declare Depends. Empty Depends blocks parallel
scheduling judgment.
| Finding | Priority | | ------------------------------------------------ | -------- | | Phase Depends column empty | P1 |
With YAGNI Checklist: verify Spec excludes checked items. Flag over-engineering.
SOW In Scope and Out of Scope must not overlap. ACs must target only In Scope.
| Finding | Priority |
| --------------------------------------------------- | -------- |
| In Scope target also listed in Out of Scope | P0 |
| AC references a target absent from In Scope | P1 |
| Out of Scope lacks Why not justification | P2 |
Markdown appended to reviewer findings:
## Consistency Findings
| ID | Priority | Check | Location | CC Impact | Fix |
| ------- | -------- | ---------- | -------------------------------- | -------------------------------- | ------------------------------------ |
| CON-001 | P0/P1/P2 | check name | sow.md:section / spec.md:section | What CC will do when it reads this | Concrete rewrite, not "clarify this" |
Finding format and Gate contribution: see formatting-audits.
tools
Internal helper for /think Step 11. Renders SOW.md + Spec.md as an integrated Astro view and returns a dev server URL.
development
Extract repository spec while detecting bugs, spec gaps, and consistency drift via dual-purpose documentation. OUTCOME.md-axis question-driven exploration with ephemeral output. Do NOT use for code review (use /audit or /polish), feature implementation (use /code), planning only (use /think), or single-bug fix (use /fix).
development
Discover undocumented design decisions and challenge each candidate via critic-design before promotion. Rank by impact and reversibility, produce ADR promotion candidates. Treat each candidate as a position arguing for ADR status, not a fact to be filed. Pairs with audit-adr-drift, which scans existing ADRs for drift against code.
development
Scan ADR Decision sections against current code and report drift with modification direction and priority. Do NOT use for repos without ADRs (use audit-adr-gaps instead).