# RPI Plan - 詳細計画策定フェーズ

## 目的
Research フェーズの結果を基に、実装の詳細計画を策定する。

## 使用方法
```
/rpi-plan
```

## 前提条件
- `/rpi-research` が完了し、GO判定が出ていること
- `rpi/research-{タスク名}.md` が存在すること

## 処理フロー

1. **Research結果の読み込み**
   - 最新の research ファイルを特定
   - 要件・制約・リスクを確認

2. **アーキテクチャ設計**
   - コンポーネント構成
   - データフロー
   - インターフェース定義
   - 既存コードへの統合方法

3. **タスク分解**
   - 実装を具体的なサブタスクに分割
   - 各サブタスクの目的・成果物を明確化
   - 担当ファイル・関数を特定

4. **実装順序と依存関係**
   - サブタスクの依存関係を明確化
   - 実装順序を決定
   - 並列実行可能なタスクを特定

5. **テスト計画**
   - Unit テスト対象
   - Integration テスト対象
   - E2E テスト対象
   - テストデータ・モックの準備

6. **リスク軽減策**
   - Research フェーズで特定したリスクへの対策
   - 代替案の準備

7. **工数見積もり**
   - 各サブタスクの見積もり時間
   - 全体の見積もり時間
   - バッファの設定

## 出力先
`rpi/plan-{タスク名}.md` に計画を保存

## 出力フォーマット例

```markdown
# Plan: {タスク名}

## アーキテクチャ設計
### コンポーネント構成
- ...

### データフロー
- ...

### インターフェース
- ...

## タスク分解
### Task 1: {タスク名}
- 目的: ...
- 成果物: ...
- 担当ファイル:
  - `path/to/file.py`: 関数XXXを追加
  - ...
- 見積もり: N時間

### Task 2: ...
...

## 実装順序
1. Task 1（並列不可）
2. Task 2, Task 3（並列可能）
3. Task 4（Task 2,3完了後）
...

## テスト計画
### Unit テスト
- `tests/unit/test_xxx.py`: 関数YYYのテスト
- ...

### Integration テスト
- ...

### E2E テスト
- ...

## リスク軽減策
| リスク | 軽減策 | 代替案 |
|--------|--------|--------|
| ... | ... | ... |

## 工数見積もり
- 実装: N時間
- テスト: M時間
- レビュー・修正: K時間
- バッファ: L時間
- **合計: X時間**

## 次のステップ
`/rpi-implement` で実装フェーズに進んでください
```

## 注意事項
- タスク分解は具体的に（ファイル名・関数名・行数レベル）
- 依存関係を明確にする（グラフ化できるレベル）
- テスト計画は80%以上のカバレッジを目指す
- 工数見積もりには必ずバッファを設ける（20-30%）
