Skill v1.0.1
currentAutomated scan100/100+2 new
version: "1.0.1" name: qa-phase classification: workflow classification-reason: QA phase automation within PDCA cycle deprecation-risk: none effort: high description: | QA Phase execution — L1-L5 test planning, generation, execution, and reporting for a single feature. For sprint-level QA (7-Layer dataFlowIntegrity / S1 gate across multiple features) use /sprint qa <sprintId> which delegates to sprint-qa-flow agent (v2.1.13). Triggers: qa phase, QA test, qa run, QA 실행, QAフェーズ, QA阶段, fase QA, phase QA, QA-Phase, fase QA. argument-hint: "[feature]" user-invocable: true agents: lead: bkit:qa-lead planner: bkit:qa-test-planner generator: bkit:qa-test-generator debug: bkit:qa-debug-analyst monitor: bkit:qa-monitor default: bkit:qa-lead allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- Bash
- Task
- AskUserQuestion
imports:
- ${PLUGIN_ROOT}/templates/qa-report.template.md
- ${PLUGIN_ROOT}/templates/qa-test-plan.template.md
next-skill: pdca pdca-phase: qa task-template: "[QA] {feature}"
QA Phase Skill
Execute QA phase of the PDCA cycle. Automatically runs L1-L5 tests with Chrome MCP integration.
Arguments
| Argument | Description | Example | |
|---|---|---|---|
[feature] | Target feature to test | /qa-phase user-auth |
Workflow
- Context: Read design doc and Check phase analysis
- Plan: Generate test plan (L1-L5 items with priorities)
- Generate: Create test code files
- Execute: Run L1-L5 tests (L3-L5 require Chrome MCP)
- Report: Generate QA report to
docs/05-qa/{feature}.qa-report.md
PRE-SCAN: Pre-Release Quality Check
Before running L1 tests, execute the automated quality scanners to catch structural issues early.
Steps
- Run
scripts/qa/pre-release-check.shvia Bash - Parse the output for CRITICAL / WARNING / INFO counts
- If CRITICAL issues found:
- Report all CRITICAL issues with file paths and suggested fixes
- Recommend fixing CRITICAL issues before proceeding with L1-L5 tests
- Use AskUserQuestion to ask whether to continue or abort the QA phase
(e.g. options: "Fix CRITICAL first" / "Continue anyway" / "Abort QA"). This gate is issued directly here, in the main session context — qa-phase is deliberately not context: fork. AskUserQuestion is stripped at the fork sub-agent boundary (CC #34592 / #54892), so it must run in the main context and must not be delegated to a sub-agent (qa-lead, etc.).
- If only WARNING/INFO issues (no CRITICAL):
- Include scanner results in the QA report under "Pre-Release Scan" section
- Continue to L1 test planning
Scanner Coverage
| Scanner | Detects | Severity | |
|---|---|---|---|
| dead-code | Stale require/import, unused exports | CRITICAL / WARNING | |
| config-audit | Unreferenced config keys, hardcoded values, missing paths | CRITICAL / WARNING / INFO | |
| completeness | Missing agents, long descriptions, missing effort | CRITICAL / WARNING / INFO | |
| shell-escape | Bare $N in awk, unescaped backticks, unsafe heredocs | CRITICAL / WARNING |
QA Report Integration
When scanner results are available, include them in the QA report:
## Pre-Release Scan Results-**Scanner**: dead-code — 0 CRITICAL, 1 WARNING, 0 INFO-**Scanner**: config-audit — 0 CRITICAL, 0 WARNING, 2 INFO-**Scanner**: completeness — 0 CRITICAL, 0 WARNING, 1 INFO-**Scanner**: shell-escape — 0 CRITICAL, 0 WARNING, 0 INFO**Overall**: PASS (0 CRITICAL issues)
Test Levels
| Level | Type | Tool | Chrome Required | |
|---|---|---|---|---|
| L1 | Unit Test | Node.js / Jest / Vitest | No | |
| L2 | API Test | fetch / curl | No | |
| L3 | E2E Test | Chrome MCP | Yes | |
| L4 | UX Flow Test | Chrome MCP | Yes | |
| L5 | Data Flow Test | Chrome MCP + Bash | Yes |
Fallback
Chrome MCP unavailable:
- L1 + L2 only
- QA report notes "L3-L5 skipped"
- QA pass/fail based on L1+L2 results only