name: release-check description: デプロイ前の最終チェックリストを実行し、Go/No-go 判定を出す PM スキル。テスト・CI・open Issue・セキュリティの観点で確認し、問題があれば具体的な対処手順を提示する。/release-check コマンド実行時に自動参照される。 user-invocable: false
release-check スキル
目的
リリース(main への merge / deploy)前に、デプロイして安全かどうかを確認する。 問題があれば具体的な対処手順を提示し、人間が最終判断を行う。
入力
- リリース対象ブランチ名(省略時: 現在のブランチ)
- 対象マイルストーン名(省略可)
出力
- Go / No-go 判定レポート
- 各チェック項目の結果
- 問題がある場合の対処手順
チェックリスト
1. テスト
pytest lambda/ -v --tb=short
# → 全テスト PASSED であること
cd frontend && npx tsc --noEmit
# → 型エラー 0 件であること
2. CI/CD 状態
gh run list --limit 5 --json status,conclusion,name,headBranch
# → 直近のCIが PASSED または SKIPPED であること
3. open Issue の確認
gh issue list --milestone "<マイルストーン名>" --state open --json number,title
# → スプリントの必須 Issue がすべてクローズされているか
4. セキュリティ
# user_id バリデーション確認
grep -rn "user_id" lambda/ --include="*.py" | grep -v "UUID_RE\|validate\|test_"
# シークレットハードコード確認
grep -rn "AKIA\|ghp_\|sk-" lambda/ frontend/src/ --include="*.py" --include="*.ts" --include="*.tsx"
5. Terraform 確認(インフラ変更がある場合)
docker compose -f docker-compose.terraform.yml run --rm terraform \
-chdir=terraform/envs/prod validate
docker compose -f docker-compose.terraform.yml run --rm terraform \
-chdir=terraform/envs/prod plan -var='lambda_s3_keys={"create_record":"placeholder"}'
出力フォーマット
## リリースチェック: YYYY-MM-DD
### 判定: ✅ GO / ❌ NO-GO
| チェック項目 | 結果 | 詳細 |
|------------|------|------|
| pytest 全通過 | ✅ | 42 tests passed |
| TypeScript 型エラー | ✅ | 0 errors |
| CI 最新実行 | ✅ | 3/3 passed |
| open Issue(必須) | ✅ | 0件残り |
| セキュリティスキャン | ✅ | 問題なし |
| Terraform validate | ✅ | 問題なし |
### NO-GO の場合の対処手順
(問題があれば具体的な手順を記載)
禁止事項
- デプロイの実行(人間のみ可)
- NO-GO 状態での承認
terraform applyの実行(CLAUDE.md 禁止事項)