Skip to content

cross-review: 修正担当(claude -p)がテストを背景で起動して通知を待ったまま終わり、結果ファイルを書かない #1734

Open

Description

@takemi-ohama

何を見つけたか

cross-review の修正担当(claude -p)が、テストを背景で起動して「通知を待つ」と言ったまま会話を終え、結果ファイルを書かない。 -p は応答の終わりでプロセスが終わるので、背景の完了通知は届かない。修正は作業ツリーに入ったままコミットされず、ステップが止まる。

2026-10-04、スプリント m1385 の検査(PR 1732 #1732 、配布済み 10.17.59)の review で起きた。codex の指摘 5 件を修正担当が 5 件とも直し(判断記録 fix-pr1732-decisions.json は 5 件とも fixed)、テストを流す段で終わった。

## fix の worker
Waiting for the background test notification.
fix の worker が結果ファイルを書かなかった

どこで見つけたか

  • 出力: ~/.local/state/ndf/sv/sprint-m1385/6-check-state/01-review.out の末尾
  • 作業ツリー: /tmp/ndf-worktrees/devbasex--ai-plugins/pr1732(10 ファイルが未コミットのまま、fix_commit: null)

なぜこの変更の範囲外なのか

スプリント m1385 の #919 は「結果を残さなかった担当を別のランタイムへ振り替える規則」で、結果を残さない原因(-p で背景の実行を待つ)は扱わない。修正担当の起動の指示か起動の仕方(背景の実行を禁じる・-p で待たせない)を変える判断で、即時修正の 4 条件の「既存の方針の範囲」に収まるかを決められない。

直さないと何が起きるか

  • テストが長いリポジトリでは、修正担当がテストを背景へ回すたびに review が止まり、conductor が手で流し直すことになる
  • 直した内容が作業ツリーに残ったまま次のラウンドへ進むと、どのコミットに何が入ったかが記録とずれる

直す場所

  • 現れている場所: cross-review の fix の pause(修正担当が結果ファイルを書かずに終わる)
  • 直す場所: supervise_lib/prompts.py の WORK_SYSTEM と worker_steps.py の _delegate_pause(結果ファイルが無いときの起こし直し)

Activity

  1. takemi-ohama commented on Oct 12, 2026

    @takemi-ohama
    ContributorAuthor

    同じファイルの待ちの指示に、もう 1 つ食い違いがある(develop 719dfa1 で確認)。

    plugins/ndf/scripts/supervise_lib/prompts.py の FULL_SYSTEM は、30〜32 行目で「待ちは前景のコマンドで行い(run_in_background・Monitor を使わない)」と書き、36 行目で「待ちは背景起動と完了通知で行い、応答を途中で終えない」と書く。claude -p のプロセスは応答を終えると背景の処理と完了通知を捨てるため、36 行目に従うと待ちの結果を受け取れない。この課題で WORK_SYSTEM に待ちの行を足すときに、FULL_SYSTEM の 36 行目もそろえる。

    見つけた場面: スプリント m1942・m1932 の後の棚卸し(PR #1965)。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions