背景 / コンテキスト
forge の批判的監査(2026-07-06)で検出。無人実行を意図する自動化フロー(--auto 系介入軸、並列コンテキスト収集、doc-advisor 転送)に、停止点とサイレント縮退が混在しており、「止まるべきでない所で止まり、報告すべき所で黙る」という一貫性の欠如がある。
現象(実際の動作)
--auto / --auto-critical でも AskUserQuestion で停止する: plugins/forge/skills/review/SKILL.md:185(resolve_review_context.py が needs_input を返した場合)と :192(target_files 過多時の絞り込み確認)は介入軸を問わず AskUserQuestion を呼ぶ。無人実行(CI・cron 等)を想定した介入軸と矛盾する
- 文脈収集 agent の失敗を黙殺:
plugins/forge/skills/start-design/SKILL.md:109 / start-plan/SKILL.md:106 は並列起動した文脈収集 agent の「エラー時は該当カテゴリなしで後続工程に進む」— 設計書・計画書の品質が黙って劣化し、ユーザーに通知されない
- doc-advisor のランタイムエラーが透過される:
query-db-rules / query-db-specs の grep フォールバックは「doc-advisor が available-skills に存在しない場合」のみ発動する(SKILL.md:30-32)。インストール済みで status: error や worker の出力契約違反が起きた場合のフォールバックはなく、失敗がそのまま親に返る
期待動作
--auto 系では AskUserQuestion の代わりに決定論的デフォルト(例: 全 diff ファイル採用 / 種別ごとの分割実行提案をレポートに残して続行)を定義する。人間の判断が本当に必要なら「auto では中断してエラー報告」を仕様として明示する
- 文脈収集 agent の失敗は後続続行でもよいが、失敗した事実と欠落カテゴリを完了レポートに必ず明示する
- doc-advisor のランタイムエラー時(error 応答・契約違反応答)も grep フォールバックに落とす、または明示エラー報告に統一する
重大度
中(自動化モードの信頼性・予測可能性に直結。サイレント劣化は SoT リポジトリの品質保証と相性が悪い)
背景 / コンテキスト
forge の批判的監査(2026-07-06)で検出。無人実行を意図する自動化フロー(
--auto系介入軸、並列コンテキスト収集、doc-advisor 転送)に、停止点とサイレント縮退が混在しており、「止まるべきでない所で止まり、報告すべき所で黙る」という一貫性の欠如がある。現象(実際の動作)
--auto/--auto-criticalでも AskUserQuestion で停止する:plugins/forge/skills/review/SKILL.md:185(resolve_review_context.pyがneeds_inputを返した場合)と:192(target_files 過多時の絞り込み確認)は介入軸を問わず AskUserQuestion を呼ぶ。無人実行(CI・cron 等)を想定した介入軸と矛盾するplugins/forge/skills/start-design/SKILL.md:109/start-plan/SKILL.md:106は並列起動した文脈収集 agent の「エラー時は該当カテゴリなしで後続工程に進む」— 設計書・計画書の品質が黙って劣化し、ユーザーに通知されないquery-db-rules/query-db-specsの grep フォールバックは「doc-advisor が available-skills に存在しない場合」のみ発動する(SKILL.md:30-32)。インストール済みでstatus: errorや worker の出力契約違反が起きた場合のフォールバックはなく、失敗がそのまま親に返る期待動作
--auto系では AskUserQuestion の代わりに決定論的デフォルト(例: 全 diff ファイル採用 / 種別ごとの分割実行提案をレポートに残して続行)を定義する。人間の判断が本当に必要なら「auto では中断してエラー報告」を仕様として明示する重大度
中(自動化モードの信頼性・予測可能性に直結。サイレント劣化は SoT リポジトリの品質保証と相性が悪い)