136 lines
4.6 KiB
Markdown
136 lines
4.6 KiB
Markdown
---
|
||
argument-hint: <taskname> <phase番号>
|
||
---
|
||
|
||
# Phase要件と実装の整合性検証
|
||
|
||
指定したPhaseの実装が仕様書の要件を満たしているか、Phase間の整合性が保たれているかを検証します。
|
||
|
||
【引数】
|
||
$ARGUMENTS
|
||
|
||
## 引数の形式
|
||
- `<taskname>` - タスク名(specs/[taskname]/ディレクトリ)
|
||
- `<phase番号>` - 検証対象のPhase番号(1, 2, 3...)
|
||
|
||
## 検証手順
|
||
|
||
### 1. 準備
|
||
- 引数の解析(未指定の場合はAskUserQuestionで確認)
|
||
- `specs/[taskname]/tasks/phase{N}-*.md` の存在確認
|
||
|
||
### 2. specification.mdとの整合性
|
||
|
||
#### 機能要件
|
||
- Phase計画書の「実装する機能」リストを抽出
|
||
- 各機能のファイルをGlobで検索し、実装状況を確認
|
||
- 関数・クラスの存在、パラメータ・戻り値、エラーハンドリングをコードレビュー
|
||
|
||
#### 非機能要件
|
||
specification.mdの非機能要件(パフォーマンス、セキュリティ、可用性等)について:
|
||
- 関連キーワードでGrep検索
|
||
- 実装ファイル内の対応を確認
|
||
|
||
### 3. technical-details.mdとの整合性
|
||
|
||
#### 技術スタック
|
||
- 記載された技術・ライブラリの使用確認(Grepでimport文を検索)
|
||
- package.jsonとの整合性確認
|
||
|
||
#### データ設計(型定義、スキーマ等)
|
||
- Grepで型名を検索し存在確認
|
||
- データ構造の一致を確認
|
||
|
||
#### API設計
|
||
- エンドポイントの実装確認(ルーティングファイル検索)
|
||
- リクエスト・レスポンス形式の一致確認
|
||
|
||
### 4. Phase間の実装整合性(Phase 2以降のみ)
|
||
|
||
#### 前Phaseの成果物
|
||
- 前Phase計画書の「次Phaseへの引き継ぎ事項」から成果物リストを抽出
|
||
- Globで各成果物ファイルの存在を確認
|
||
- ファイル内容の簡易チェック
|
||
|
||
#### 前Phaseの成果物の使用状況
|
||
- 現Phase実装での前Phase成果物のimportを確認(Grepで検索)
|
||
- 主要な関数・型・クラスの使用箇所を確認
|
||
|
||
#### Phase間インターフェース
|
||
- 前Phaseのexport定義を確認(Grepで`export`検索)
|
||
- 現Phaseでの使用方法との整合性確認
|
||
|
||
### 5. 機能レベルの実装検証
|
||
|
||
specification.mdの各機能について:
|
||
- 実装ファイルを特定・読み込み
|
||
- コードレビュー:関数・クラスの存在、シグネチャ、ビジネスロジック
|
||
- エッジケース・例外処理の実装確認
|
||
- テストファイルの存在確認
|
||
|
||
### 6. 検証結果レポート
|
||
|
||
```markdown
|
||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||
📐 Phase {N} 要件検証レポート
|
||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||
|
||
📍 specs/{taskname}/ - Phase {N}
|
||
📅 {YYYY-MM-DD HH:MM}
|
||
|
||
## 総合評価
|
||
{✅ / ⚠️ / ❌}
|
||
|
||
## 検証結果
|
||
|
||
### 機能要件
|
||
{✅/⚠️/❌} {implemented}/{total} 機能
|
||
|
||
### 非機能要件
|
||
{✅/⚠️/❌/N/A}
|
||
|
||
### technical-details.md整合性
|
||
- 技術スタック: {✅/⚠️/❌}
|
||
- データ設計: {✅/⚠️/❌/N/A}
|
||
- API設計: {✅/⚠️/❌/N/A}
|
||
|
||
### Phase間実装整合性
|
||
- 前Phase成果物の存在: {✅/⚠️/❌/N/A}
|
||
- 前Phase成果物の使用: {✅/⚠️/❌/N/A}
|
||
- インターフェース整合性: {✅/⚠️/❌/N/A}
|
||
|
||
### 実装品質
|
||
- 実装詳細: {✅/⚠️/❌}
|
||
- エッジケース・例外処理: {✅/⚠️/❌}
|
||
|
||
## 🚨 要対応項目
|
||
{問題のリスト(ファイルパス:行番号を含む)}
|
||
|
||
## 💡 次のアクション
|
||
✅: `/sdd:verify:quality {taskname} {N}` で品質検証へ
|
||
⚠️/❌: 問題解決後、再検証(`/sdd:verify:requirements {taskname} {N}`)
|
||
|
||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||
```
|
||
|
||
### 7. 問題への対応(⚠️/❌の場合)
|
||
|
||
AskUserQuestionで各問題の対応方針を確認(最大4問/回):
|
||
- 選択肢に「実装する」「仕様を見直す」「対応しない」等を含める
|
||
- 選択後、TodoWriteでタスク作成
|
||
|
||
## 注意事項
|
||
|
||
- 仕様書と実装の整合性を検証
|
||
- 機能レベルの実装検証を実施(コードレビュー)
|
||
- Phase間の成果物の存在と使用状況を確認
|
||
|
||
## 矛盾チェック(必須)
|
||
|
||
要件検証後、仕様書とコードの整合性を必ず contradiction-checker SubAgent を使用して確認してください:
|
||
|
||
```bash
|
||
# contradiction-checker SubAgentを使用(指摘のみ、修正は行わない)
|
||
Task(contradiction-checker): specs/[taskname]/ の全ドキュメント間の矛盾をチェックしてください。実装が仕様書と整合しているか確認してください。
|
||
```
|