gate-build
Runs configured build and test commands in tiered order. Captures output as evidence per tier. Returns PASS, FAIL, WARN, or SKIP…
Maps every acceptance criterion from the spec to implementation evidence and test evidence. Criteria without evidence fail. The ultimate quality gate. Internal — invoked by verify.
Claude Code
$ npx -y skills add Obsidian-Owl/specwright --skill gate-spec --agent claude-code
Codex
$ npx skills add Obsidian-Owl/specwright --skill gate-spec -a codex -y
Cursor
$ npx skills add Obsidian-Owl/specwright --skill gate-spec -a cursor -y
Gemini CLI
$ npx skills add Obsidian-Owl/specwright --skill gate-spec -a gemini-cli -y
GitHub Copilot
$ npx skills add Obsidian-Owl/specwright --skill gate-spec -a github-copilot -y
OpenCode
$ npx skills add Obsidian-Owl/specwright --skill gate-spec -a opencode -y
Windsurf
$ npx skills add Obsidian-Owl/specwright --skill gate-spec -a windsurf -y
name: gate-spec description: >- Maps every acceptance criterion from the spec to implementation evidence and test evidence. Criteria without evidence fail. The ultimate quality gate. Internal — invoked by verify. allowed-tools: - Read - Bash - Glob - Grep - Write - Task
Prove that the implementation actually does what was asked for. Every acceptance criterion in the spec must map to implementation evidence (file:line) and test evidence (test name at file:line). This is the gate that closes the loop.
downstream `review-packet.md` synthesis summarizes or references
**Criteria extraction (LOW freedom):**
criteria (IC-B{n} entries) from `integration-criteria.md` in the design-level directory. IC-B entries are added to the compliance matrix alongside ACs. When not on the final work unit, when `integration-criteria.md` does not exist, or when `integration-criteria.md` has no IC-B entries, gate-spec operates exactly as before — no behavioral IC mapping.
**Evidence mapping (HIGH freedom):**
premises from the spec and code, derive claims from those premises, and draw conclusions without adding uncited evidence.
**Verdict (LOW freedom):**
IC-B without test evidence = FAIL (gate-spec's standard verdict vocabulary). Note: gate-spec FAIL for IC-Bs and deliverable verification BLOCK for IC-Bs are complementary — gate-spec reports the finding within its standard framework, deliverable verification enforces the action. gate-spec runs first (as part of the 6 standard gates); deliverable verification runs after all gates.
**Compliance matrix format:**
| # | Criterion | Implementation | Test | Status | |---|-----------|---------------|------|--------| | AC-1 | Description | file:line | test_name at file:line | PASS |
**Matrix stability (LOW freedom):** Preserve the five-column compliance matrix shape above. `sw-verify` may digest or quote it in `review-packet.md`, but gate-spec remains the canonical proof surface for AC / IC conformance.
| Condition | Action | |-----------|--------| | No spec.md found | Gate ERROR: "No spec found for this work unit" | | No acceptance criteria in spec | Gate ERROR: "Spec has no acceptance criteria" | | Implementation exists but tests don't | WARN per criterion, gate WARN overall | | Can't determine mapping with confidence | FAIL the criterion. Don't guess. |
Craft quality software with AI discipline. Spec-driven development plugin for Claude Code and Opencode — quality gates, adversarial testing, and evidence capture.
Runs configured build and test commands in tiered order. Captures output as evidence per tier. Returns PASS, FAIL, WARN, or SKIP…
Detects leaked secrets, injection patterns, and sensitive data exposure across changed files. Uses real tooling when configured,…
Tiered semantic analysis of changed code (rg → ast-grep → OpenGrep). Detects error-path bugs structural gates miss. Findings…
Audits test quality — assertion strength, boundary coverage, mock discipline, error path testing. Delegates to the tester agent…
Detects unused exports, orphaned files, architecture layer violations, and circular dependencies across changed files. Delegates…
Explicitly adopt an existing work into the current worktree after validating live ownership, stale sessions, and branch…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.