Skip to content

ci(pr-agent): 改软阻断——合并前必须等 review 产出(端点挂了不卡死)#392

Merged
leeguooooo merged 1 commit into
mainfrom
ci/pr-agent-soft-gate
Jul 12, 2026
Merged

ci(pr-agent): 改软阻断——合并前必须等 review 产出(端点挂了不卡死)#392
leeguooooo merged 1 commit into
mainfrom
ci/pr-agent-soft-gate

Conversation

@leeguooooo

Copy link
Copy Markdown
Owner

owner 令:非阻塞 review 被当成『不用看』就成了摆设(#390 带 review 就合、没人读)。

软阻断:pr_agent 设为 main 分支保护的 required check——合并前必须等它跑完:

  • 端点通 → qwen review 已贴在 PR 上,合并者一定看得到;
  • 端点挂 → 产不出评论、但 job 照样绿(continue-on-error + 末尾 exit 0),绝不卡死所有 PR(超时 8 分钟)。

配套纪律:合并前先读 pr-agent/CodeRabbit 的 review、处理真问题再合。

⚠️ 合并本 PR 后我会开 main 分支保护(required = full check + pr_agent,不强制审批人数、admin 可应急绕过),只拦『没等 review 就合』,不破坏 agent 并行快速流。

🤖 owner 拍板软阻断 + 开分支保护(不误伤快速流)。

owner 令:非阻塞被当成『不用看』,review 成摆设(#390 带 review 就合、没人读)。
改成软阻断:pr_agent 作为 main 分支保护的 required check,合并前必须等它跑完——
端点通→review 已贴 PR、合并者一定看得到;端点挂→无评论但 job 照样绿(continue-on-error
+ 末尾 exit 0),绝不卡死所有 PR。超时收到 8 分钟。配套『合并前先读 review』纪律。
@github-actions

Copy link
Copy Markdown

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

🎫 Ticket compliance analysis 🔶

390 - Partially compliant

Compliant requirements:

Non-compliant requirements:

  • 新增 .coderabbit.yaml——按 monorepo 各子系统定制审查重点(越权/SQL/终端转义/迁移 NULL/鉴权附件/i18n)。
  • 装 CodeRabbit App 需 owner GitHub 授权,配置先入仓。
  • LarkMemberInvite 撞一次「通讯录权限未开通」后记住并降级——隐藏徒劳搜索框 + 持久提示(请管理员开权限 / 用邀请链接)。
  • 权限是 owner 在 Lark 后台配置项。

Requires further human verification:

⏱️ Estimated effort to review: 3 🔵🔵🔵⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

超时时间减少

将 job 的 timeout-minutes 从 12 分钟减少到 8 分钟。这可能会导致某些情况下 pr_agent 无法完成其任务,特别是在端点响应较慢的情况下。需要确认 8 分钟是否足够处理所有预期的 PR 评论。

timeout-minutes: 8   # 端点慢/挂最多等 8 分钟就放行,不长时间卡 PR

@github-actions

Copy link
Copy Markdown

PR Code Suggestions ✨

Explore these optional code suggestions:

CategorySuggestion                                                                                                                                    Impact
General
添加日志记录

else 分支中添加一个日志记录,以便更好地跟踪端点不可达或超时的情况。

.github/workflows/pr-agent.yml [50-54]

 if [ "${{ steps.review.outcome }}" = "success" ]; then
   echo "✅ pr-agent review 已产出并贴到 PR——合并前请先读它、处理真问题。"
 else
   echo "::warning::pr-agent review 未产出(端点不可达/超时)——本次无评论,按设计不阻断合并。"
+  echo "端点不可达或超时,请检查端点状态。"
 fi
Suggestion importance[1-10]: 6

__

Why: 在 else 分支中添加日志记录可以更好地跟踪端点不可达或超时的情况,提高调试和监控的能力。

Low
增加超时时间

timeout-minutes 设置为 10 分钟,以确保在端点响应较慢时有足够的时间完成审查。

.github/workflows/pr-agent.yml [30]

-timeout-minutes: 8   # 端点慢/挂最多等 8 分钟就放行,不长时间卡 PR
+timeout-minutes: 10   # 确保在端点响应较慢时有足够的时间完成审查
Suggestion importance[1-10]: 4

__

Why: 超时时间的调整是一个小改进,但可能有助于在端点响应较慢时完成审查。不过,这并不是一个关键问题。

Low

@leeguooooo leeguooooo merged commit 5902c3f into main Jul 12, 2026
16 checks passed
@leeguooooo leeguooooo deleted the ci/pr-agent-soft-gate branch July 12, 2026 11:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant