qa-checklist について
qa-checklistは、開発チーム向けのマージ・本番デプロイ前のQAスキルです。ビルド、テスト、保護対象ファイル、環境、セキュリティを段階的に確認し、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
期待される結果: エラーなし
| ステータス | アクション |
|---|---|
| PASS | 1.2 に進みます |
| FAIL | 停止 — 型エラーを修正します |
1.2 本番ビルド
npm run build
期待される結果: ビルド成功、警告なし
| ステータス | アクション |
|---|---|
| PASS | フェーズ 2 に進みます |
| FAIL | 停止 — ビルドエラーを修正します |
フェーズ 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 を実行します
- PASS の場合:コミットが許可されます
- FAIL の場合:問題を修正し、再実行します
本番デプロイ前
- フェーズ 1~5 を実行します
- PASS の場合:デプロイが許可されます
- FAIL の場合:問題を修正し、再実行します
- デプロイ後:フェーズ 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 対応