本文へ移動
cccskills
無料GitHub で公開

acceptance-criteria-verification

Use after implementing features - verifies each acceptance criterion with structured testing and posts verification reports to the GitHub issue

インストール方法を見る

含まれるファイル(1)

  • SKILL.md5.6 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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:

# 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:

CriterionTest TypeHow to Verify
[Criterion 1]Unit testRun specific test
[Criterion 2]IntegrationAPI call + response check
[Criterion 3]E2EBrowser automation
[Criterion 4]ManualVisual inspection

Step 3: Execute Verification

For each criterion, run the appropriate verification:

Unit/Integration Tests

# Run specific tests
pnpm test --grep "[test pattern]"

# Or run test file
pnpm test path/to/specific.test.ts

E2E Tests

# 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:

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:

# 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

# 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

StatusMeaningAction
PASSCriterion fully met, verified workingCheck off in issue
FAILCriterion not met, requires fixDocument what failed, return to development
PARTIALWorks with issues, needs improvementDocument issues, may need fix
SKIPCould 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
// 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 ResultNext Action
All PASSProceed to code review
Any FAILReturn to development, fix, re-verify
Partial onlyDiscuss 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 comments

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Master backend architectures, REST API design, microservices, and server-side development across multiple languages. Use this as a central index to access specialized sub-skills.

日本語の概要は準備中です。原文の説明を表示しています。

MikeCheng1208/BattleTree22026年7月22日 更新

在每次回复中使用固定前缀并列出本次实际参考的指令/文件,便于校验是否遵循上下文与规则。

日本語の概要は準備中です。原文の説明を表示しています。

MikeCheng1208/BattleTree22026年7月22日 更新

Automate 21risk tasks via Rube MCP (Composio). Always search tools first for current schemas.

日本語の概要は準備中です。原文の説明を表示しています。

MikeCheng1208/BattleTree22026年7月22日 更新

Automate 2chat tasks via Rube MCP (Composio). Always search tools first for current schemas.

日本語の概要は準備中です。原文の説明を表示しています。

MikeCheng1208/BattleTree22026年7月22日 更新

Arquitecto de Soluciones Principal y Consultor Tecnológico de Andru.ia. Diagnostica y traza la hoja de ruta óptima para proyectos de IA en español.

日本語の概要は準備中です。原文の説明を表示しています。

MikeCheng1208/BattleTree22026年7月22日 更新

[00] META. Orchestrate skills into dynamic chains for complex tasks. Analyzes the task, discovers available skills, builds an optimal chain, explains why each skill is needed, and executes step-by-step with user confirmation. Use for any complex task requiring multiple thinking/research/analysis steps. Triggers on "plan this", "how to approach", "what's the strategy", "build a plan", or any multi-step problem requiring skill orchestration.

日本語の概要は準備中です。原文の説明を表示しています。

MikeCheng1208/BattleTree22026年7月22日 更新

MikeCheng1208 のスキルをすべて見る

このスキルの問題を報告する