SuperAPI AI 工具集

pdd-merge

编程与开发

查看项目

更新于 11-13 16:18

技能介绍

用途

pdd-merge 用于 PDD 拉取请求的合并决策环节。当 Autopilot 在某个 PR 上获得全新的独立检查器 PASS、需要决定合并、写下“would merge”,还是交由人工处理时使用。

主要能力

  • 先读取事实:pdd.json 中的 autopilot.mode、issue 作者、检查器结论、PR head 及其检查结果。若 autopilot.mode 缺失或为 off,则按 RUNBOOK §2 由人工合并。
  • 区分“证据”与“批准”:全新的独立检查器 PASS 只是证据,绝不等于批准;不得编造批准措辞或推断更广泛的权限。严格的批准、信任与仓库要求的人工评审仍然适用。
  • 无检查器结论的 PR(检查器无法运行或未给出结论):添加 pdd:no-verdict 标签,不合并,转下一个 issue。
  • 合并前需满足 $pdd-autopilot 的全部合并条件。
  • 在 Autopilot 运行中,读取 owner notes 以确认被归属的操作者动作或委托及其范围;对于覆盖的非严格闸门,就绪且前置条件满足后,通过 pdd workflow approve N --said -(安全 stdin,RUNBOOK §2)记录该实际动作,无需重复批准。
  • 发布一条 PR 评论,说明人员实际的显式合并授权(不得伪造引用),并给出结论、head 与检查器信息;同时列出用户可见的新措辞(命令名、帮助文本、错误消息)及每处界面变更的截图路径和一行说明,供发布前查看。这些不阻止合并;评论发布失败则停止。
  • 若 PR 1 有 PASS 但无运行时结论,则合并,并在该 PR 上添加 pdd:no-verdict 标签。
  • 合并前后都要求 pdd autopilot check-base RUN PR 退出码为 0;拒绝情况需报告,合并后不一致视为事故。
  • 合并时复查 head,然后运行 gh pr merge PR --merge --match-head-commit <sha>,绝不使用 --auto;head 变化即停止,并回读合并状态。
  • PR 1 之后给 issue 添加 pdd:code-pending 标签;代码 PR 之后,对等待它的每个 issue 以“Fixed in #PR”关闭并移除 pdd:code-pending,同时移除 pdd:working 标签。
  • 每次自动合并后执行合并后审计。

使用方式

在 Autopilot 流程中,依据 pdd.json 配置与 owner notes 判断授权情况,按上述条件决定 observe(写“Would merge”评论交人工)或 auto(满足条件则自动合并),并严格使用规定的命令与标签操作。

适用场景

适用于配置了 PDD Autopilot、存在独立检查器且需要对其 PR 做合并决策与合并后收尾的工程流程。

限制

严格模式必须由人员终端操作,不得绕过或改写批准字段;没有覆盖性授权时须等待实际批准;缺少检查器结论不得合并。