# Expert Review Piece # CQRS+ES、フロントエンド、セキュリティ、QAの専門家によるレビューピース # # フロー: # plan -> implement -> ai_review -> reviewers (parallel) -> supervise -> COMPLETE # ↓ ├─ cqrs-es-review ↓ # ai_fix ├─ frontend-review fix_supervisor # ├─ security-review # └─ qa-review # any("needs_fix") → fix → reviewers # # ボイラープレートセクション(Piece Context, User Request, Previous Response, # Additional User Inputs, Instructions heading)はbuildInstruction()が自動挿入。 # instruction_templateにはムーブメント固有の内容のみ記述。 # # テンプレート変数(instruction_template内で使用可能): # {iteration} - ピース全体のターン数(全エージェントで実行されたムーブメントの合計) # {max_iterations} - ピースの最大イテレーション数 # {movement_iteration} - ムーブメントごとのイテレーション数(このムーブメントが何回実行されたか) # {previous_response} - 前のムーブメントの出力(pass_previous_response: true の場合のみ) # {report_dir} - レポートディレクトリ名(例: "20250126-143052-task-summary") # # ムーブメントレベルフィールド: # report: - ムーブメントのレポートファイル(Piece ContextにReport File/Filesとして自動挿入) # 単一: report: 00-plan.md # 複数: report: # - Scope: 01-coder-scope.md # - Decisions: 02-coder-decisions.md name: expert-cqrs-hybrid-codex description: CQRS+ES・フロントエンド・セキュリティ・QA専門家レビュー max_iterations: 30 stances: coding: ../stances/coding.md review: ../stances/review.md testing: ../stances/testing.md personas: planner: ../personas/planner.md coder: ../personas/coder.md ai-antipattern-reviewer: ../personas/ai-antipattern-reviewer.md architecture-reviewer: ../personas/architecture-reviewer.md cqrs-es-reviewer: ../personas/cqrs-es-reviewer.md frontend-reviewer: ../personas/frontend-reviewer.md security-reviewer: ../personas/security-reviewer.md qa-reviewer: ../personas/qa-reviewer.md expert-supervisor: ../personas/expert-supervisor.md instructions: plan: ../instructions/plan.md implement: ../instructions/implement.md ai-review: ../instructions/ai-review.md ai-fix: ../instructions/ai-fix.md arbitrate: ../instructions/arbitrate.md review-cqrs-es: ../instructions/review-cqrs-es.md review-frontend: ../instructions/review-frontend.md review-security: ../instructions/review-security.md review-qa: ../instructions/review-qa.md fix: ../instructions/fix.md supervise: ../instructions/supervise.md fix-supervisor: ../instructions/fix-supervisor.md report_formats: plan: ../report-formats/plan.md ai-review: ../report-formats/ai-review.md cqrs-es-review: ../report-formats/cqrs-es-review.md frontend-review: ../report-formats/frontend-review.md security-review: ../report-formats/security-review.md qa-review: ../report-formats/qa-review.md validation: ../report-formats/validation.md summary: ../report-formats/summary.md initial_movement: plan movements: # =========================================== # Movement 0: Planning # =========================================== - name: plan edit: false persona: planner report: name: 00-plan.md format: plan allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch instruction: plan rules: - condition: タスク分析と計画が完了した next: implement - condition: 要件が不明確で計画を立てられない next: ABORT # =========================================== # Movement 1: Implementation # =========================================== - name: implement edit: true persona: coder stance: - coding - testing provider: codex session: refresh report: - Scope: 01-coder-scope.md - Decisions: 02-coder-decisions.md allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch instruction: implement rules: - condition: 実装が完了した next: ai_review - condition: 実装未着手(レポートのみ) next: ai_review - condition: 実装を進行できない next: ai_review - condition: ユーザー入力が必要 next: implement requires_user_input: true interactive_only: true # =========================================== # Movement 2: AI Review # =========================================== - name: ai_review edit: false persona: ai-antipattern-reviewer stance: review report: name: 03-ai-review.md format: ai-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch instruction: ai-review rules: - condition: AI特有の問題が見つからない next: reviewers - condition: AI特有の問題が検出された next: ai_fix - name: ai_fix edit: true persona: coder stance: - coding - testing provider: codex session: refresh allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch instruction: ai-fix rules: - condition: AI Reviewerの指摘に対する修正が完了した next: ai_review - condition: 修正不要(指摘対象ファイル/仕様の確認済み) next: ai_no_fix - condition: 修正を進行できない next: ai_no_fix - name: ai_no_fix edit: false persona: architecture-reviewer stance: review allowed_tools: - Read - Glob - Grep rules: - condition: ai_reviewの指摘が妥当(修正すべき) next: ai_fix - condition: ai_fixの判断が妥当(修正不要) next: reviewers instruction: arbitrate # =========================================== # Movement 3: Expert Reviews (Parallel) # =========================================== - name: reviewers parallel: - name: cqrs-es-review edit: false persona: cqrs-es-reviewer stance: review report: name: 04-cqrs-es-review.md format: cqrs-es-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-cqrs-es - name: frontend-review edit: false persona: frontend-reviewer stance: review report: name: 05-frontend-review.md format: frontend-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-frontend - name: security-review edit: false persona: security-reviewer stance: review report: name: 06-security-review.md format: security-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-security - name: qa-review edit: false persona: qa-reviewer stance: review report: name: 07-qa-review.md format: qa-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-qa rules: - condition: all("approved") next: supervise - condition: any("needs_fix") next: fix - name: fix edit: true persona: coder stance: - coding - testing provider: codex allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch permission_mode: edit rules: - condition: 修正が完了した next: reviewers - condition: 修正を進行できない next: plan instruction: fix # =========================================== # Movement 4: Supervision # =========================================== - name: supervise edit: false persona: expert-supervisor stance: review report: - Validation: 08-supervisor-validation.md - Summary: summary.md allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch instruction: supervise rules: - condition: すべての検証が完了し、マージ可能な状態である next: COMPLETE - condition: 問題が検出された next: fix_supervisor - name: fix_supervisor edit: true persona: coder stance: - coding - testing provider: codex allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch instruction: fix-supervisor rules: - condition: 監督者の指摘に対する修正が完了した next: supervise - condition: 修正を進行できない next: plan