takt/builtins/ja/pieces/research.yaml
nrslib 1466a7176d takt: # タスク指示書: Output Contracts と Quality Gates の実装
## 概要
仕様ドキュメント `/Users/m_naruse/work/git/takt/task_planning/output-contracts-and-quality-gates.md` に基づき、YAML構造の変更を実装する。

---

## タスク一覧

### 【高】トップレベル構造の変更
- 現在の `output_contracts` を `report_formats` にリネーム
- レポートテンプレート定義として機能させる

### 【高】Movement内の output_contracts 構造変更
- 各 movement の `output_contracts` が直接レポート配列を持つ構造に変更
- `output_contracts.report` の `report` キーを廃止

**変更後の構造:**
```yaml
report_formats:           # トップレベル(テンプレート定義)
  plan: ...

movements:
  - name: plan
    output_contracts:     # 直接配列(reportキー不要)
      - name: 00-plan.md
        format: plan
```

### 【中】quality_gates の実装
- エージェントへの通達として機能させる(自動検証は将来実装)
- Movement完了時にエージェントが参照できる形式で定義

---

## 制約(ユーザー明示)
- 後方互換性は不要

---

## 確認方法
- 既存のピース定義YAMLが新構造でパースできること
- テストが通ること
2026-02-07 22:03:43 +09:00

114 lines
3.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: research
description: 調査ピース - 質問せずに自律的に調査を実行
max_iterations: 10
personas:
research-planner: ../personas/research-planner.md
research-digger: ../personas/research-digger.md
research-supervisor: ../personas/research-supervisor.md
initial_movement: plan
movements:
- name: plan
persona: research-planner
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
## ピース状況
- イテレーション: {iteration}/{max_iterations}(ピース全体)
- ムーブメント実行回数: {movement_iteration}(このムーブメントの実行回数)
- ムーブメント: plan
## 調査依頼
{task}
## Supervisorからのフィードバック再計画の場合
{previous_response}
## 追加のユーザー入力
{user_inputs}
## 指示
上記の調査依頼について、調査計画を立ててください。
**重要**: ユーザーに質問しないでください。
- 不明点は仮定を置いて進める
- 複数の解釈がある場合は、すべてを調査対象に含める
- Supervisorからフィードバックがある場合は、指摘を反映した計画を作成
rules:
- condition: 計画が完了した
next: dig
- condition: 情報が不足しており計画を立てられない
next: ABORT
- name: dig
persona: research-digger
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
## ピース状況
- イテレーション: {iteration}/{max_iterations}(ピース全体)
- ムーブメント実行回数: {movement_iteration}(このムーブメントの実行回数)
- ムーブメント: dig
## 元の調査依頼
{task}
## 調査計画
{previous_response}
## 追加のユーザー入力
{user_inputs}
## 指示
上記の調査計画に従って、実際に調査を実行してください。
**重要**: ユーザーに質問しないでください。
- 調査できる範囲で調査する
- 調査できなかった項目は「調査不可」と報告
利用可能なツール:
- Web検索
- GitHub検索gh コマンド)
- コードベース検索
- ファイル読み取り
rules:
- condition: 調査が完了した
next: supervise
- condition: 調査を実行できない
next: ABORT
- name: supervise
persona: research-supervisor
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
## ピース状況
- イテレーション: {iteration}/{max_iterations}(ピース全体)
- ムーブメント実行回数: {movement_iteration}(このムーブメントの実行回数)
- ムーブメント: supervise (調査品質評価)
## 元の調査依頼
{task}
## Digger の調査結果
{previous_response}
## 指示
調査結果を評価し、元の依頼に対して十分な回答になっているか判断してください。
**重要**: 問題がある場合は、Plannerへの具体的な指示を含めてください。
rules:
- condition: 調査結果が元の依頼に対して十分である
next: COMPLETE
- condition: 調査結果が不十分であり、計画からやり直す必要がある
next: plan