実装完了後にテスト・ビルド・リントの実行結果を確認するワークフロー正式ステップ。project.yamlのverificationセクションを更新する。「検証」「テスト実行」「ビルド確認」「verification」などのフレーズで発動。implementスキル完了後、code-review前に使用。
実装完了後の客観検証ステップ。テスト・ビルド・リント・型チェックを実行し結果を出力する。
| 入力 | 説明 |
|---|---|
| テスト戦略 | テスト種別スコープ(unit / integration / e2e) |
| 受け入れ基準 | 検証すべき基準一覧と検証手段の対応 |
| 対象コードベース | 対象ディレクトリのパス |
| 実装状況 | 実装完了の確認(未完了なら検証を開始しない) |
flowchart TD
A[入力情報の確認] --> B[実装完了を確認]
B --> B2[テスト戦略を確認]
B2 --> C[対象リポジトリのツール検出]
C --> D[単体テスト実行]
D --> D2{E2Eテストが<br/>テスト戦略に含まれる?}
D2 -->|Yes| D3[E2Eテスト実行]
D2 -->|No| E[ビルド確認]
D3 --> E[ビルド確認]
E --> F[リントチェック]
F --> G[型チェック]
G --> G2[受け入れ基準との照合]
G2 --> H{全て通過?}
H -->|✅ 全通過| I[検証完了]
H -->|❌ 失敗あり| J[検証失敗]
I --> K[検証結果を出力・コミット]
J --> K
K --> L{判定}
L -->|✅ 通過| M[次のステップへ進行]
L -->|❌ 失敗| N[修正が必要 → 実装に戻る]
テスト戦略で定義されたテスト種別を全て実行する:
⚠️ E2Eテストがスコープに含まれる場合は必ず実行すること。 スキップして検証完了にしてはならない。
📖 ツール検出・実行コマンドの詳細は references/tool-detection-commands.md を参照
E2Eテストを実行する前に、以下の環境確認を行う:
テスト戦略にE2Eが含まれているにも関わらずE2Eテストを実行せずに検証を完了とすることは CRITICAL error として扱う。
E2E環境が利用不可の場合の対応フロー:
1. 環境の問題点を具体的に特定する
2. ユーザーに以下のいずれかを提案する:
a) 環境準備の依頼(具体的な手順を提示)
b) テスト戦略の変更提案(E2Eの代替手段を含む)
3. ユーザーの判断を待つ(独断でスキップしない)
4. ユーザーが環境準備を選択 → 準備完了後にE2Eテストを実行
5. ユーザーがテスト戦略変更を承認 → 変更証跡を記録してからproject.yamlを更新して続行
🚫 エージェントが「環境制約のためE2Eをスキップ」と独断で判断することは禁止。 必ずユーザーに判断を仰ぎ、明示的な承認を得ること。
テスト戦略を変更する場合、以下の手順を全て実施すること:
ask_user ツールによる明示的な承認取得(必須)
ask_user で承認を得るask_user を経ずにテスト戦略を変更することは 禁止変更証跡を project.yaml に記録
verification.test_strategy_changes に以下を記録する: