人怎么审

第 5 课 · 共 6 课 约 8 分钟

逐项批准与拒绝;按入口和策略确认破坏性;核对实际合并检查;处理 main 变更。

本课目标

读完这一课,你将能够

  • 逐项审核一份提案:批准或拒绝,并写下理由
  • 解释破坏性确认方式,并按实际合并检查结果逐项核对
  • 处理冲突:读 conflicts,用 rebase 选保留哪一边

逐项审

上一节已开提案。review 下,在 /semantic 的 Proposals 页或审核地址,用本组织 developer 的网页登录逐项批准或拒绝。yolo 也接受有修改权限的开发者 Key,或主体在本体(Ontology)上是 Editor 或 Owner 的 Agent Key;合格贡献者可自动批准,检查通过后自动合并。

  1. 读触发原因

    问题是真的吗?值得为它改本体吗?

  2. 逐项对照定义

    每一项都能对照 main 上的定义和分支上的定义。改动对得上触发原因吗?名字对不对,有没有说明?

  3. 看验证

    合并检查有没有失败;警告能不能接受;自测里没验证的部分记下来,合并后复核。

  4. 看影响面和破坏性

    这些类型 30 天里谁在用,哪些应用登记了它们,有没有被标成破坏性。

任何一项被拒绝,整份提案都不能合并。智能体按备注改了分支,被改到的项回到待审。网页上可一次批准全部非破坏性项,破坏性项要逐项确认。示例工厂的 DeliveryPromise 提案两项都是新建,都不是破坏性,审完就能合并。

破坏性改动:确认影响

假设几周后,采购智能体要把 material.leadTimeDays 改名为 standardLeadTimeDays。改名涉及删旧属性、加新属性,是破坏性变更。先加新属性并迁移下游。旧属性须先改为 DEPRECATED 或 EXPERIMENTAL,落地后才能提交删除。

网页批准破坏性改动时,输入资源名 material。CLI 用 --confirm-breaking 确认。yolo 下,合格贡献者批准会自动确认破坏性改动,并记录高风险审计。确认前先核对影响面。

随口一问

看到是智能体开的、检查都是绿的,一路点批准。

好的交代

先看下游应用。它们还在读 leadTimeDays,就拒绝并备注:「先加 standardLeadTimeDays,迁移下游。旧属性先改为 DEPRECATED 或 EXPERIMENTAL,落地后再提案删除。」

加Object Type、加属性、加同义词、加 Action 不需要这样确认。删类型、删属性、改属性类型、改主键,以及 Action 删参数或新增必填参数,才需要。

合并检查与合并

全部获有效批准后才能合并。平台会重跑合并检查。逐项核对实际结果,包括引用闭合、名字唯一、主键规则、可编译、无冲突、破坏性确认,以及数据源和状态检查。检查项不固定为六项。

  1. 01全部批准每一项都是已批准,没有拒绝
  2. 02合并检查所有必需检查通过
  3. 03合并review 由人在网页合并;yolo 检查通过后自动合并
  4. 04语义版本发一个新版本,提案与分支转为已合并
  5. 05绑数据、复核智能体接入数据流,回头核对自测里没验的部分

review 由审核的人合并;yolo 检查通过后自动合并。提案记录(Changelog)逐步记下批准、拒绝、合并和语义版本。出了问题,可顺着记录核查。

main 变了怎么办:冲突与 rebase

分支开了几天,main 可能已经被别人改了。分支记着自己开出来时的版本,只有同一个资源两边都改过才算真冲突,别的改动会自动跟上。假设智能体在等审核时,又给分支补了一处:为 purchaseOrder 加了一句说明。而同一时间,同事在 main 上也改了 purchaseOrder 的说明:

aidc semantic branch conflicts delivery-promise
aidc semantic branch rebase delivery-promise --take-main purchaseOrder
# 或者保留分支上的版本:--keep purchaseOrder

--take-main 放弃分支上对这个资源的改动,采用 main 的;--keep 保留分支的。遇到真冲突,好的做法是智能体把两个版本和自己的建议写进提案说明,让审核的人拍板选哪一边。

别让分支闲着:35 天没有动静会转为不活跃,再过 7 天,分支上的改动被删除,打开着的提案也随之关闭。

要点

  • review 只收本组织 developer 的网页登录;yolo 也收合格 Key。任何一项被拒绝,都不能合并。
  • 审的顺序:触发原因、逐项定义、验证、影响面与破坏性。
  • 破坏性改动在网页输入资源名,CLI 用 --confirm-breaking。yolo 贡献者批准可自动确认,并记高风险审计。
  • 按实际合并检查结果逐项核对。review 由人合并,yolo 可自动合并;合并发新语义版本,Changelog 记每一步。
  • main 变了要先 rebase:只有同一资源两边都改才是真冲突,用 --keep 或 --take-main 选一边。

练一练

当一次审核的人

用示例工厂的两份提案练习,不需要真的操作。

DeliveryPromise 提案有两项新建。写出你会核对的四件事,并决定批准还是拒绝。

小测

选一个答案,马上看解析。

Q1在网页审核 material 的破坏性改动时,批准前要做什么?

Q2分支和 main 在同一个资源上都改过,没有选择就 rebase,会怎样?

Q3在 review 策略下,下面哪一种凭证可以批准提案?

延伸阅读