Skip to content

cross-review: 修正前のコミットの行を指す古い指摘が投稿の待ち行列の先頭で 422 になり、review が止まり続ける #2084

Closed

Description

@takemi-ohama

何が起きたか

volareinc/carmo-screening のスプリント PR #352 で、cross-review が state.py verify-sweep の終了コード 1 で止まり続けた(supervise.py の review ステップ → abort)。

原因: 修正の前のコミットの行を指す古い指摘が、投稿の待ち行列(耐久の記録)の先頭に残っていた。GitHub がその行へのコメントを 422 で拒み、待ち行列が先へ進まなかった。新しいラウンドを始めても同じ先頭で止まる。

手で回避した方法: 待ち行列の全件を dropped/ へ退避し、.cross_review を退避して、耐久ワークフローを取り消した。その後の実行は 1 ラウンドで approved に収束した。

期待する動き

head が進んで指摘の行が差分から消えたとき(422 の line could not be resolved)は、その項目を待ち行列から外すか総評へ移し、後続の項目を流す。古い項目 1 件で review ステップ全体を止めない。

見つけた場面

carmo-screening #338 の振り返り(2026-10-21)。ndf 10.19.0。

受け入れ条件

  • 投稿の待ち行列の先頭に、前の実行が積んだ review-post の項目があり、GitHub がその行を 422(line could not be resolved)で拒むとき → 今回の post_review は今回分の review を送り終え、failed を返さない。先頭の項目は待ち行列から外れ、dropped/ の控えか総評のどちらかに残る(どちらにするかは設計で決める)。テストの偽の gh で確かめる
  • 上の状態のあと、新しいラウンドで post_review をもう一度呼ぶ → 同じ項目の 422 で止まらない(待ち行列に、その項目が積まれていない)
  • 先頭の項目が一時の失敗(429・5xx・上限)で送れないとき → 今までどおり外さず、今回分も順序を保って待つ(waitable が真)
  • 位置エラーでない恒久の失敗(422 でも line could not be resolved を含まないもの・400・404 など)の review-post の項目 → 今の扱い(_NOT_DROPPED_KINDS で飛ばさない)を変えない。変えるなら設計 PR に理由を書く
  • 別の実行が積み、まだ送りを試みていない項目 → この実行の flush で外されず、送られる

修正レイヤー

親 #2229(実行をまたいで残る状態の寿命と持ち主)。lib/post_queue.py の _NOT_DROPPED_KINDS = ("review-post",) でレビューは恒久の失敗でも飛ばされず、lib/result_posts.py は今回積んだ項目の位置エラーだけを総評へ移す。前の実行が積んだ項目の 422 は先頭に残り続ける。test_a_position_rejection_of_an_earlier_item_is_not_taken_as_ours がこの振る舞いを固定しており、直すときに書き換える。

進行

モード: — / 進め方: auto

  • 要求と受け入れ条件
  • 作業場所の用意 — 2026-10-31 03:59
  • 設計
  • 素材の収集と出典の確定
  • ドキュメント再構成
  • ドキュメントレビュー
  • 計画 — 2026-10-31 03:59
  • 実装 — 2026-10-31 05:36
  • 構造改善 — 2026-10-31 07:38
  • 実装レビュー — 2026-10-31 09:12
  • 完了判定 — 2026-10-31 06:18
  • Pull Request — 2026-10-31 06:41
  • 確定仕様化 — 2026-10-31 11:00
  • 後片付け — 2026-10-31 10:57
  • 配布 — 2026-10-31 10:33
  • 体裁レビュー
  • リリース後テスト — 2026-10-31 10:56
  • 振り返り — 2026-10-31 11:00
  • 棚卸し — 2026-10-31 11:21

振り返り: #2282 (comment)

Activity

  1. takemi-ohama commented on Oct 31, 2026

    @takemi-ohama
    ContributorAuthor

    スプリント(26 自律実行の信頼性のスプリントを閉じる)を通りました

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

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions