$npx -y skills add Svenja-dev/claude-code-skills --skill qa-checklistFormal Quality Assurance Checklist before every Merge/Deploy. 6-phase validation with Build Verification, Test Suite, No-Touch Zones, Region Check, Security Review, and QA Report generation. Activate on "merge", "deploy", "release", "production", or /qa command.
| 1 | # QA Checklist |
| 2 | |
| 3 | > Formal Quality Assurance Checklist before every Merge/Deploy |
| 4 | |
| 5 | ## Trigger |
| 6 | |
| 7 | This skill activates automatically on: |
| 8 | |
| 9 | - `git commit` (after production code changes) |
| 10 | - Deploy commands (`vercel --prod`, `npm run deploy`, etc.) |
| 11 | - `/qa` command |
| 12 | - Trigger words: "merge", "deploy", "release", "production" |
| 13 | |
| 14 | --- |
| 15 | |
| 16 | ## Configuration |
| 17 | |
| 18 | Customize these values for your project: |
| 19 | |
| 20 | ```yaml |
| 21 | # Add to your project's CLAUDE.md or settings |
| 22 | no_touch_zones: |
| 23 | - "src/auth/**" # Authentication logic |
| 24 | - "src/core/**" # Core business logic |
| 25 | - "config/production.*" # Production config |
| 26 | |
| 27 | required_region: "your-region" # e.g., fra1, us-east-1 |
| 28 | deploy_timeout: 60 # seconds |
| 29 | ``` |
| 30 | |
| 31 | --- |
| 32 | |
| 33 | ## PHASE 1: Build Verification (BLOCKING) |
| 34 | |
| 35 | ### 1.1 TypeScript Compilation |
| 36 | |
| 37 | ```bash |
| 38 | npx tsc --noEmit |
| 39 | ``` |
| 40 | |
| 41 | **Expected:** No errors |
| 42 | |
| 43 | | Status | Action | |
| 44 | |--------|--------| |
| 45 | | PASS | Continue to 1.2 | |
| 46 | | FAIL | STOP - Fix type errors | |
| 47 | |
| 48 | ### 1.2 Production Build |
| 49 | |
| 50 | ```bash |
| 51 | npm run build |
| 52 | ``` |
| 53 | |
| 54 | **Expected:** Build successful, no warnings |
| 55 | |
| 56 | | Status | Action | |
| 57 | |--------|--------| |
| 58 | | PASS | Continue to Phase 2 | |
| 59 | | FAIL | STOP - Fix build errors | |
| 60 | |
| 61 | --- |
| 62 | |
| 63 | ## PHASE 2: Test Suite (BLOCKING) |
| 64 | |
| 65 | ### 2.1 Unit Tests |
| 66 | |
| 67 | ```bash |
| 68 | npm run test |
| 69 | ``` |
| 70 | |
| 71 | **Expected:** All tests green |
| 72 | |
| 73 | ### 2.2 E2E Tests (optional but recommended) |
| 74 | |
| 75 | ```bash |
| 76 | npm run test:e2e |
| 77 | ``` |
| 78 | |
| 79 | **Expected:** Critical flows working |
| 80 | |
| 81 | --- |
| 82 | |
| 83 | ## PHASE 3: No-Touch Zones Check (BLOCKING) |
| 84 | |
| 85 | Check if protected files were modified: |
| 86 | |
| 87 | ```bash |
| 88 | # Replace with your no-touch zones |
| 89 | git diff --name-only HEAD~1 | grep -E "(auth|core|production)" |
| 90 | ``` |
| 91 | |
| 92 | **Expected:** No matches (or explicit approval present) |
| 93 | |
| 94 | | File Pattern | Modification Allowed? | |
| 95 | |--------------|----------------------| |
| 96 | | `**/auth/**` | ONLY with explicit request | |
| 97 | | `**/core/**` | ONLY with explicit request | |
| 98 | | `config/production.*` | ONLY with explicit request | |
| 99 | |
| 100 | --- |
| 101 | |
| 102 | ## PHASE 4: Region/Environment Check (BLOCKING on Deploy) |
| 103 | |
| 104 | ### 4.1 Before Production Deploy |
| 105 | |
| 106 | Verify deployment target matches requirements: |
| 107 | |
| 108 | ```bash |
| 109 | # Vercel example |
| 110 | npx vercel inspect <preview-url> --wait |
| 111 | |
| 112 | # AWS example |
| 113 | aws configure get region |
| 114 | |
| 115 | # Check environment |
| 116 | echo $NODE_ENV |
| 117 | ``` |
| 118 | |
| 119 | **Expected:** Correct region/environment |
| 120 | |
| 121 | ### 4.2 After Production Deploy |
| 122 | |
| 123 | ```bash |
| 124 | # Verify production deployment |
| 125 | curl -s -o /dev/null -w "%{http_code}" https://your-domain.com/health |
| 126 | ``` |
| 127 | |
| 128 | **Expected:** 200 OK |
| 129 | |
| 130 | --- |
| 131 | |
| 132 | ## PHASE 5: Security Review (WARNING) |
| 133 | |
| 134 | ### 5.1 No Secrets in Code |
| 135 | |
| 136 | ```bash |
| 137 | git diff HEAD~1 | grep -iE "(password|secret|api_key|token|private_key)" | grep -v "process\.env\|\.env\|example" |
| 138 | ``` |
| 139 | |
| 140 | **Expected:** No matches |
| 141 | |
| 142 | ### 5.2 No Unsafe Types |
| 143 | |
| 144 | ```bash |
| 145 | # TypeScript: Check for untyped any |
| 146 | git diff HEAD~1 --name-only -- "*.ts" "*.tsx" | xargs grep -l ": any" 2>/dev/null |
| 147 | ``` |
| 148 | |
| 149 | **Expected:** No new `any` types (or documented reason) |
| 150 | |
| 151 | ### 5.3 Dependency Check |
| 152 | |
| 153 | ```bash |
| 154 | npm audit --production |
| 155 | ``` |
| 156 | |
| 157 | **Expected:** No high/critical vulnerabilities |
| 158 | |
| 159 | --- |
| 160 | |
| 161 | ## PHASE 6: QA Report |
| 162 | |
| 163 | After completing all checks, generate a report: |
| 164 | |
| 165 | ```markdown |
| 166 | ## QA Validation Report |
| 167 | |
| 168 | **Date:** [ISO Timestamp] |
| 169 | **Branch:** [Branch Name] |
| 170 | **Commit:** [Commit Hash] |
| 171 | |
| 172 | ### Results |
| 173 | |
| 174 | | Check | Status | Details | |
| 175 | |-------|--------|---------| |
| 176 | | TypeScript | PASS/FAIL | [Error count] | |
| 177 | | Build | PASS/FAIL | [Build time] | |
| 178 | | Unit Tests | PASS/FAIL | [X/Y passed] | |
| 179 | | E2E Tests | PASS/FAIL/SKIP | [X/Y passed] | |
| 180 | | No-Touch Zones | PASS/FAIL | [Affected files] | |
| 181 | | Region | PASS/FAIL/N/A | [Current region] | |
| 182 | | Security | PASS/WARN | [Issues found] | |
| 183 | |
| 184 | ### Verdict |
| 185 | |
| 186 | **Status:** APPROVED / REJECTED |
| 187 | |
| 188 | **Next Steps:** |
| 189 | - [If APPROVED: Merge/Deploy allowed] |
| 190 | - [If REJECTED: List of issues to fix] |
| 191 | ``` |
| 192 | |
| 193 | --- |
| 194 | |
| 195 | ## Workflow Integration |
| 196 | |
| 197 | ### Before Every Commit |
| 198 | |
| 199 | 1. Run Phase 1-3 |
| 200 | 2. On PASS: Commit allowed |
| 201 | 3. On FAIL: Fix issues, re-run |
| 202 | |
| 203 | ### Before Production Deploy |
| 204 | |
| 205 | 1. Run Phase 1-5 |
| 206 | 2. On PASS: Deploy allowed |
| 207 | 3. On FAIL: Fix issues, re-run |
| 208 | 4. After Deploy: Phase 4.2 (Verification) |
| 209 | |
| 210 | ### QA Loop (max 3 iterations) |
| 211 | |
| 212 | ``` |
| 213 | 1. Run checks |
| 214 | 2. On failure: Implement fix |
| 215 | 3. Return to step 1 |
| 216 | 4. After 3 iterations: Escalate to user |
| 217 | ``` |
| 218 | |
| 219 | --- |
| 220 | |
| 221 | ## Integration with Other Skills |
| 222 | |
| 223 | - **code-quality-gate**: Can be used together for comprehensive checks |
| 224 | - **strict-typescript-mode**: Enforces Phase 5.2 automatically |
| 225 | - **security-scan hook**: Automates Phase 5.1 |
| 226 | |
| 227 | --- |
| 228 | |
| 229 | ## Origin |
| 230 | |
| 231 | Originally developed for [fabrikIQ](https://fabrikiq.com) - AI-powered manufacturing data analysis. |
| 232 | |
| 233 | ## License |
| 234 | |
| 235 | MIT - Free to use and modify |