SuperAPI AI 工具集

babysit-pr

通用与其它

查看项目

更新于 10-16 07:24

技能介绍

用途:让某个 PR 的 CI 变绿,仅此而已。不处理评审评论、PR 评论或状态总结。由开发者在自己的沙箱中本地运行。

输入:PR 编号是主要输入,可来自显式参数(如 /babysit-pr 567)、对话上下文(如“check on PR #567”)或粘贴的 GitHub PR URL。若无法确定 PR 编号,应先询问。

工作流程:

  1. 获取全貌:使用 gh pr view、gh pr checks、gh pr diff(均带 --repo NVIDIA-NeMo/Speech)判断状态。CI 失败则诊断修复;有合并冲突则解决;格式检查失败则等待,不要自己修;CI 已绿则结束;CI 进行中则等待后重新评估。
  2. 修复 CI 失败:gh pr checkout 检出分支,用 gh run list 与 gh run view --log-failed 查看失败日志。修复前先看 git log,若发现之前针对同一失败的修复仍未通过,应停止并告知用户,不要反复重试。否则定位根因、修改代码并提交推送:git add、git commit -s、git push。
  3. 重新触发 CI:推送修复后添加 “Run CICD” 标签:gh pr edit <PR_NUMBER> --repo NVIDIA-NeMo/Speech --add-label "Run CICD"。该标签触发 CICD NeMo 工作流,完成后自动移除。随后等待 CI 完成并回到第 1 步。
  4. 解决合并冲突:若分支落后 main 且有冲突,执行 git fetch origin main、git rebase origin/main,解决冲突时保留 PR 意图并采纳 main 的重构,然后 git add、git rebase --continue、git push --force-with-lease,再回到第 3 步重新触发 CI。

需忽略的检查:“Isort and Black Formatting” 工作流会自动推送格式修复。若该检查失败或进行中,不要自行修复格式,应等待其完成并等新提交落地后再评估其他失败,因为格式推送会改变 HEAD SHA 并可能重新触发 CI。

规则:不要在 PR 上发评论,直接与用户沟通;不要处理评审意见;不要修格式;不要重试已失败的修复;不要创建新 PR,只推送到现有分支;不要合并 PR 或推送到 main。

完成标准:CI 全绿,或仅剩预先存在/不稳定的失败且已告知用户。