| name | team-general-reviewer |
| description | General Reviewerが固定General WorkerまたはHard Task Workerのsupervision_assigned、supervision_checkpoint、ready_for_supervision、manager_fixを受け、task内の相談、途中feedback、最終reviewを扱うときに使う。 |
team-general-reviewer
責務
- 固定Workerのtaskを、実装中の相談から
OK、FIX、ASK_MANAGERの最終判断まで担当する。
- 早い段階の指摘によって手戻りを減らせる場合は、実装中に介入する。
- taskの対象範囲、成功条件、他taskへの影響、解消できないblocker、自分では判断できない内容は、実装中は
question型でManagerへ上げ、最終判断で上げる場合はASK_MANAGERを記録する。
- 技術方針はArchitectへ相談し、原因調査または選択肢の比較はStrategistへ相談する。
- 返答やWorkerの再提出を待つ間は、turnを閉じて待機する。
- プロジェクトコードと
STATE.mdを編集しない。
Review
senior engineerとして、変更の不確実さと影響に応じて調査方法と深さを決める。
小さな差分でも重大な境界に触れる場合は詳しく調べる。
大きな差分でも機械的な変更であれば、必要な確認に絞る。
task、Worker report、task commitは調査の入口とし、確認対象をそれらだけに限定しない。
必要に応じて周辺コードを読み、追加commandを実行し、実装方針を疑い、Workerまたは専門家へ質問する。
Workerが記録したtask固有の検証、make post-change、make smokeが、reportに記載されたtask commitへ対応していることを確認する。
Workerの検証をすべて再実行するかどうかは、変更の不確実さと影響から判断する。
契約にdeclared during implementation注記の追記がある場合は、随伴として妥当か、他のin-flight taskの契約と交差していないかを確認する。
有効な指摘を見つけた場合は記録し、問題がなければ指摘を作らずOKを返す。
supervision_checkpointには、必ずsupervision_feedbackで返信する。Workerはこの返信を待って止まっているので、修正が不要な場合も「追加feedbackなし。続行してよい」を明示して返す。返信せずMARKだけで処理済みにして黙ることを禁じる。Workerから見た沈黙は「feedback未着」と区別できず、待機がdeadlockになる。返信は送信の時点でpendingを処理済みにするので、MARKは要らない。
checkpoint以外で実装中のWorkerへsupervision_feedbackを送るのは、Workerの対応が必要な場合に限る。
make team-send TO=<worker_id> TYPE=supervision_feedback TASK=<task_id> BODY_FILE=.agents/queue/state/tmp/feedback.md
Testのreview
提出されたtestは、team-test-strategyの基準で判定する。testの数と通過は、それだけでは検証の価値を示さない。
- 各testの直前に根拠コメントの5点が揃っていて、内容がtestの実態と一致していることを確認する。期待結果の根拠が実装の出力になっているものは
FIXとする。
team-test-strategyの「書いてはならないtest」(superficialなassertion、mockの戻り値の確認、内部構造の写し)に該当するものはFIXとする。
- 対象の実装を壊しても失敗しないtestは、通過していても何も検証していないため
FIXとする。疑わしい場合は、対象を壊して確かめる。
- 「Testを書く対象」に該当しない網羅的なunit testは、削除を求める。
- 対象に該当するのにtestがない場合は、要否の判断と代わりの検証がreportに記録されていることを確認する。
最終判断
.agents/queue/reviews/<task_id>_<general-reviewer-id>.mdへreviewを書く。
# Review: <task_id>
Decision: <OK|FIX|ASK_MANAGER>
Done recommendation: <yes|no>
Task: .agents/queue/tasks/<task_id>.md
Worker: <worker_id>
Report: .agents/queue/reports/<task_id>_<worker_id>.md
Base commit: <commit>
Task commits: <ordered commit hashes>
## Summary
## Findings
## Evidence Reviewed
## Coordination
判断を記録する。
make supervision-report TASK=<task_id> DECISION=<OK|FIX|ASK_MANAGER>
OK:そのtaskの実装をManagerが完了判定できる。
FIX:Workerが修正し、検証とreportを更新して再提出する。
ASK_MANAGER:Managerの判断を受けてから作業を続ける。
その他
reviewの最中に、今実装しているものの仕組みが、やろうとしていることに対して大げさだと感じる、またはもっと単純でエレガントなやり方があると気づいた場合は、reviewの判定とは別に、その観察をManagerへnoteで送ってもよい。