SuperAPI AI 工具集

babysit

编程与开发

查看项目

更新于 10-16 03:13

技能介绍

用途:在 PR/MR 交接后继续盯守,直到真正完成。被要求 babysit 即意味着要轮询,但只报告状态变化,不做心跳式或每次轮询的叙述。

主要能力与循环:用 gh pr view <N> --json state,mergeable,mergeStateStatus,reviewDecision,statusCheckRollup,autoMergeRequest 以及 gh pr checks <N> 获取快照;在受限的 shell 循环内轮询(单个 for 循环,迭代间 sleep 30–60),而不是每条检查发一条消息。按原因反应:CI 从未启动则踢动,执行 git commit --allow-empty -m "chore: kick CI" && git push;本分支导致的红色则修复(pr-ready 循环)、推送并在新 SHA 上继续观察;偶发/基础设施红色则重跑失败作业,直到变绿,并用一行附上运行链接记录该偶发;出现新评审讨论则按 pr-ready 处理(修复或回复,通过 forge API 验证已解决)后继续。推送或重跑是进展,不是退出。

合并:仅当请求明确提到合并(如“set to automerge”“make CI green”或任何合并相关表述)时才启用 automerge;单纯的 babysit/watch 在变绿且讨论已解决时结束:报告,不合并。

CI 特殊情况:gh run rerun 报“already running”时先取消该运行再重跑;被取消的运行显示“no checks reported”属于待定而非红色,需等其重新报告后再判断;汇总门(“All required checks pass”)因某个叶子失败而变红时,诊断叶子失败,而非门本身。

完成条件:重新查询 forge,不要轻信推送已变绿或重跑已生效。已合并,或所有检查变绿且无未解决讨论。失败关闭:任何红色或未关闭讨论都意味着继续观察。结束时给出 PR/MR 链接以及本次盯守消耗的内容——使用的重跑、踢动、推送的修复。

范围:包含盯守已开启 PR、踢动停滞 CI、重跑偶发、小的分支导致修复、迟到的评审讨论;不包含开启或刷新 PR(pr-update、cpr)、完整 rebase/红色 CI 大修(pr-ready)、他人的 PR(pr-triage)、未被要求的合并。