Skip to content

版本与治理 ​

当独立实现者能判断下个月是否仍可互操作时,协议才开始有用。这需要的不只是一个版本字符串,而是兼容规则、弃用窗口、证据链,以及不会静默改变含义的流程。

协议版本 ​

当前协议是 pling.surface/0.1,实现 describe 与 invoke。0.1 表明这是早期、刻意收窄的契约,不承诺未来实验方法已经存在。

若旧客户端能安全忽略增量变化,次版本可以保留:新增可选字段、新能力、只提供信息的返回字段。破坏性变化需要新修订:必填输入、包络形状、方法语义、错误含义或安全规则。客户端绝不能把未知失败解释为成功。

治理要决定什么 ​

  • 谁可以提出协议变更;
  • 接受前需要什么证据;
  • 安全与隐私评审如何记录;
  • 如何至少跨两个实现测试修订;
  • 弃用日期与迁移路径如何公开;
  • 能力何时从“已实现”变成“稳定”;
  • 争议与兼容例外如何处理。

项目仍在建立这套流程。已有规范草案、参考代码、聚焦测试与基准证据,但还没有经过认证的多厂商生态。文档应直接说明这一点。

能力 id 的版本 ​

改变能力含义就是破坏性变更,即使传输仍然合法。如果“审批”开始使用不同限额或作用于不同对象,应使用新 id 或带版本的应用命名空间。外部 Agent 可能依赖旧 id,须在声明的迁移窗口内继续工作。

不要机械地给一切加版本。说明里的错字不是新能力。要判断消费者是否看到契约变化:输入、风险、审批、结果或目标语义。

治理产物 ​

可信发布包含:

  • 协议文本与 schema;
  • 带兼容性分类的变更记录;
  • 一致性用例与观察结果;
  • 安全说明与已知限制;
  • 面向客户端与宿主的迁移指南;
  • 明确 owner 与评审记录。

对年轻项目,最小而诚实的治理是公开 RFC issue、安全敏感变更由两名独立评审者审核、兼容标签和测试产物。没有决定要做之前不要先造委员会;也不要闭门设计一次就称为标准。

与许可证、标准组织的关系 ​

代码使用 Apache-2.0。协议文本计划使用 CC-BY-4.0,参考实现与一致性测试使用 Apache-2.0。许可证允许使用文本或代码,不认证实现,也不授予项目商标使用权。任何认证项目都需要公开标准与商标政策。

项目应先在真实采用中站住,再进入正式标准化。两个真实客户端、可复现基准与公开失败记录的协议,比没有实现者的 logo 更有分量。

参见 许可证与商标、治理与社区与 版本与兼容性。