acceptance-criteria-verification
Use after implementing features - verifies each acceptance criterion with structured testing and posts verification reports to the GitHub issue
Best use case
acceptance-criteria-verification is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Use after implementing features - verifies each acceptance criterion with structured testing and posts verification reports to the GitHub issue
Teams using acceptance-criteria-verification should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/acceptance-criteria-verification/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How acceptance-criteria-verification Compares
| Feature / Agent | acceptance-criteria-verification | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Use after implementing features - verifies each acceptance criterion with structured testing and posts verification reports to the GitHub issue
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Acceptance Criteria Verification
## Overview
Systematically verify each acceptance criterion and post structured reports.
**Core principle:** Every criterion verified. Every verification documented.
**Announce at start:** "I'm using acceptance-criteria-verification to verify the implementation."
## The Verification Process
### Step 1: Extract Criteria
Read the issue and extract all acceptance criteria:
```bash
# Get issue body
gh issue view [ISSUE_NUMBER] --json body -q '.body'
```
Parse out criteria (look for `- [ ]` or `- [x]` patterns in acceptance criteria section).
### Step 2: Plan Verification
For each criterion, determine:
| Criterion | Test Type | How to Verify |
|-----------|-----------|---------------|
| [Criterion 1] | Unit test | Run specific test |
| [Criterion 2] | Integration | API call + response check |
| [Criterion 3] | E2E | Browser automation |
| [Criterion 4] | Manual | Visual inspection |
### Step 3: Execute Verification
For each criterion, run the appropriate verification:
#### Unit/Integration Tests
```bash
# Run specific tests
pnpm test --grep "[test pattern]"
# Or run test file
pnpm test path/to/specific.test.ts
```
#### E2E Tests
```bash
# If using Playwright
npx playwright test [test file]
# If using browser automation MCP
# Use mcp__playwright or mcp__puppeteer
```
#### Manual Verification
For criteria requiring visual or interactive verification:
1. Start the application
2. Navigate to relevant area
3. Perform the action
4. Capture screenshot if relevant
5. Document result
### Step 4: Record Results
For each criterion, record:
```
Criterion: [Text from issue]
Status: PASS | FAIL | PARTIAL | SKIP
Evidence: [Test output, screenshot, observation]
Notes: [Any relevant details]
```
### Step 5: Post Verification Report
Post a structured comment to the issue:
```bash
gh issue comment [ISSUE_NUMBER] --body "## Verification Report
**Run**: $(date -u +%Y-%m-%dT%H:%M:%SZ)
**By**: agent
**Commit**: $(git rev-parse --short HEAD)
**Branch**: $(git branch --show-current)
### Results
| # | Criterion | Status | Notes |
|---|-----------|--------|-------|
| 1 | [Criterion text] | PASS | [Notes] |
| 2 | [Criterion text] | FAIL | [What failed] |
| 3 | [Criterion text] | PARTIAL | [What works, what doesn't] |
### Summary
| Status | Count |
|--------|-------|
| PASS | X |
| FAIL | X |
| PARTIAL | X |
| SKIP | X |
| **Total** | **X** |
### Test Output
<details>
<summary>Test Results</summary>
\`\`\`
[test output here]
\`\`\`
</details>
### Next Steps
- [ ] [Action items for failures/partials]
"
```
### Step 6: Update Issue Checkboxes
For each passing criterion, check it off in the issue body:
```bash
# Get current body
BODY=$(gh issue view [ISSUE_NUMBER] --json body -q '.body')
# Update checkboxes for passing criteria
# (Implementation depends on body format)
# Update issue
gh issue edit [ISSUE_NUMBER] --body "$NEW_BODY"
```
### Step 7: Update Project Fields
```bash
# Update project fields using project-status-sync skill
# Verification status
# - All PASS → Passing
# - Any FAIL → Failing
# - Mix of PASS/PARTIAL → Partial
# Criteria Met count
# - Count of PASS criteria
# Last Verified
# - Current date
# Verified By
# - "agent"
```
## Status Definitions
| Status | Meaning | Action |
|--------|---------|--------|
| **PASS** | Criterion fully met, verified working | Check off in issue |
| **FAIL** | Criterion not met, requires fix | Document what failed, return to development |
| **PARTIAL** | Works with issues, needs improvement | Document issues, may need fix |
| **SKIP** | Could not verify (blocked, N/A, etc.) | Document reason |
## E2E Verification Best Practices
When using browser automation:
1. **Start fresh** - New browser session for each verification
2. **Capture evidence** - Screenshots at key points
3. **Check visible state** - Not just DOM, but visible rendering
4. **Test error cases** - Not just happy path
5. **Clean up** - Close sessions after verification
```javascript
// Example verification flow (pseudo-code)
await page.goto(appUrl);
await page.click('[data-testid="new-chat"]');
await page.waitForSelector('[data-testid="chat-input"]');
await page.screenshot({ path: 'new-chat-verification.png' });
// Verify expected state
const title = await page.title();
expect(title).toContain('New Chat');
```
## Handling Failures
When criteria fail:
1. **Document specifically** what failed
2. **Include reproduction steps** if not obvious
3. **Capture error messages** or screenshots
4. **Return to development** to fix
5. **Re-run verification** after fix
Do NOT:
- Mark as PASS when it failed
- Skip verification because "it should work"
- Ignore intermittent failures
## Verification Checklist
Before completing verification:
- [ ] All acceptance criteria evaluated
- [ ] Each criterion has clear PASS/FAIL/PARTIAL/SKIP status
- [ ] Evidence captured for each (test output, screenshots)
- [ ] Verification report posted to issue
- [ ] Issue checkboxes updated for passing criteria
- [ ] Project fields updated
- [ ] If any failures, next steps documented
## After Verification
Based on results:
| Overall Result | Next Action |
|----------------|-------------|
| All PASS | Proceed to code review |
| Any FAIL | Return to development, fix, re-verify |
| Partial only | Discuss with user - acceptable or needs fix? |
## Integration
This skill is called by:
- `issue-driven-development` - Step 8
This skill calls:
- `project-status-sync` - Update verification fields
- `issue-lifecycle` - Post commentsRelated Skills
acceptance-criteria
受け入れ基準書を作成する。検収基準、完了条件の定義時に使う。
Verification & Quality Assurance
Comprehensive truth scoring, code quality verification, and automatic rollback system with 0.95 accuracy threshold for ensuring high-quality agent outputs and codebase reliability.
android-qa-verification
This skill is used to verify Android features against acceptance criteria, catch regressions and define tests that reflect real device behaviour.
agent-ops-article-verification
Systematically deconstruct written content into verifiable claims, validate each using search/documentation, and facilitate informed discussion through structured interviewing.
bgo
Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.
mcp-create-declarative-agent
Skill converted from mcp-create-declarative-agent.prompt.md
MCP Architecture Expert
Design and implement Model Context Protocol servers for standardized AI-to-data integration with resources, tools, prompts, and security best practices
mathem-shopping
Automatiserar att logga in på Mathem.se, söka och lägga till varor från en lista eller recept, hantera ersättningar enligt policy och reservera leveranstid, men lämnar varukorgen redo för manuell checkout.
math-modeling
本技能应在用户要求"数学建模"、"建模比赛"、"数模论文"、"数学建模竞赛"、"建模分析"、"建模求解"或提及数学建模相关任务时使用。适用于全国大学生数学建模竞赛(CUMCM)、美国大学生数学建模竞赛(MCM/ICM)等各类数学建模比赛。
matchms
Mass spectrometry analysis. Process mzML/MGF/MSP, spectral similarity (cosine, modified cosine), metadata harmonization, compound ID, for metabolomics and MS data processing.
managing-traefik
Manages Traefik reverse proxy for local development. Use when routing domains to local services, configuring CORS, checking service health, or debugging connectivity issues.
managing-skills
Install, find, update, and manage agent skills. Use when the user wants to add a new skill, search for skills that do something, check if skills are up to date, or update existing skills. Triggers on: install skill, add skill, get skill, find skill, search skill, update skill, check skills, list skills.