关于 qa-checklist
qa-checklist 是面向开发团队的提交与生产部署前质量检查技能,按阶段执行构建、测试、受保护文件、环境及安全核验,并生成 QA 报告。
主要功能
- 01提交与部署触发检查
- 02构建和测试验证
- 03受保护文件变更检查
- 04部署区域与健康状态核验
- 05安全检查与 QA 报告
适用场景
- 01提交代码前运行质量门禁
- 02生产部署前核验环境和安全
- 03检查受保护目录是否被修改
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ svenja-dev/ claude-code-skills --skill qa-checklist安装后在 Claude Code 中输入/qa-checklist确认已加载。
详细介绍
QA 检查清单
每次合并/部署前的正式质量保证检查清单
触发条件
此技能会在以下情况自动激活:
git commit(生产代码变更后)- 部署命令(
vercel --prod、npm run deploy等) /qa命令- 触发词:“merge”“deploy”“release”“production”
配置
根据你的项目自定义这些值:
# Add to your project's CLAUDE.md or settings
no_touch_zones:
- "src/auth/**" # Authentication logic
- "src/core/**" # Core business logic
- "config/production.*" # Production config
required_region: "your-region" # e.g., fra1, us-east-1
deploy_timeout: 60 # seconds
阶段 1:构建验证(阻断性)
1.1 TypeScript 编译
npx tsc --noEmit
预期: 无错误
| 状态 | 操作 |
|---|---|
| 通过 | 继续执行 1.2 |
| 失败 | 停止——修复类型错误 |
1.2 生产构建
npm run build
预期: 构建成功,无警告
| 状态 | 操作 |
|---|---|
| 通过 | 继续执行阶段 2 |
| 失败 | 停止——修复构建错误 |
阶段 2:测试套件(阻断性)
2.1 单元测试
npm run test
预期: 所有测试通过
2.2 E2E 测试(可选,但建议执行)
npm run test:e2e
预期: 关键流程正常运行
阶段 3:禁止触碰区域检查(阻断性)
检查是否修改了受保护文件:
# Replace with your no-touch zones
git diff --name-only HEAD~1 | grep -E "(auth|core|production)"
预期: 无匹配项(或已获得明确批准)
| 文件模式 | 是否允许修改? |
|---|---|
**/auth/** | 仅限明确请求时 |
**/core/** | 仅限明确请求时 |
config/production.* | 仅限明确请求时 |
阶段 4:区域/环境检查(部署时为阻断性)
4.1 生产部署前
验证部署目标是否符合要求:
# Vercel example
npx vercel inspect <preview-url> --wait
# AWS example
aws configure get region
# Check environment
echo $NODE_ENV
预期: 区域/环境正确
4.2 生产部署后
# Verify production deployment
curl -s -o /dev/null -w "%{http_code}" https://your-domain.com/health
预期: 200 OK
阶段 5:安全审查(警告)
5.1 代码中没有密钥
git diff HEAD~1 | grep -iE "(password|secret|api_key|token|private_key)" | grep -v "process\.env\|\.env\|example"
预期: 无匹配项
5.2 没有不安全类型
# TypeScript: Check for untyped any
git diff HEAD~1 --name-only -- "*.ts" "*.tsx" | xargs grep -l ": any" 2>/dev/null
预期: 没有新增 any 类型(或已记录原因)
5.3 依赖项检查
npm audit --production
预期: 没有高危/严重漏洞
阶段 6:QA 报告
完成所有检查后,生成报告:
## QA Validation Report
**Date:** [ISO Timestamp]
**Branch:** [Branch Name]
**Commit:** [Commit Hash]
### Results
| Check | Status | Details |
|-------|--------|---------|
| TypeScript | PASS/FAIL | [Error count] |
| Build | PASS/FAIL | [Build time] |
| Unit Tests | PASS/FAIL | [X/Y passed] |
| E2E Tests | PASS/FAIL/SKIP | [X/Y passed] |
| No-Touch Zones | PASS/FAIL | [Affected files] |
| Region | PASS/FAIL/N/A | [Current region] |
| Security | PASS/WARN | [Issues found] |
### Verdict
**Status:** APPROVED / REJECTED
**Next Steps:**
- [If APPROVED: Merge/Deploy allowed]
- [If REJECTED: List of issues to fix]
工作流集成
每次提交前
- 执行阶段 1-3
- 通过:允许提交
- 失败:修复问题后重新执行
生产部署前
- 执行阶段 1-5
- 通过:允许部署
- 失败:修复问题后重新执行
- 部署后:执行阶段 4.2(验证)
QA 循环(最多 3 次迭代)
1. Run checks
2. On failure: Implement fix
3. Return to step 1
4. After 3 iterations: Escalate to user
与其他技能集成
- code-quality-gate:可配合使用,进行全面检查
- strict-typescript-mode:自动执行阶段 5.2
- security-scan hook:自动执行阶段 5.1
来源
最初为 fabrikIQ 开发,用于 AI 驱动的制造业数据分析。
许可证
MIT——可免费使用和修改
评论
支持 Markdown