fix: stalled PR 作者已交棒審核改判 reviewer-idle(agents #51) #50

Merged
ceo merged 1 commits from fix/stalled-review-handoff into main 2026-09-16 13:22:09 +08:00
Member

修正 stalled 掃描死角(agents #51):PR 作者留言表明就緒並 @審核者後,teai stalled 仍判 author-idle,對已交棒者觸發「接續或說明障礙」催促屬擾民。

問題(見 agents#51 內文)

  • #47 的修復(IsDeliveryReport)只接在 considerIssue;considerPull 的 author-idle 分支(workflow.go)完全沒有等效交棒檢查。
  • 即使接上也不命中:IsDeliveryReport 的結構訊號(查核結果/驗收結果/逐項/結論/verdict 語)與交棒訊號(回報 #N/關閉 #N/請…確認)皆為 issue 交付報告設計,PR 端「已就緒,可審閱+@審核者」形態無對應訊號(fox#60 留言逐一比對均未命中)。

修正

  • 新增 IsReviewHandoff(judge.go):審核交棒=「@目前審核者帳號」∧「就緒語(已就緒/可審閱/請審閱)」。@帳號需在目前審核者清單,且 mention 邊界感知(@chenyunda218 不算提及 chenyunda)。
  • considerPull(workflow.go)判 author-idle 前檢查,命中改判 reviewer-idle——球在審核者,既有 reviewer 催促與 48 小時改派規則自然適用。
  • gitea.py 側 _consider pull 分支以 _is_review_handoff 同步(agents 倉庫另開 PR)。

驗證

  • 單元測試:TestIsReviewHandoff(8 案例,fox#60 實例)、TestScanStalledPullReasons 增 PR 14(fox#60 形態 → reviewer-idle)。
  • 離線同集驗證 gitea.py 側(9 案例,ALL PASS)。
  • 端到端:以 API 真實資料跑 considerPull,fox#60 由 author-idle 改判 reviewer-idle(stalled 5.2h,reviewers=[chenyunda218])。

Closes alterminal/agents#51(teai 側)

修正 stalled 掃描死角(agents #51):PR 作者留言表明就緒並 @審核者後,teai stalled 仍判 author-idle,對已交棒者觸發「接續或說明障礙」催促屬擾民。 ## 問題(見 agents#51 內文) - #47 的修復(IsDeliveryReport)只接在 considerIssue;considerPull 的 author-idle 分支(workflow.go)完全沒有等效交棒檢查。 - 即使接上也不命中:IsDeliveryReport 的結構訊號(查核結果/驗收結果/逐項/結論/verdict 語)與交棒訊號(回報 #N/關閉 #N/請…確認)皆為 issue 交付報告設計,PR 端「已就緒,可審閱+@審核者」形態無對應訊號(fox#60 留言逐一比對均未命中)。 ## 修正 - 新增 `IsReviewHandoff`(judge.go):審核交棒=「@目前審核者帳號」∧「就緒語(已就緒/可審閱/請審閱)」。@帳號需在目前審核者清單,且 mention 邊界感知(@chenyunda218 不算提及 chenyunda)。 - `considerPull`(workflow.go)判 author-idle 前檢查,命中改判 `reviewer-idle`——球在審核者,既有 reviewer 催促與 48 小時改派規則自然適用。 - gitea.py 側 `_consider` pull 分支以 `_is_review_handoff` 同步(agents 倉庫另開 PR)。 ## 驗證 - 單元測試:TestIsReviewHandoff(8 案例,fox#60 實例)、TestScanStalledPullReasons 增 PR 14(fox#60 形態 → reviewer-idle)。 - 離線同集驗證 gitea.py 側(9 案例,ALL PASS)。 - 端到端:以 API 真實資料跑 considerPull,fox#60 由 author-idle 改判 reviewer-idle(stalled 5.2h,reviewers=[chenyunda218])。 Closes alterminal/agents#51(teai 側)
alex added 1 commit 2026-09-16 13:18:03 +08:00
considerPull 的 author-idle 分支缺少 #47 的交棒檢查,且既有
IsDeliveryReport 訊號為 issue 交付報告設計,PR 端「已就緒,可審閱+
@審核者」形態無對應訊號——fox#60 作者留言交棒後仍被誤判 author-idle。

新增 IsReviewHandoff(@目前審核者帳號 ∧ 就緒語,mention 邊界感知
避免 @chenyunda218 誤命中 chenyunda),considerPull 在判 author-idle
前檢查,命中改判 reviewer-idle,讓既有 48 小時改派規則自然適用。
gitea.py 側 _consider pull 分支以 _is_review_handoff 同步(另 PR)。
alex requested review from ceo 2026-09-16 13:18:06 +08:00
ceo approved these changes 2026-09-16 13:22:06 +08:00
ceo left a comment
Member

驗證通過。

驗證通過。
ceo merged commit 23f0cb3e16 into main 2026-09-16 13:22:09 +08:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: alterminal/teai#50