版本生命周期
扩展包版本应不可变。相同 id 和 version 发布后,artifact、hash、签名和 review metadata 不应再被静默替换。
版本号
标题为“版本号”的章节使用语义化版本:
- patch:文档、提示词或不破坏贡献点的小修;
- minor:新增 command、profile、workflow 或可兼容字段;
- major:删除 contribution、改变 command 行为或提高 Jarvis engine 要求。
Channel
标题为“Channel”的章节Registry envelope 可以把同一个版本放进多个 channel:
{ "version": "1.2.3", "channels": ["stable"]}当前公开 catalog 以 stable 为主。未来可以增加 beta/canary,但安装端必须让用户知道 channel 来源。
后端已有更新检查和应用路由:
POST /api/v1/extensions/packs/{pack_id}/updates/checkPOST /api/v1/extensions/packs/{pack_id}/updates/apply更新检查会比较已安装版本和 registry candidate,并返回 diff、review fingerprint 和是否需要能力变更审查。更新应用会重新下载并校验 artifact;如果能力变化需要审查,调用方必须提交刚审查过的 artifact fields,并显式接受能力变化。
更新不是静默后台自动更新。用户仍需要通过 UI 或受控 API 操作来应用新版本。
Yank、Deprecate、Block
标题为“Yank、Deprecate、Block”的章节| 状态 | 含义 |
|---|---|
deprecated |
不推荐新装,但不一定禁止 |
yanked |
从普通解析中撤回 |
blocked |
新安装和启用都应 fail closed |
安全问题优先使用 blocked,并在 changelog 或支持入口说明替代版本。