--- description: GitHub IssueをProduct Backlog Item(PBI)としてリファインメントし、実装可能なタスクに分解する argument-hint: [--group=N] [--from=groupN] [--edit=groupN] allowed-tools: Bash, Read, Write, Edit, Glob --- # GitHub Issue リファインメント・タスク分解 指定されたGitHub Issue #$1 をマイクロステップの対話を通じて、具体的な実装タスクに分解します。 ## 実行モード ### 基本実行 ```bash /task-refine 123 # 全グループを順次実行 /task-refine 123 --group=1 # Group 1のみ実行 /task-refine 123 --from=group2 # Group 2から再開 /task-refine 123 --edit=group1 # Group 1のみ修正 ``` ## 3段階グループ構成 ### Group 1: 要件・制約の確定 (5-8分) **目的**: 何を作るかを明確化 **ステップ構成**: - Step 1: 認証・処理方式の選択 - Step 2: 機能範囲の決定 - Step 3: セキュリティレベルの設定 - Step 4: 非機能要件の確認 **出力**: 機能要件と制約の確定 ### Group 2: 技術・アーキテクチャ設計 (8-12分) **目的**: どう実装するかを技術的に決定 **ステップ構成**: - Step 5: 技術スタックの選択 - Step 6: データ設計・モデル構造 - Step 7: API設計・インターフェース - Step 8: UI/UX設計方針 **前提条件**: Group 1の完了が必要 **出力**: 技術仕様と設計方針の確定 ### Group 3: 実装・タスク構成 (5-8分) **目的**: 具体的な作業手順に分解 **ステップ構成**: - Step 9: タスク分解粒度の決定 - Step 10: 実装優先順位の設定 - Step 11: 依存関係の整理 - Step 12: 最終タスクリストの確認 **前提条件**: Group 1, 2の完了が必要 **出力**: 実装可能なタスクリスト ## 実行フロー ### 1. Issue分析と進行状況確認 ```bash # GitHub CLI でIssue情報取得 gh issue view $1 --json title,body,url # 既存の進行状況確認 if [ -f "tasks/pbi-$1/.refine-progress.json" ]; then # 前回の続きから再開オプション表示 fi ``` ### 2. グループ別実行制御 #### Group 1実行例: ``` === Group 1: 要件・制約の確定 === Progress: ▓▓▓░░░░░░░ (3/10 steps) Step 1/4: 認証・処理方式 GitHub Issue #$1から検出キーワード: [動的表示] Q: 主要な処理方式を選択してください 1. 認証系 (ログイン、権限管理) 2. データ処理系 (CRUD、検索、集計) 3. UI/UX系 (画面、コンポーネント) 4. 統合系 (API連携、外部サービス) 5. その他 選択: 1 Step 2/4: 機能範囲 認証系機能として、実装する機能を選択してください (複数選択可): 1. ユーザーログイン 2. ユーザー登録 3. パスワードリセット 4. 権限・ロール管理 5. プロフィール管理 6. セッション管理 選択: 1,2,3 Step 3/4: セキュリティレベル 選択した機能 (ログイン、登録、リセット) に対するセキュリティレベル: 1. 基本 (パスワード暗号化、基本バリデーション) 2. 強化 (2FA、IP制限、監査ログ) 3. 最小限 (暗号化のみ) 選択: 1 Step 4/4: 非機能要件 Q: 想定される利用規模は? 1. 小規模 (~100ユーザー) 2. 中規模 (~1,000ユーザー) 3. 大規模 (1,000ユーザー+) 選択: 2 ✅ Group 1完了: 要件・制約が確定 【確定内容】 - 処理分野: 認証系 - 機能: ログイン、登録、パスワードリセット - セキュリティ: 基本レベル - 規模: 中規模対応 次のアクション: 1. Group 2に進む (技術・アーキテクチャ設計) 2. 後で続行 (進捗保存) 3. Group 1を修正 選択: 1 ``` ### 3. 進捗管理と状態保存 **.refine-progress.json 形式**: ```json { "issue": "$1", "started": "2024-01-01T10:00:00Z", "current_group": 2, "completed_groups": [ { "group": 1, "completed_at": "2024-01-01T10:08:00Z", "decisions": { "processing_type": "authentication", "features": ["login", "registration", "password_reset"], "security_level": "basic", "scale": "medium" } } ], "current_step": 6, "session_data": { "tech_stack_proposal": "node_express", "database_preference": "postgresql" } } ``` ### 4. 最終ファイル生成 #### 拡張されたREADME.md形式: ```yaml --- issue: $1 title: url: phase: completed refinement_completed: created: updated: --- # PBI #$1 ## リファインメント履歴 ### Group 1: 要件・制約確定 ✅ - 処理分野: 認証系 - 機能範囲: ログイン、登録、パスワードリセット - セキュリティ: 基本レベル (暗号化、バリデーション) - 規模: 中規模対応 (~1,000ユーザー) ### Group 2: 技術・アーキテクチャ設計 ✅ - バックエンド: Node.js + Express + PostgreSQL - フロントエンド: React + TypeScript (既存環境) - 認証方式: JWT (24時間有効期限) - API: RESTful 4エンドポイント ### Group 3: 実装・タスク構成 ✅ - タスク数: 8個 - カテゴリ: Setup(1), Models(2), Services(2), UI(2), Tests(1) - 実装期間: 5-8日 (1日1-2タスク想定) ## タスク一覧 (カテゴリ別) ### Setup - [ ] プロジェクト環境構築 (todo-setup-1.md) ### Models - [ ] User model実装 (todo-models-1.md) - [ ] 認証関連テーブル設計 (todo-models-2.md) ### Services - [ ] 認証API実装 (todo-services-1.md) - [ ] パスワードリセット機能 (todo-services-2.md) ### UI - [ ] ログインフォーム実装 (todo-ui-1.md) - [ ] 登録フォーム実装 (todo-ui-2.md) ### Tests - [ ] 認証機能テスト (todo-tests-1.md) ## 要件トレーサビリティ - ログイン機能 → setup-1, models-1, services-1, ui-1, tests-1 - 登録機能 → models-1, services-1, ui-2, tests-1 - リセット機能 → models-2, services-2, tests-1 ``` #### カテゴリ別タスクファイル形式: ```yaml --- parent: $1 category: setup priority: high estimated_hours: 4 created: started: null completed: null --- # プロジェクト環境構築 ## やること Node.js + Express + PostgreSQL の認証プロジェクト環境を構築する ## 成功条件 - [ ] package.json作成 (express, jwt, bcrypt, pg依存関係) - [ ] PostgreSQL接続設定完了 - [ ] 基本的なサーバー起動確認 - [ ] 環境変数設定 (.env.example作成) ## 技術仕様 - Node.js: v18+ - Express: v4.x - PostgreSQL: v14+ - JWT: jsonwebtoken - 暗号化: bcrypt ## 制約 - 環境変数でDB接続情報管理 - セキュリティ設定は本番想定 - 既存Reactプロジェクトとの統合考慮 ## 実装メモ (作業中に追記) ``` ## エラーハンドリング ### 実行前チェック - GitHub CLI認証状態確認 - Issue存在確認 - tasksディレクトリアクセス権確認 ### 進行中のエラー処理 - 不正な選択肢入力時の再プロンプト - ネットワークエラー時の状態保存 - 強制終了時の進捗復旧 ### グループ間整合性チェック - Group 2開始時にGroup 1決定事項の参照 - Group 3開始時にGroup 1, 2決定事項の参照 - 矛盾検出時の修正提案 ## 完了条件 - 全3グループが正常完了している - `tasks/pbi-$1/README.md` にリファインメント履歴が記録されている - カテゴリ別のタスクファイルが適切に生成されている - 各タスクが実装可能なレベルまで詳細化されている - 要件トレーサビリティが確立されている 実行を開始しますか?