@sema-ai/registry-core 0.10.3 → 0.10.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,50 @@
2
2
 
3
3
  (始于 0.8.1;更早版本的变更记录散在 commit message 与 README「发版纪律」注记。)
4
4
 
5
+ ## 0.10.6 — 2026-07-13
6
+
7
+ **新增(additive patch):`SealedApiKey.setAt?`(ISO,center 写面 server 端盖章)。** write-only 的
8
+ masked GET 面靠它+publicKeyId 展示「已于 X 设置」——密文本体永不回读;optional(执行侧解密不依赖,
9
+ 本地手写配置零迁移)。钉测 +1,全量 383 绿。
10
+
11
+ ## 0.10.5 — 2026-07-13
12
+
13
+ **新增(additive patch):sealed-box 密钥托管契约 — clay 拍铁律修订:「不存 secret 值」精化为「不存
14
+ 可解明文」(center 可存不可解密的密文)。痛点=接入模型只能填 env-NAME,用户不知道密钥本体去哪配。**
15
+
16
+ - **`ModelEntry.sealedApiKey?`**(默认模式「直接贴 key」的存储形态):`{ ciphertext(base64),
17
+ publicKeyId, alg: "libsodium-sealedbox-x25519" }`。浏览器端用执行域公钥 crypto_box_seal 加密,
18
+ 明文不出浏览器;center 无私钥永远解不开;caps/config 原样下发,执行侧私钥解密注入 env。
19
+ **形状 only 校验**(base64 底线 + max 8192 防 blob;内容对 center 永远不透明)。
20
+ - **互斥语义 = 优先级裁决**:与 `apiKeyEnv`(专家模式 env-NAME 引用)双设合法,执行侧注入时
21
+ **sealed 优先**压过 env 引用;刻意不 schema 层拒双设(切模式免清旧字段)。JSDoc 双向互注。
22
+ - **`execution.publicKeys?`**(执行域公钥登记,收编 execution 域循 sessionMirror 先例零新域):
23
+ `{ publicKeyId, publicKey(base64 恒 44 字符=32 字节 X25519 regex 钉死), createdAt, notes? }[]`。
24
+ center **只登记公钥**,私钥执行侧生成持有永不上行;publicKeyId 表内唯一(密文 ref 目标);
25
+ 多把并存合法(轮换窗口)。optional 无 default = 存量文档字节稳定零迁移。
26
+ - **write-only 纪律(消费方约定,JSDoc 钉死)**:center GET 面永不回 ciphertext 本体(只回
27
+ publicKeyId+设置时间);密文字段绝不进任何日志。schema 不执法读面,这是 API 层契约义务。
28
+ - 钉测 +11(test/sealed-key-0.10.5.test.ts:密文 round-trip / 形状 only 不验内容 / alg literal /
29
+ 双设合法+ABSENT 零迁移 / X25519 长度钉死 / id 唯一+轮换并存 / 存量 execution 文档字节稳定);
30
+ 全量 382 绿(371+11);build 绿。
31
+
32
+ ## 0.10.4 — 2026-07-12
33
+
34
+ **新增(additive patch):`runtimeCaps.autoMode` — auto-mode 分类器 arm 线收编(板 [672]④/[682]①;
35
+ core 批2a seam `RuntimeCaps.autoMode`,`=== true` 显式 opt-in 默认 OFF,allowObservers 同极性)。**
36
+
37
+ - **形状**:`EntitlementRuntimeCaps.autoMode?: boolean`(optional,零迁移——存量文档不含此键=ABSENT
38
+ 语义,字节不变)。
39
+ - **三态语义(ABSENT ≠ false,照 allowObservers 纪律)**:ABSENT = center 没说话 → wire 上**不下发键**
40
+ (core 是唯一默认源,缺席绝不补成显式 false);`true` = 显式为该 principal arm 分类器(部署无 classify
41
+ 腿时 core 侧 no-op——能力门在 core);`false` = 显式 org deny。compose 合成 `RUNTIME_CAP_STRICT.autoMode
42
+ = false`(deny 胜),与 core 的 `=== true` opt-in 检查正交。
43
+ - **与既有 `allowAutoMode` 的分工(勘察结论,两键并存语义清晰)**:`allowAutoMode` = 用户侧 auto 权限模式
44
+ 的按人**准入闸**(may-I ceiling,壳/settings 面,tighten-only;当前全生态零 wire 消费者=壳侧预留位);
45
+ `autoMode` = center 对**服务端分类器腿本身**的部署 arm 决定(core RuntimeCaps 直连)。JSDoc 双向互注。
46
+ - 钉测 +5(照 allowObservers 五测形状:true/false round-trip / ABSENT 不注默认 / 非 boolean 拒 /
47
+ STRICT 表极性 / tier 挂载端到端含双键并存);全量 371 绿(366+5);build 绿。
48
+
5
49
  ## 0.10.3 — 2026-07-12
6
50
 
7
51
  **新增(additive patch,发版纪律「patch 只装 additive 字段」):`runtimeCaps.allowObservers` — observer