@agentunion/fastaun 0.5.34 → 0.5.36

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.
Files changed (88) hide show
  1. package/CHANGELOG.md +56 -1
  2. package/_packed_docs/CHANGELOG.md +56 -1
  3. package/_packed_docs/INDEX.md +18 -11
  4. package/_packed_docs/KITE_DOCS_GUIDE.md +9 -9
  5. package/_packed_docs/agent.md/SCHEMA.md +1 -1
  6. package/_packed_docs/aun/346/265/213/350/257/225/350/277/220/350/241/214/346/214/207/345/215/227.md +2 -2
  7. package/_packed_docs/protocol/Ownership/345/215/217/350/256/256/345/256/232/344/271/2112.1.md +17 -17
  8. package/_packed_docs/protocol/echo-probe-gateway.md +99 -0
  9. package/_packed_docs/protocol/echo-probe-sdk.md +91 -0
  10. package/_packed_docs/sdk/0.5.35-SDK/345/272/224/347/224/250/351/233/206/346/210/220/346/214/207/345/215/227.md +189 -0
  11. package/_packed_docs/sdk/0.5.35-SDK/345/274/200/345/217/221/344/270/216/347/247/273/346/244/215/346/214/207/345/215/227.md +204 -0
  12. package/_packed_docs/sdk/0.5.36-SDK/345/272/224/347/224/250/351/233/206/346/210/220/346/214/207/345/215/227.md +130 -0
  13. package/_packed_docs/sdk/0.5.36-SDK/345/274/200/345/217/221/344/270/216/347/247/273/346/244/215/346/214/207/345/215/227.md +176 -0
  14. package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +2 -2
  15. package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +32 -6
  16. package/_packed_docs/sdk/09-group-rpc-manual.md +7 -7
  17. package/_packed_docs/sdk/AUN_DOCS_GUIDE.md +13 -13
  18. package/_packed_docs/sdk/AUN/344/272/213/344/273/266/345/217/221/345/270/203/350/256/242/351/230/205/345/272/224/347/224/250/351/233/206/346/210/220/346/214/207/345/215/227.md +73 -3
  19. package/_packed_docs/sdk/AUN/344/272/213/344/273/266/345/217/221/345/270/203/350/256/242/351/230/205/345/274/200/345/217/221/347/247/273/346/244/215/346/214/207/345/215/227.md +50 -8
  20. package/_packed_docs/sdk/INDEX.md +23 -18
  21. package/_packed_docs/sdk/Ownership-SDK/347/274/226/346/216/222/346/214/207/345/215/2272.1.md +1 -1
  22. package/_packed_docs/sdk/Ownership2.1-SDK/345/272/224/347/224/250/351/233/206/346/210/220/346/214/207/345/215/227.md +5 -5
  23. package/_packed_docs/sdk/Ownership2.1-SDK/345/274/200/345/217/221/344/270/216/347/247/273/346/244/215/346/214/207/345/215/227.md +5 -5
  24. package/_packed_docs/sdk/Ownership2.1/350/257/246/347/273/206/350/256/276/350/256/241.md +9 -9
  25. package/_packed_docs//346/266/210/346/201/257/345/274/271/346/200/247/350/241/245/346/213/211/351/200/232/351/201/223/345/256/236/346/226/275/350/256/241/345/210/222.md +400 -0
  26. package/_packed_docs//346/266/210/346/201/257/345/274/271/346/200/247/350/241/245/346/213/211/351/200/232/351/201/223/346/226/271/346/241/210.md +485 -0
  27. package/dist/agent-md.d.ts +2 -1
  28. package/dist/agent-md.js +33 -6
  29. package/dist/agent-md.js.map +1 -1
  30. package/dist/aid-store.js +5 -1
  31. package/dist/aid-store.js.map +1 -1
  32. package/dist/auth.js +36 -45
  33. package/dist/auth.js.map +1 -1
  34. package/dist/client/delivery.d.ts +8 -1
  35. package/dist/client/delivery.js +203 -50
  36. package/dist/client/delivery.js.map +1 -1
  37. package/dist/client/lifecycle.js +10 -1
  38. package/dist/client/lifecycle.js.map +1 -1
  39. package/dist/client/rpc-pipeline.d.ts +4 -0
  40. package/dist/client/rpc-pipeline.js +93 -10
  41. package/dist/client/rpc-pipeline.js.map +1 -1
  42. package/dist/client/sync-channels.d.ts +2 -1
  43. package/dist/client/sync-channels.js +33 -14
  44. package/dist/client/sync-channels.js.map +1 -1
  45. package/dist/client/v2-e2ee.d.ts +1 -0
  46. package/dist/client/v2-e2ee.js +24 -6
  47. package/dist/client/v2-e2ee.js.map +1 -1
  48. package/dist/client.d.ts +15 -0
  49. package/dist/client.js +329 -56
  50. package/dist/client.js.map +1 -1
  51. package/dist/events.d.ts +1 -0
  52. package/dist/events.js +5 -0
  53. package/dist/events.js.map +1 -1
  54. package/dist/index.d.ts +2 -0
  55. package/dist/index.js +1 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/mail-client.d.ts +101 -0
  58. package/dist/mail-client.js +369 -0
  59. package/dist/mail-client.js.map +1 -0
  60. package/dist/ownership-v21.d.ts +2 -1
  61. package/dist/ownership-v21.js +19 -9
  62. package/dist/ownership-v21.js.map +1 -1
  63. package/dist/pubsub/binding.js +9 -2
  64. package/dist/pubsub/binding.js.map +1 -1
  65. package/dist/pubsub/channel.d.ts +11 -3
  66. package/dist/pubsub/channel.js +91 -10
  67. package/dist/pubsub/channel.js.map +1 -1
  68. package/dist/pubsub/client.d.ts +8 -2
  69. package/dist/pubsub/client.js +62 -21
  70. package/dist/pubsub/client.js.map +1 -1
  71. package/dist/pubsub/index.d.ts +2 -2
  72. package/dist/pubsub/index.js +1 -1
  73. package/dist/pubsub/index.js.map +1 -1
  74. package/dist/pubsub/service.d.ts +6 -0
  75. package/dist/pubsub/service.js +101 -10
  76. package/dist/pubsub/service.js.map +1 -1
  77. package/dist/pubsub/types.d.ts +11 -1
  78. package/dist/tools/cross-sdk-agent.d.ts +1 -1
  79. package/dist/transport.d.ts +4 -0
  80. package/dist/transport.js +39 -2
  81. package/dist/transport.js.map +1 -1
  82. package/dist/udp-standby.d.ts +88 -0
  83. package/dist/udp-standby.js +483 -0
  84. package/dist/udp-standby.js.map +1 -0
  85. package/dist/version.d.ts +1 -1
  86. package/dist/version.js +1 -1
  87. package/package.json +5 -1
  88. package/scripts/patch-imapflow-external.mjs +69 -0
package/CHANGELOG.md CHANGED
@@ -6,7 +6,62 @@
6
6
 
7
7
  ---
8
8
 
9
- ## 0.5.34 — 未发布
9
+ ## 0.5.36 — 未发布
10
+
11
+ 对照 `0.5.35` 仓库基线 `80cf7cf49` 整理当前源码增量;四端实现、配套服务依赖及验证范围见 [parity 0.5.36](../python/CHANGES_FOR_PARITY.md#v0536)。
12
+
13
+ ### EventService 消息大小
14
+
15
+ - 移除发布、Bus 受理和订阅接收的独立 64 KiB 限制,事件沿用普通 RPC/`message.send` 的完整 WebSocket 报文上限 `1_000_000` 字节;JSON、控制信封和 E2EE 开销计入该上限,事件正文可用空间相应减少。
16
+ - 收发令牌桶的字节突发额度提高至 `1_000_000`,按实际序列化字节数扣费;持续速率、队列数量/总字节、TTL、去重和背压约束继续生效。旧 `max_event_bytes`/`event_bytes` 不再用于单事件大小判断。
17
+
18
+ ### Ownership 共识缓存与证书验签
19
+
20
+ - `checkOwnershipConsensus` 和 `AIDStore.resolve` 的 Ownership 查询复用已达共识的本地持久快照,保存共识时的 agent.md 正文及 `owner_md_sha256`,新 Client/重启后可恢复。
21
+ - 观察 agent.md ETag、Owner 文件摘要和观察代次,变化后重新校验;非共识、缺失或本地材料不一致时继续联网。持久化失败或异步查询期间观察变化的结果不进入可复用缓存。
22
+ - 历史 Ownership 文件的主签、附签接受有效的 `active_signing`/`verify_only` 证书,继续核验 AID、指纹、有效期、信任链和撤销状态;新签 owner.md/agent.md(含群/组织及清理路径)仍须使用 `active_signing`。
23
+
24
+ ### 消息交付与 UDP 待机
25
+
26
+ - 群 inline 消息可在同一 namespace 内保留多条待确认记录;累计 ACK 仅完成已提交项,减少因前一条待 ACK 而退回 Pull 的情况。
27
+ - 已确认水位可消解同代际内尚未发送的冗余后台 ACK;P2P 在线提交覆盖自动补拉目标时减少重复 Pull,并保留补发 ACK 责任。
28
+ - UDP 租约按服务端期限与当前心跳周期的 2.5 倍取较短值,先应用心跳回复的新周期再续租;移除固定对账重连及连续三次超时唤醒条件,由租约/ticket 期限和业务唤醒恢复 WebSocket。
29
+
30
+ ### 版本与验证
31
+
32
+ - 包配置、锁文件、运行时及相关测试引用统一为 `0.5.36`;本轮 Ownership 回归 460 项、实体发布专项 3 项及类型检查通过。版本一致性与 Browser 加密 conformance 等沿用前阶段记录;未运行功能全量或线上 E2E。
33
+ - 配套服务继续按单实例范围记录;原生 MailClient 的整体端到端验收状态沿用 0.5.35 边界。
34
+
35
+ ## 0.5.35 — 2026-11-12
36
+
37
+ 对照已发布的 `0.5.34`,包含发布后的已提交变更及当前工作区增量;比较基线和四端实现边界见 [parity 0.5.35](../python/CHANGES_FOR_PARITY.md#v0535)。
38
+
39
+ ### EventService 订阅与本地收发
40
+
41
+ - `subscribe`/`unsubscribe` 支持点分层 `*` 通配事件名;按当前目录和授权展开,不支持 `**` 或自动匹配未来新增事件。
42
+ - `subscribe(busAid, events, options)` 新增 `publisherAids`、`publisherTypes`、`publisherExttypes`;线上字段为 snake_case,同字段内任一匹配、不同字段同时满足,类型取自验签通过的发布者名片。
43
+ - 过滤条件随 SQLite 订阅状态持久化及恢复;订阅条件变化时淘汰队列中属于旧订阅代次的事件。同一 Client、Bus AID 和 device/slot 可在进程内收发,保留授权、租约、TTL、容量及去重边界。
44
+
45
+ ### 消息同步与 Echo
46
+
47
+ - 后台 Pull 提交后异步合并累计 ACK,失败重试、更新发送参数并隔离身份/连接/namespace 代际;前台 Pull 继续等待 ACK,关闭时有限等待后台确认。
48
+ - 减少已被在线交付覆盖的重复 Pull/ACK;历史同步移除 `history_bytes_per_second` 主动节流,保留并发、页字节、在途内存和背压限制,辅助连接创建/退役时更新需求通知。
49
+ - 连接成功后的自动补拉和组织身份恢复随机延后 30–60 秒,执行前复核当前身份和连接,关闭或切换身份时取消旧任务。
50
+ - 对齐 Echo v3.2 三前缀、强制明文、单一递减 `hop`、完整 trace 和真实耗时;提前返程通过现有单聊/群应用事件交付。
51
+ - 明文 Echo 的发送失败/超时生成含 `reason`、`delivery_state` 和错误明细的 `echo_return`;认证错误、密文及应用回调错误保持原错误边界。
52
+
53
+ ### UDP 待机与原生邮件
54
+
55
+ - Node 新增 `udp_standby_v1` 长连接空闲待机及 WebSocket 唤醒恢复;业务 RPC、消息通知、租约期限和心跳故障可唤醒,待确认/同步任务阻止入睡,`gateway.sync_demand` 不计作业务活动。
56
+ - 导出独立 `MailClient`/`MailClientError` 及类型,支持 AID 证书认证、SMTP STARTTLS、IMAPS、MIME/附件、逐收件人结果、Sent 副本、UID 操作、流式读取、watch 和凭据轮换。
57
+ - 邮件信封规范化并去重收件人,不改写调用方对象;修复 ImapFlow ESM/CJS 的 SEARCH、COPY、MOVE、EXPUNGE、STORE 错误传播,协议失败不再返回假成功/空结果,并保留合法空查询结果。
58
+ - 原生邮件依赖独立 Mail 服务;旧 `client.mail` RPC 门面保留兼容。Mail 整体验收仍未完成,本次配套服务按单实例支持发布;Browser JS 不提供本节的原生 UDP/SMTP/IMAP 能力。
59
+
60
+ ### 版本与验证
61
+
62
+ - 包配置、锁文件和运行时版本统一为 `0.5.35`,增加 UDP、Mail、Echo、订阅过滤及后台 ACK 回归覆盖;本条目不代表全量/公网/跨域验收已经通过。
63
+
64
+ ## 0.5.34 — 已发布
10
65
 
11
66
  相对已发布的 `0.5.33` 整理当前工作区增量;四端接口、实现差异和服务依赖见 [Python parity 文档](../python/CHANGES_FOR_PARITY.md#v0534)。
12
67
 
@@ -6,7 +6,62 @@
6
6
 
7
7
  ---
8
8
 
9
- ## 0.5.34 — 未发布
9
+ ## 0.5.36 — 未发布
10
+
11
+ 对照 `0.5.35` 仓库基线 `80cf7cf49` 整理当前源码增量;四端实现、配套服务依赖及验证范围见 [parity 0.5.36](../python/CHANGES_FOR_PARITY.md#v0536)。
12
+
13
+ ### EventService 消息大小
14
+
15
+ - 移除发布、Bus 受理和订阅接收的独立 64 KiB 限制,事件沿用普通 RPC/`message.send` 的完整 WebSocket 报文上限 `1_000_000` 字节;JSON、控制信封和 E2EE 开销计入该上限,事件正文可用空间相应减少。
16
+ - 收发令牌桶的字节突发额度提高至 `1_000_000`,按实际序列化字节数扣费;持续速率、队列数量/总字节、TTL、去重和背压约束继续生效。旧 `max_event_bytes`/`event_bytes` 不再用于单事件大小判断。
17
+
18
+ ### Ownership 共识缓存与证书验签
19
+
20
+ - `checkOwnershipConsensus` 和 `AIDStore.resolve` 的 Ownership 查询复用已达共识的本地持久快照,保存共识时的 agent.md 正文及 `owner_md_sha256`,新 Client/重启后可恢复。
21
+ - 观察 agent.md ETag、Owner 文件摘要和观察代次,变化后重新校验;非共识、缺失或本地材料不一致时继续联网。持久化失败或异步查询期间观察变化的结果不进入可复用缓存。
22
+ - 历史 Ownership 文件的主签、附签接受有效的 `active_signing`/`verify_only` 证书,继续核验 AID、指纹、有效期、信任链和撤销状态;新签 owner.md/agent.md(含群/组织及清理路径)仍须使用 `active_signing`。
23
+
24
+ ### 消息交付与 UDP 待机
25
+
26
+ - 群 inline 消息可在同一 namespace 内保留多条待确认记录;累计 ACK 仅完成已提交项,减少因前一条待 ACK 而退回 Pull 的情况。
27
+ - 已确认水位可消解同代际内尚未发送的冗余后台 ACK;P2P 在线提交覆盖自动补拉目标时减少重复 Pull,并保留补发 ACK 责任。
28
+ - UDP 租约按服务端期限与当前心跳周期的 2.5 倍取较短值,先应用心跳回复的新周期再续租;移除固定对账重连及连续三次超时唤醒条件,由租约/ticket 期限和业务唤醒恢复 WebSocket。
29
+
30
+ ### 版本与验证
31
+
32
+ - 包配置、锁文件、运行时及相关测试引用统一为 `0.5.36`;本轮 Ownership 回归 460 项、实体发布专项 3 项及类型检查通过。版本一致性与 Browser 加密 conformance 等沿用前阶段记录;未运行功能全量或线上 E2E。
33
+ - 配套服务继续按单实例范围记录;原生 MailClient 的整体端到端验收状态沿用 0.5.35 边界。
34
+
35
+ ## 0.5.35 — 2026-11-12
36
+
37
+ 对照已发布的 `0.5.34`,包含发布后的已提交变更及当前工作区增量;比较基线和四端实现边界见 [parity 0.5.35](../python/CHANGES_FOR_PARITY.md#v0535)。
38
+
39
+ ### EventService 订阅与本地收发
40
+
41
+ - `subscribe`/`unsubscribe` 支持点分层 `*` 通配事件名;按当前目录和授权展开,不支持 `**` 或自动匹配未来新增事件。
42
+ - `subscribe(busAid, events, options)` 新增 `publisherAids`、`publisherTypes`、`publisherExttypes`;线上字段为 snake_case,同字段内任一匹配、不同字段同时满足,类型取自验签通过的发布者名片。
43
+ - 过滤条件随 SQLite 订阅状态持久化及恢复;订阅条件变化时淘汰队列中属于旧订阅代次的事件。同一 Client、Bus AID 和 device/slot 可在进程内收发,保留授权、租约、TTL、容量及去重边界。
44
+
45
+ ### 消息同步与 Echo
46
+
47
+ - 后台 Pull 提交后异步合并累计 ACK,失败重试、更新发送参数并隔离身份/连接/namespace 代际;前台 Pull 继续等待 ACK,关闭时有限等待后台确认。
48
+ - 减少已被在线交付覆盖的重复 Pull/ACK;历史同步移除 `history_bytes_per_second` 主动节流,保留并发、页字节、在途内存和背压限制,辅助连接创建/退役时更新需求通知。
49
+ - 连接成功后的自动补拉和组织身份恢复随机延后 30–60 秒,执行前复核当前身份和连接,关闭或切换身份时取消旧任务。
50
+ - 对齐 Echo v3.2 三前缀、强制明文、单一递减 `hop`、完整 trace 和真实耗时;提前返程通过现有单聊/群应用事件交付。
51
+ - 明文 Echo 的发送失败/超时生成含 `reason`、`delivery_state` 和错误明细的 `echo_return`;认证错误、密文及应用回调错误保持原错误边界。
52
+
53
+ ### UDP 待机与原生邮件
54
+
55
+ - Node 新增 `udp_standby_v1` 长连接空闲待机及 WebSocket 唤醒恢复;业务 RPC、消息通知、租约期限和心跳故障可唤醒,待确认/同步任务阻止入睡,`gateway.sync_demand` 不计作业务活动。
56
+ - 导出独立 `MailClient`/`MailClientError` 及类型,支持 AID 证书认证、SMTP STARTTLS、IMAPS、MIME/附件、逐收件人结果、Sent 副本、UID 操作、流式读取、watch 和凭据轮换。
57
+ - 邮件信封规范化并去重收件人,不改写调用方对象;修复 ImapFlow ESM/CJS 的 SEARCH、COPY、MOVE、EXPUNGE、STORE 错误传播,协议失败不再返回假成功/空结果,并保留合法空查询结果。
58
+ - 原生邮件依赖独立 Mail 服务;旧 `client.mail` RPC 门面保留兼容。Mail 整体验收仍未完成,本次配套服务按单实例支持发布;Browser JS 不提供本节的原生 UDP/SMTP/IMAP 能力。
59
+
60
+ ### 版本与验证
61
+
62
+ - 包配置、锁文件和运行时版本统一为 `0.5.35`,增加 UDP、Mail、Echo、订阅过滤及后台 ACK 回归覆盖;本条目不代表全量/公网/跨域验收已经通过。
63
+
64
+ ## 0.5.34 — 已发布
10
65
 
11
66
  相对已发布的 `0.5.33` 整理当前工作区增量;四端接口、实现差异和服务依赖见 [Python parity 文档](../python/CHANGES_FOR_PARITY.md#v0534)。
12
67
 
@@ -1,6 +1,6 @@
1
1
  # AUN SDK Core 文档索引
2
2
 
3
- > 当前四 SDK 源码版本为 **0.5.34**,现行接口见 [SDK 索引](sdk/INDEX.md)、[API 手册](sdk/06-API手册.md)及各 RPC 手册;版本专题和 CHANGELOG 保留原版本。根级索引采用三层结构:Layer 1 快速定位,Layer 2 按主题查找,Layer 3 重点文档摘要。P2P 保留共享 seq、按 sender 隔离游标,网络 Pull Gate 同 namespace 单飞、每客户端最多4个并行,末页独立 ACK。
3
+ > 当前四 SDK 源码版本为 **0.5.36**,本版接入与实现见 [0.5.36 应用集成指南](sdk/0.5.36-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.36-SDK开发与移植指南.md),源码增量见 [parity 0.5.36](../python/CHANGES_FOR_PARITY.md#v0536) 和四 SDK CHANGELOG;[0.5.35 应用集成指南](sdk/0.5.35-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.35-SDK开发与移植指南.md)与 [parity 0.5.35](../python/CHANGES_FOR_PARITY.md#v0535) 保留历史记录,现行接口见 [SDK 索引](sdk/INDEX.md)、[API 手册](sdk/06-API手册.md)及各 RPC 手册;版本专题和 CHANGELOG 保留原版本。根级索引采用三层结构:Layer 1 快速定位,Layer 2 按主题查找,Layer 3 重点文档摘要。P2P 保留共享 seq、按 sender 隔离游标,网络 Pull Gate 同 namespace 单飞、每客户端最多4个并行,末页独立 ACK。
4
4
 
5
5
  ---
6
6
 
@@ -21,7 +21,8 @@
21
21
  | [AUN 服务 Go 化重构精细化源码审查](audit/AUN服务Go化重构精细化源码审查-20260718.md) | 10 个 AUN 服务的 Go/Python 调用链、字段、并发、安全与性能修复终审;开放 P0/P1/P2 已归零,并附 Claude 60+76 条复审映射、跨实例/资源边界修复和 Docker/Linux 2344 条 Python 回归证据 |
22
22
  | [AUNClient 拆分重构执行方案](design/AUNClient拆分重构执行方案.md) | Python / Go / TS / JS SDK AUNClient 内部拆分边界、执行步骤和验收矩阵 |
23
23
  | [AUNClient 门面化与 Runtime 状态迁移细化方案](design/AUNClient门面化与Runtime状态迁移细化方案.md) | AUNClient 完全门面化、ClientRuntime 单一状态源和四端分批迁移步骤 |
24
- | [0.5.34 SDK 应用集成指南](sdk/0.5.34-SDK应用集成指南.md) / [开发与移植指南](sdk/0.5.34-SDK开发与移植指南.md) | 对照已发布 0.5.33:EventService 多角色、目录与发布队列持久化、实时目录、Storage 条件 ACL、Group FS、Service Proxy 及弹性补拉 |
24
+ | [0.5.36 应用集成指南](sdk/0.5.36-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.36-SDK开发与移植指南.md)、[变更与跨端对齐](../python/CHANGES_FOR_PARITY.md#v0536);四 SDK CHANGELOG | 事件大小/令牌桶、共识持久复用与观察失效、历史验签/新签、UDP 租约、Node/Go 差异、服务依赖及单实例边界 |
25
+ | [0.5.35 应用集成指南](sdk/0.5.35-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.35-SDK开发与移植指南.md);[0.5.35 变更与跨端对齐](../python/CHANGES_FOR_PARITY.md#v0535);[0.5.34 应用指南](sdk/0.5.34-SDK应用集成指南.md) / [移植指南](sdk/0.5.34-SDK开发与移植指南.md)保留历史专题 | 对照已发布 0.5.34:通配订阅/发布者过滤、本地事件收发、后台 ACK、Echo v3.2;三端 UDP/原生 Mail、语言专属修复及单实例发布边界 |
25
26
  | [0.5.33 SDK 应用集成指南](sdk/0.5.33-SDK应用集成指南.md) / [开发与移植指南](sdk/0.5.33-SDK开发与移植指南.md) | 弹性补拉:应用面板配置/流程/故障边界 L404-464;四端用途认证、策略准入、共享预算与断线退主 L413-499;保留本版控制消息、Ownership和ACL专题 |
26
27
  | [消息同步与历史拉取改造方案](消息同步与历史拉取改造方案.md) / [消息弹性补拉通道方案](消息弹性补拉通道方案.md) / [消息弹性补拉通道实施计划](消息弹性补拉通道实施计划.md) | Forward A/T/H 窗口、Group 可见性、Tail/History RPC、页内有序发布、跨页幂等排序、三 Pull Gate、缺 sender IK bootstrap及坏密文推进;弹性通道契约:本轮Gateway同AID+设备最多授权1条、SDK按策略支持0..N(协议测试到2)、同namespace串行/跨namespace并行、history_sync、面板持久开关、断线退主、独立volatile与共享预算;实施计划L338-375为原额度历史证据(不证明新规则通过),新Gateway上限、四端策略行为和Ubuntu验收待完成 |
27
28
  | [P2P 消息 TTL 内存缓存方案](design/P2P消息TTL内存缓存方案.md) | `message.send` 秒级 TTL 钳制、持久/volatile 双游标、按 device 收件箱、隐藏 slot lease/ACK、文件 epoch、消息调试计数器与 payload type 分类、多实例/跨域和四 SDK 测试矩阵 |
@@ -40,7 +41,7 @@
40
41
  | [E2EE V2 简化为 1DH + Per-AID Wrap 方案](design/E2EE_V2简化为1DH加Per-AID_Wrap方案.md) | SDK bootstrap 能力声明 + 服务端 policy 控制 1DH/per-AID wrap 的兼容方案 |
41
42
  | [E2EE V2 消息通信时序图](sdk/E2EE_V2消息通信时序图.md) | 当前 V2-only P2P / Group 明文与加密主链路、设备密钥注册和 pull/ack 时序 |
42
43
  | [ProtectedHeaders 用法专题](sdk/ProtectedHeaders用法专题.md) | 四 SDK `protected_headers` API、E2EE V2 元数据 HMAC、自动字段和接收信任边界 |
43
- | [Ownership 协议定义 2.1](protocol/Ownership协议定义2.1.md) | agent.md/owner.md 关系、原格式兼容、release/清理/重绑版本、Header 投影、普通 agent.md 独立及旧 SDK 兼容;非权威 P2P 编排与 Group/Org 专属生命周期、实体主签、owner token 上传与可选附签和实体证书代际 |
44
+ | [Ownership 协议定义 2.1](protocol/Ownership协议定义2.1.md) | agent.md/owner.md 关系、原格式兼容、release/清理/重绑版本、Header 投影、普通 agent.md 独立及旧 SDK 兼容;非权威 P2P 编排;现代 Group/Org 统一声明/共识、专属生命周期、实体主签及 owner token 上传;旧实体读取兼容 |
44
45
  | [Ownership SDK 编排指南 2.1](sdk/Ownership-SDK编排指南2.1.md) | 历史编排方案;持久任务、自动恢复及一次性决定已由当前两份指南中的无状态流程替代 |
45
46
  | [Ownership 2.1 SDK 应用集成指南](sdk/Ownership2.1-SDK应用集成指南.md) | 应用侧 TS 接线与审批;双向绑定、释放、转移、两个 local 编排及显式重试的流程图与示例,以 NS 当前归属为准 |
46
47
  | [Ownership 2.1 SDK 开发与移植指南](sdk/Ownership2.1-SDK开发与移植指南.md) | SDK 内部签验、NS 验收、Storage 条件发布、消息处理、两/三身份本地编排及文件 CAS;不维护 Ownership 任务或 WAL |
@@ -49,7 +50,7 @@
49
50
  | [凭证服务 RPC 手册](sdk/09-凭证服务RPC手册.md) | 旧版及六语义RPC、修订CAS/额度协调、签名CRL与十错误码 |
50
51
  | [语义凭证示例与验证](../examples/semantic-credential/示例使用指南.md) | E01—E36配置、CN/本地aid.com、真实浏览器/普通凭证冷恢复及证据边界 |
51
52
  | [组织服务 RPC 手册](sdk/09-组织服务RPC手册.md) | Org Service 生命周期、成员、受保护查询、审计/授权及内部/未实现方法 |
52
- | [Ownership 2.1 详细设计](sdk/Ownership2.1详细设计.md) | agent.md 兼容非回归原则与审查矩阵、旧 SDK owner RPC/JSONL 隔离、SDK/NS/Storage 职责;关系事实依赖`sub_aid/agent.md` 与 owner_aid 规范路径的 `owner.md`,普通名片和其 Storage 副本独立 |
53
+ | [Ownership 2.1 详细设计](sdk/Ownership2.1详细设计.md) | agent.md 兼容非回归原则与审查矩阵、旧 SDK owner RPC/JSONL 隔离、SDK/NS/Storage 职责及现代 Group/Org 声明/共识与生命周期边界;关系事实依赖`sub_aid/agent.md` 与 owner_aid 规范路径的 `owner.md`,普通名片和其 Storage 副本独立 |
53
54
  | [Ownership 2.1 TDD 分阶段实施计划](sdk/Ownership2.1-TDD分阶段实施计划.md) | 历史分阶段计划、冻结契约、HTTP 428 与错误分类、共同向量及四 SDK 实际验收范围 |
54
55
  | [Ownership 管理专题(legacy)](sdk/Ownership管理专题.md) | 历史 `aun.ownership.v1`、proof、托管、代签、代上传与 rekey 记录,不作为 2.1 接入依据 |
55
56
  | [Ownership SDK 集成指南(legacy)](sdk/Ownership-SDK集成指南.md) | 2026-10-09 历史 TypeScript 应用接入、旧审批 API 与自动编排记录 |
@@ -74,7 +75,7 @@
74
75
  | [SDK 文档索引](sdk/INDEX.md) | SDK 使用手册、P2P peer 能力/游标、完整 pending peers/快照、need_render、50k 内存去重/应用持久幂等、四端门面、RPC、E2EE、Storage VFS、Group FS 和 Collab 的子索引 |
75
76
  | [SDK 查阅指南](sdk/AUN_DOCS_GUIDE.md) | SDK 文档按行区间渐进式查阅方法 |
76
77
  | [AUN SDK 0.5.6 更新日志](sdk/CHANGELOG-0.5.6.md) | 以 0.5.5 为基线的四 SDK 发布汇总;覆盖首次签名者回源、下载提交前验签、消息窗口、显式 change-seed 和语言能力边界 |
77
- | [四 SDK 版本对齐变更清单](../python/CHANGES_FOR_PARITY.md);[0.5.29 应用指南](sdk/0.5.29-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.29-SDK开发与移植指南.md)、[共识与上传对齐](../python/CHANGES_FOR_PARITY.md#v0529--共识查询缓存与普通上传未发布);[0.5.28 应用指南](sdk/0.5.28-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.28-SDK开发与移植指南.md);[0.5.27 应用指南](sdk/0.5.27-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.27-SDK开发与移植指南.md) | v0.3.3 至 v0.5.29 跨语言对齐清单;当前指南覆盖应用接入、NS 单次查询、无 TTL 的 ETag 缓存、resolve、上传锁/恢复和四端移植;旧版记录保留 |
78
+ | [四 SDK 版本对齐变更清单](../python/CHANGES_FOR_PARITY.md);[0.5.29 应用指南](sdk/0.5.29-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.29-SDK开发与移植指南.md)、[共识与上传对齐](../python/CHANGES_FOR_PARITY.md#v0529--共识查询缓存与普通上传未发布);[0.5.28 应用指南](sdk/0.5.28-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.28-SDK开发与移植指南.md);[0.5.27 应用指南](sdk/0.5.27-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.27-SDK开发与移植指南.md) | v0.3.3 至 v0.5.36 跨语言对齐清单;0.5.29 历史指南覆盖应用接入、NS 单次查询、无 TTL 的 ETag 缓存、resolve、上传锁/恢复和四端移植;旧版记录保留 |
78
79
  | [AUN CLI 手册](cli/CLI手册.md) | Python CLI入口、profile及主要命令;credential 23命令、组织入口、文件/上下文、原字节和错误退出 |
79
80
  | [AUN CLI 设计文档](cli/AUN-CLI设计文档.md) | `python/src/aun_cli` 当前实现架构、命令注册面、配置解析、SDK 桥接和实现边界 |
80
81
  | [凭证与组织服务 CLI 开发与使用指南](cli/凭证与组织服务CLI开发与使用指南.md) | 流程图+TS示例;真实CLI调用、凭证全流程、组织材料衔接与SDK胶水开发 |
@@ -136,6 +137,8 @@
136
137
 
137
138
  ### SDK 使用与协议
138
139
 
140
+ - 当前 0.5.36 应用升级、大事件、持久共识、证书与 UDP → [应用集成指南](sdk/0.5.36-SDK应用集成指南.md);缓存失效、NS 配套、验签/新签及四端实现契约 → [开发与移植指南](sdk/0.5.36-SDK开发与移植指南.md);源码与已有验证 → [四端 parity](../python/CHANGES_FOR_PARITY.md#v0536) 和四 SDK CHANGELOG
141
+
139
142
  - 0.5.21 应用开发者的 TypeScript 接入、消息入库与 UI、resolve、Ownership、凭证组织及升级验收 → [应用集成指南](sdk/0.5.21-SDK应用集成指南.md)
140
143
  - 0.5.21 SDK 开发者的分层、peer/batch 提交、共识缓存、原件恢复、持久化和跨语言验收 → [开发与移植指南](sdk/0.5.21-SDK开发与移植指南.md)
141
144
  - 0.5.22 应用接入、两种绑定与审批恢复、resolve、60 秒读缓存与刷新、撤销同步及完整成员包 → [应用集成指南](sdk/0.5.22-SDK应用集成指南.md)
@@ -144,7 +147,7 @@
144
147
  - 0.5.24 SDK 分层、消息提交、Ownership/Stage/CAS、local 身份隔离、缓存新鲜度、跨端差异及 Rust 核查 → [开发与移植指南](sdk/0.5.24-SDK开发与移植指南.md)
145
148
  - Python / TS / Go / JS SDK 使用手册,P2P peer 能力、共享 seq/隔离游标、轻量 pending peers/可选整体估计快照、目录/Pull逐页next_pending_seq持续提示/每N次FIFO、peer ACK/slot 公共 S、need_render/页内渲染计数、50k 内存去重/应用持久幂等,以及 Python PushFacade → [SDK 文档索引](sdk/INDEX.md)、[Message RPC](sdk/09-message-rpc-manual.md)、[服务协议](protocol/06-服务协议.md#63-点对点消息-message)
146
149
  - SDK 风控能力、内部控制消费、RPC/HTTP 门控、断线等待、旧端兼容、服务端执行与 Console 解封 → [风控响应与 SDK 协同方案](风控响应与SDK协同方案.md)
147
- - Ownership 2.1 agent.md/owner.md 关系、原格式兼容、普通 agent.md 独立、release 保持当前版本、清理后版本投影为 0/重绑默认 1、响应 Header 只投影校验结果、普通 agent owner 可选及旧 SDK 隔离兼容 → [协议定义 2.1](protocol/Ownership协议定义2.1.md)、[详细设计](sdk/Ownership2.1详细设计.md)
150
+ - Ownership 2.1 agent.md/owner.md 关系、原格式兼容、普通 agent.md 独立、release 保持当前版本、清理后版本投影为 0/重绑默认 1、响应 Header 只投影校验结果、普通 agent owner 可选、现代 Group/Org 双文件共识及旧 SDK 隔离兼容 → [协议定义 2.1](protocol/Ownership协议定义2.1.md)、[详细设计](sdk/Ownership2.1详细设计.md)
148
151
  - Ownership 2.1 应用接入:双向绑定、释放、转移、两个 local 编排、审批和显式重试的 TS 示例/流程图 → [应用集成指南](sdk/Ownership2.1-SDK应用集成指南.md)
149
152
  - Ownership 2.1 SDK 移植:文件签验、NS 验收、条件发布、通用消息交付、本地编排和文件 CAS → [开发与移植指南](sdk/Ownership2.1-SDK开发与移植指南.md)
150
153
  - Credential/Org 应用接入:结构化约束、委托、登记、完整Verify与状态/CRL;语义原件、请求与业务验收 → [应用集成指南](sdk/凭证与组织服务SDK应用集成指南.md)§3—§4
@@ -162,7 +165,7 @@
162
165
  - 四 SDK resolve 的 opts/输入输出、frontmatter 全字段与类型、按需 ownership 共识及 owner.md 缓存 → [resolve 规格](sdk/06-API手册.md#resolve-输入与输出)、[连接与认证](sdk/04-连接与认证.md)
163
166
  - 按主题和行区间查 SDK 文档 → [SDK 查阅指南](sdk/AUN_DOCS_GUIDE.md)
164
167
  - 四 SDK 0.5.6 发布摘要、首次签名者回源、可信缓存提交、消息窗口、语言能力边界 → [AUN SDK 0.5.6 更新日志](sdk/CHANGELOG-0.5.6.md)
165
- - 四 SDK 0.5.29 应用接入、共识输入输出、resolve、普通上传及业务服务 → [应用指南](sdk/0.5.29-SDK应用集成指南.md);查询缓存、并发、上传恢复、NS 配套及四端落点 → [开发与移植指南](sdk/0.5.29-SDK开发与移植指南.md);增量和已有验证见 [当前 parity](../python/CHANGES_FOR_PARITY.md#v0529--共识查询缓存与普通上传未发布)。接口摘要见 [Python](../python/CHANGELOG.md)、[Go](../go/CHANGELOG.md)、[TS](../ts/CHANGELOG.md)、[JS](../js/CHANGELOG.md) CHANGELOG。
168
+ - 四 SDK 0.5.35 增量、四端能力矩阵及单实例/Mail 验证边界 → [0.5.35 应用集成指南](sdk/0.5.35-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.35-SDK开发与移植指南.md);[当前 parity](../python/CHANGES_FOR_PARITY.md#v0535);0.5.29 历史应用接入、共识输入输出、resolve、普通上传及业务服务 → [应用指南](sdk/0.5.29-SDK应用集成指南.md);查询缓存、并发、上传恢复、NS 配套及四端落点 → [开发与移植指南](sdk/0.5.29-SDK开发与移植指南.md);当版增量和已有验证见 [历史 parity](../python/CHANGES_FOR_PARITY.md#v0529--共识查询缓存与普通上传未发布)。接口摘要见 [Python](../python/CHANGELOG.md)、[Go](../go/CHANGELOG.md)、[TS](../ts/CHANGELOG.md)、[JS](../js/CHANGELOG.md) CHANGELOG。
166
169
  - 四 SDK 0.5.28 的 agent.md 校验、共识 fresh、分类控制消息、Owner 通知与风控,以及四端差异和验证范围 → [0.5.28 应用指南](sdk/0.5.28-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.28-SDK开发与移植指南.md);实现对照见 [历史 parity](../python/CHANGES_FOR_PARITY.md#v0528--校验控制消息与风控未发布)。0.5.28 及更早记录中的公共共识查询以 0.5.29 增量为准。
167
170
  - Python CLI 源码位置、安装运行入口、全局选项、profile 配置、身份/消息/群组/Storage/Group FS/Collab/诊断等命令用法 → [AUN CLI 手册](cli/CLI手册.md)
168
171
  - Python CLI 当前实现架构、`main.py` 命令注册、`CLISession` SDK 桥接、配置解析和实现边界 → [AUN CLI 设计文档](cli/AUN-CLI设计文档.md)
@@ -387,13 +390,13 @@ TypeScript 身份与消息接线、Ownership 审批恢复、resolve、默认缓
387
390
 
388
391
  ### Ownership 协议定义 2.1
389
392
 
390
- 定义 NS 当前 `agent.md` 与 owner Storage 当前 `owner.md` 的原始字节多签、逐块 prefix 验证、multi-v1 表示协商、自身份上传、owner.md 权限和当前关系校验;owner 锁与响应 Header 只投影本次材料的校验结果。release 保持被释放的版本 v,sub 清理关系字段后的版本投影为 0、再次绑定默认 1;转移仍核对 v 与 v+1。Group/Org 创建自动绑定、解散自动解绑、专属转移强制 rekey,实体名片以实体主签、owner token 上传与可选 owner 附签单独分流;三个时间字段统一安全整数范围,invalid 与 unavailable 分别表示无效与不可用。实体 pending 固定完整多签原文、owner/实体代际及原 CAS,取消额外 V2 上传授权与过期窗口,应用显式重试仍须新鲜核对当前代际;同全文/ETag 已提交仅观察确认。SDK 普通 P2P 编排仅作非权威协作,不构成协议层授权。新服务端保留旧 SDK 注册、绑定、转移、查询和解绑 RPC 及隔离的 Auth JSONL,仅激活旧 NS ownership_proof;不写 2.1 双文件,不授 2.1 lock/version/consensus,也不覆盖已存现代声明。
393
+ 定义 NS 当前 `agent.md` 与 owner Storage 当前 `owner.md` 的原始字节多签、逐块 prefix 验证、multi-v1 表示协商、自身份上传、owner.md 权限和当前关系校验;owner 锁与响应 Header 只投影本次材料的校验结果。release 保持被释放的版本 v,sub 清理关系字段后的版本投影为 0、再次绑定默认 1;转移仍核对 v 与 v+1。现代 Group/Org 使用相同 owner.md/agent.md 声明与共识,生命周期编排创建、解散及强制 rekey 转移;实体主签不带 signer_aid、不输出旧 entity_cert_fingerprint,以当前 owner token 上传并核对生命周期;三个时间字段统一安全整数范围,invalid 与 unavailable 分别表示无效与不可用。实体 pending 固定完整多签原文、owner/实体代际及原 CAS,取消额外 V2 上传授权与过期窗口,应用显式重试仍须新鲜核对当前代际;同全文/ETag 已提交仅观察确认。SDK 普通 P2P 编排仅作非权威协作,不构成协议层授权。新服务端保留旧 SDK 注册、绑定、转移、查询和解绑 RPC 及隔离的 Auth JSONL,仅激活旧 NS ownership_proof;不写 2.1 双文件,不授 2.1 lock/version/consensus,也不覆盖已存现代声明。
391
394
 
392
395
  ### Ownership SDK 编排指南 2.1
393
396
 
394
397
  保留七 Facade、Stage、P2P、持久任务及一次性决定的历史设计。当前实现已移除 Ownership 任务、WAL、后台恢复和 decisions 接口,以两份现行 SDK 指南中的文件提交、NS 事实验收和显式重试为准。
395
398
 
396
- Group/Org 作为 sub 时不进入这些通用任务或审批;以其为 sub 误调用直接 not_applicable,符合普通 owner 规则时仍可作为 owner_aid。实体 owner 创建自动建立、解散自动解除,专属转移强制 rekey,名片由实体主签、owner token 上传,可选 owner 附签不改变当前授权。
399
+ 本条历史任务方案不定义当前 Group/Org 生命周期编排。现代实体的双文件声明与共识同样适用;普通 Ownership 管理 Facade 的绑定、释放、转移仍返回 not_applicable,不能将这一入口限制扩展到声明/共识或放宽 owner 类型。创建、解散和强制 rekey 转移由专属生命周期完成,当前边界见协议 §1.3/§2.5。
397
400
 
398
401
  ### Ownership 2.1 SDK 应用集成指南
399
402
 
@@ -449,9 +452,9 @@ Group/Org 作为 sub 时不进入这些通用任务或审批;以其为 sub 误
449
452
 
450
453
  0.5.29 [应用指南](sdk/0.5.29-SDK应用集成指南.md):接入与消息 §1—§2 L5-54、共识 §3 L55-80、resolve §4 L81-104、上传及管理 §5 L105-145、缓存/通知/业务 §6—§7 L146-167、升级 §8 L168-180;[开发与移植指南](sdk/0.5.29-SDK开发与移植指南.md):契约 §1—§2 L5-63、缓存与 resolve §3—§4 L64-94、上传恢复 §5 L95-123、四端与继承契约 §6—§7 L124-151、核查 §8 L152-164。
451
454
 
452
- 当前 [0.5.29 parity](../python/CHANGES_FOR_PARITY.md#v0529--共识查询缓存与普通上传未发布) L15-87:公共入口与 NS 请求 L19-39、无 TTL 的 ETag 缓存及 resolve L40-47、普通上传与恢复 L48-67、NS 配套与定向验证 L68-87。四端 CHANGELOG 提供接口级摘要。
455
+ [0.5.35 应用指南](sdk/0.5.35-SDK应用集成指南.md):范围 L7-20、EventService L21-61、ACK/恢复 L62-77、Echo L78-94、UDP L95-124、Mail L125-163、语言专属 L164-177、验收 L178-189;[开发与移植指南](sdk/0.5.35-SDK开发与移植指南.md):职责 L7-17、事件契约 L18-63、ACK/同步 L64-83、Echo L84-99、UDP L100-136、Mail L137-172、语言落点 L173-184、回归 L185-204。 当前 [0.5.35 parity](../python/CHANGES_FOR_PARITY.md#v0535) L84-159:基线/矩阵 L86-98、EventService L99-112、ACK/同步 L113-120、Echo L121-127、UDP L128-134、Mail L135-142、语言专属 L143-149、核验范围 L150-159。历史 [0.5.29 parity](../python/CHANGES_FOR_PARITY.md#v0529--共识查询缓存与普通上传未发布) L525-597:公共入口与 NS 请求 L529-549、无 TTL 的 ETag 缓存及 resolve L550-557、普通上传与恢复 L558-577、NS 配套与定向验证 L578-597。四端 CHANGELOG 提供接口级摘要。
453
456
 
454
- 历史 0.5.28 [应用指南](sdk/0.5.28-SDK应用集成指南.md):身份/消息接入 §2—§3 L18-95、凭证/组织 §4—§5 L96-137、Storage/Ownership §6—§7 L138-186、Owner 通知 §8 L187-201、风控/升级 §9—§10 L202-228;[开发与移植指南](sdk/0.5.28-SDK开发与移植指南.md):上传/下载 schema §1 L7-36、非一致共识 fresh §2 L37-62、分类控制消息 §3 L63-108、Owner outbox §4 L109-121、风控 §5 L122-134、移植矩阵 §6 L135-146。对应实现及验证边界见 `python/CHANGES_FOR_PARITY.md` 0.5.28 章节 L88-172。0.5.27 及更早版本保留原基线和执行记录。
457
+ 历史 0.5.28 [应用指南](sdk/0.5.28-SDK应用集成指南.md):身份/消息接入 §2—§3 L18-95、凭证/组织 §4—§5 L96-137、Storage/Ownership §6—§7 L138-186、Owner 通知 §8 L187-201、风控/升级 §9—§10 L202-228;[开发与移植指南](sdk/0.5.28-SDK开发与移植指南.md):上传/下载 schema §1 L7-36、非一致共识 fresh §2 L37-62、分类控制消息 §3 L63-108、Owner outbox §4 L109-121、风控 §5 L122-134、移植矩阵 §6 L135-146。对应实现及验证边界见 `python/CHANGES_FOR_PARITY.md` 0.5.28 章节 L529-613。0.5.27 及更早版本保留原基线和执行记录。
455
458
 
456
459
  0.5.27 [应用指南](sdk/0.5.27-SDK应用集成指南.md):身份/连接/消息迁移 §2—§3 L30-133,结构化 §4 L134-192/语义 §5 L193-349,组织与缓存 §6—§7 L350-388,升级 §8 L389-408;[开发与移植指南](sdk/0.5.27-SDK开发与移植指南.md):字节/签名 §2 L38-84,结构化 §3 L85-123/语义 §4 L124-297,组织 §5 L298-334,迁移交付 §6 L335-383,平台与回归 §7—§8 L384-410。 `python/CHANGES_FOR_PARITY.md` 以 Python SDK 实现为主线记录 Go / TypeScript / JavaScript 对齐要求。0.5.27 L173-290 统一对照 0.5.25 源码提交,覆盖结构化/语义凭证、消息证据、online/bounded、Usage 持久恢复、Gateway 迁移、时间容错、组织和 CLI;列出各端实现落点、存储差异及已有验证范围。0.5.26 仅记 TypeScript 根证书打包修正;0.5.25 及更早章节保留原基线和执行记录。
457
460
 
@@ -530,3 +533,7 @@ L5-121定义TS运行器、profile、三种凭证模式及23命令;L124-298说
530
533
  ### 0.5.33 弹性补拉接入与移植
531
534
 
532
535
  [应用指南](sdk/0.5.33-SDK应用集成指南.md) L404-464:面板持久开关、无需新Client的补拉流程、暂停与断线退主、同版禁开及应用幂等;[移植指南](sdk/0.5.33-SDK开发与移植指南.md) L413-499:双能力/history_sync、发送前复核、消费预留、volatile主路径、真实辅助计数与回收;[连接协议](protocol/03-Gateway-连接模式.md)弹性专节及[Message](sdk/09-message-rpc-manual.md)/[Group](sdk/09-group-rpc-manual.md)分页段定义wire字段。
536
+
537
+ ### 0.5.36 四 SDK 应用、移植与对齐
538
+
539
+ [0.5.36 应用指南](sdk/0.5.36-SDK应用集成指南.md):范围 L7-19、事件大小/速率 L20-42、共识复用与失效 L43-76、证书 L77-87、UDP L88-107、Node/Go L108-117、验收 L118-130;[开发与移植指南](sdk/0.5.36-SDK开发与移植指南.md):契约 L7-19、事件 L20-50、持久共识 L51-85、观察失效 L86-102、NS L103-112、历史验签/新签 L113-128、UDP L129-153、语言专属 L154-161、回归 L162-176。[0.5.36 变更与跨端对齐](../python/CHANGES_FOR_PARITY.md#v0536) L15-78:基线/矩阵 L17-30、事件大小与速率 L32-38、共识缓存、观察及证书验签 L40-54、UDP/Node/Go 差异 L56-61、配套服务与边界 L63-67、核验 L69-78。
@@ -38,15 +38,15 @@ AUN SDK Core 文档在 `docs/` 下。根级索引为 `docs/INDEX.md`,SDK API
38
38
  | 0.5.22 SDK 移植:同步、Stage/CAS、撤销续期、缓存、语言修复及 Rust | `docs/sdk/0.5.22-SDK开发与移植指南.md` 1. L5-8;2. L9-29;3. L30-39;4. L40-83;5. L84-118;6. L119-171;7. L172-188;8. L189-199 |
39
39
  | 0.5.24 应用集成:当前消息、无任务 Ownership、两个 local 编排、缓存及凭证组织 | `docs/sdk/0.5.24-SDK应用集成指南.md` 1. L5-20;2. L21-75;3. L76-132;4. L133-168;5. L169-298;6. L299-321;7. L322-366;8. L367-385;9. L386-401;local bind L227-245、local transfer L246-267 |
40
40
  | 0.5.24 SDK 移植:提交/ACK、NS 事实与 CAS、local 身份隔离、缓存新鲜度与语言差异 | `docs/sdk/0.5.24-SDK开发与移植指南.md` 1. L5-17;2. L18-31;3. L32-84;4. L85-92;5. L93-122;6. L123-217;7. L218-245;8. L246-261;9. L262-297;10. L298-325;11. L326-339;12. L340-354 |
41
- | Ownership 2.1 agent.md/owner.md、普通名片边界、原格式与 Header | `docs/protocol/Ownership协议定义2.1.md` 1. L11-61;2. L62-202;3. L203-266;4. L267-634;5. L635-642;6. L643-669 |
41
+ | Ownership 2.1 agent.md/owner.md、现代 Group/Org 共识、普通名片与历史格式边界 | `docs/protocol/Ownership协议定义2.1.md` 1. L11-61;2. L62-202;3. L203-266;4. L267-634;5. L635-642;6. L643-669 |
42
42
  | Ownership 2.1 历史编排、任务恢复、reset 与三类 CAS 设计 | `docs/sdk/Ownership-SDK编排指南2.1.md` L9-939;仅作历史参考,当前流程见下面两份指南 |
43
43
  | Ownership 多设备归属冲突、最后上传候选与锁后保护;无独立 decisions | `docs/sdk/Ownership2.1-SDK应用集成指南.md` L171-201、L326-342;旧编排 L941-986 的一次性决定方案已撤销 |
44
44
  | Ownership 2.1 应用 TS 接线、双向绑定/释放/转移、local 编排与显式重试图 | `docs/sdk/Ownership2.1-SDK应用集成指南.md` 1. L7-20;2. L21-27;3. L28-140;4. L141-158;5. L159-168;6. L169-303;7. L304-325;8. L326-342;9. L343-354;10. L355-363;local bind L257-278、local transfer L279-303 |
45
45
  | Ownership 2.1 SDK 移植:签验、NS 验收、Storage、消息与本地编排图 | `docs/sdk/Ownership2.1-SDK开发与移植指南.md` 1. L5-14;2. L15-38;3. L39-51;4. L52-84;5. L85-98;6. L99-128;7. L129-153;8. L154-173;9. L174-209;10. L210-253;11. L254-374;12. L375-383;13. L384-399;local bind L297-335、local transfer L336-374 |
46
46
  | AIDStore.sign/verify 与完整文件多签 | `docs/sdk/Ownership2.1-SDK应用集成指南.md` L130-140;`docs/sdk/Ownership2.1-SDK开发与移植指南.md` L71-84、L99-128 |
47
- | Ownership 2.1 双文件持久化、普通名片非回归矩阵与组件职责 | `docs/sdk/Ownership2.1详细设计.md` 1. L9-78;2. L79-130;3. L131-166;4. L167-210;5. L211-241;6. L242-305;7. L306-398;8. L399-437;9. L438-471;10. L472-484 |
47
+ | Ownership 2.1 双文件、Group/Org 生命周期与访问补齐、普通名片非回归矩阵 | `docs/sdk/Ownership2.1详细设计.md` 1. L9-78;2. L79-130;3. L131-166;4. L167-210;5. L211-241;6. L242-305;7. L306-398;8. L399-437;9. L438-471;10. L472-484 |
48
48
  | Ownership 2.1 历史分阶段计划、冻结契约与验收,Group/Org 另查专属边界 | `docs/sdk/Ownership2.1-TDD分阶段实施计划.md` 1. L7-53;2. L54-80;3. L81-103;4. L104-136;5. L137-165;6. L166-205;7. L206-237;8. L238-283;9. L284-318;10. L319-351;11. L352-370;12. L371-391;13. L392-708 |
49
- | Group/Org 实体主签、owner token 上传、可选附签、旧 V2 兼容、权威分类与恢复 | `docs/protocol/Ownership协议定义2.1.md` L52-61、L183-202;`docs/sdk/09-group-rpc-manual.md` L168-419 |
49
+ | Group/Org 现代声明/共识、实体主签、owner 上传、历史格式与每连接访问补齐 | `docs/protocol/Ownership协议定义2.1.md` L52-61、L183-202;`docs/sdk/09-group-rpc-manual.md` L168-419 |
50
50
  | release 保持 v、清理后 0/重绑默认 1 与通知触发的 sub 清理 | `docs/sdk/Ownership2.1-SDK应用集成指南.md` L202-223;`docs/sdk/Ownership2.1-SDK开发与移植指南.md` L279-296 |
51
51
  | 旧 SDK 隔离兼容、普通名片保留关系及历史任务恢复;legacy proof wire | `docs/protocol/Ownership协议定义2.1.md` L220-242;历史恢复见旧编排 L718-782;当前兼容与显式重试见 `docs/sdk/Ownership2.1-SDK应用集成指南.md` L326-363;legacy wire 见 `docs/protocol/Ownership协议定义.md` L159-321 |
52
52
  | legacy Ownership 2.0 的 agent.md/owner.md 声明、共识及撤销契约 | `docs/agent.md/SCHEMA.md` L1-6、L159-233;`docs/protocol/Ownership协议定义2.0.md`;更早 1.0 副本 `docs/protocol/agent.md/SCHEMA.md` L1-5 |
@@ -155,14 +155,14 @@ AUN SDK Core 文档在 `docs/` 下。根级索引为 `docs/INDEX.md`,SDK API
155
155
  | AID owner 完整设计、Schema 可选性与 human owner 限制、三字段共同声明与 self-owner 单签、Phase 0 已确认的 P0-A01 至 P0-A12(canonical JSON、可见分号域分隔符、签名封套、proof-only/registered、Auth receipt、TTL、证书状态与关系 operation 分离、legacy/绑定中基本登录通信及按应用场景降级、旧 AID `aid_bind` 与新建 `aid_register` 的 RPC/Facade 边界、active/pending 唯一性检查、创建/绑定/换 owner/解绑、`unbound`/`unusable`、服务端/四端 SDK 改动和分阶段验收;剩余为正式 wire/RPC 文档与跨端向量落稿 | `docs/agent.md/working/AID类型-owner关系完整设计与实施计划.md` |
156
156
  | 本轮 owner 关系实施及本地 Docker、单域、cross-SDK、双域 federation 回归中发现的非任务失败、根因、修复与验证 | `docs/agent.md/working/本地Docker测试Bug清单.md` |
157
157
  | SDK API、RPC、E2EE、Storage VFS、Group FS、Collab GC/reflog/reset 使用细节 | `docs/sdk/AUN_DOCS_GUIDE.md` |
158
- | 四 SDK resolve opts、frontmatter 字段/类型;当前 ownership 输出与无 TTL 缓存 | 基础解析见 `docs/sdk/06-API手册.md` L86-203、`docs/sdk/04-连接与认证.md` L233-243;当前共识变更见 `python/CHANGES_FOR_PARITY.md` L19-47 |
158
+ | 四 SDK resolve opts、frontmatter 字段/类型;当前 ownership 输出与无 TTL 缓存 | 基础解析见 `docs/sdk/06-API手册.md` L86-203、`docs/sdk/04-连接与认证.md` L233-243;当前共识变更见 `python/CHANGES_FOR_PARITY.md` L460-488 |
159
159
  | 四 SDK Storage / Group FS 默认读缓存、省略策略或 TTL 默认 60 秒、显式限制、SHA 无正文免计次与 owner.md 普通/权威读取 | `docs/sdk/09-storage-rpc-manual.md` L129-170;`docs/sdk/06-API手册.md` L497-510;`docs/sdk/09-group-rpc-manual.md` L1588-1622 |
160
160
  | 四 SDK 当前 access token getter、缓存快照语义和外部 HTTP 数据面下载凭据生命周期 | `docs/sdk/04-连接与认证.md` L96-125、`docs/sdk/06-API手册.md` L327-346、`docs/sdk/09-storage-rpc-manual.md` L690-734、`docs/sdk/09-group-rpc-manual.md` L1614-1620、`docs/aun-fs/AUN Storage架构设计.md` L153-166 |
161
- | 四 SDK 0.5.34 应用集成与开发移植专题、EventService 多角色和持久化、Storage 条件 ACL、Group FS、Service Proxy 及弹性补拉 | `docs/sdk/0.5.34-SDK应用集成指南.md`、`docs/sdk/0.5.34-SDK开发与移植指南.md`、`../python/CHANGES_FOR_PARITY.md#v0534` |
161
+ | 四 SDK 0.5.35 增量、通配订阅/过滤、本地收发、后台 ACK、Echo、三端 UDP/Mail 及单实例边界 | [0.5.35 应用集成指南](sdk/0.5.35-SDK应用集成指南.md)、[开发与移植指南](sdk/0.5.35-SDK开发与移植指南.md);[parity 0.5.35](../python/CHANGES_FOR_PARITY.md#v0535) L15-90;0.5.34 历史专题保留在 `docs/sdk/0.5.34-SDK应用集成指南.md`、`docs/sdk/0.5.34-SDK开发与移植指南.md` |
162
162
  | 四 SDK 0.5.6 发布摘要、验签缓存、消息窗口与语言能力边界 | `docs/sdk/CHANGELOG-0.5.6.md` L1-73 |
163
- | 四 SDK 0.5.29 应用接入、共识输入输出、resolve、上传锁与恢复、四端移植 | [应用指南](sdk/0.5.29-SDK应用集成指南.md):接入 L5-54、共识 L55-80、resolve L81-104、上传管理 L105-145、缓存/业务 L146-167、升级 L168-180;[开发与移植指南](sdk/0.5.29-SDK开发与移植指南.md):契约 L5-63、缓存/resolve L64-94、上传恢复 L95-123、四端/继承 L124-151、核查 L152-164;parity 当前 L15-87 |
164
- | 历史 0.5.28 agent.md 校验、共识 fresh、分类控制消息、Owner 通知与风控 | `docs/sdk/0.5.28-SDK应用集成指南.md`:接入/消息 L5-95、凭证/组织 L96-137、Storage/Ownership L138-186、通知 L187-201、风控/升级 L202-228;`docs/sdk/0.5.28-SDK开发与移植指南.md`:校验 L7-36、共识 L37-62、wire L63-108、outbox L109-121、风控 L122-134、移植 L135-146;parity 历史 L88-172,公共共识规则以 0.5.29 为准 |
165
- | 四 SDK 0.5.27 对照 0.5.25 源码的凭证、消息证据、状态/Usage、Gateway 迁移、时间容错、组织与 CLI;0.5.26 仅为 TS 根证书打包修正 | `docs/sdk/0.5.27-SDK应用集成指南.md`:身份连接/消息 L30-133、结构化 L134-192、语义 L193-349、组织缓存 L350-388、升级 L389-408;`docs/sdk/0.5.27-SDK开发与移植指南.md`:字节 L38-84、结构化 L85-123、语义 L124-297、组织 L298-334、迁移 L335-383、平台回归 L384-410;`python/CHANGES_FOR_PARITY.md` 历史 0.5.27 L173-290、0.5.25 L291-359、0.5.24 L360-496、0.5.22 L497-654,读缓存块⑦ L582-622/版本测试块⑧ L623-654 |
163
+ | 四 SDK 0.5.29 应用接入、共识输入输出、resolve、上传锁与恢复、四端移植 | [应用指南](sdk/0.5.29-SDK应用集成指南.md):接入 L5-54、共识 L55-80、resolve L81-104、上传管理 L105-145、缓存/业务 L146-167、升级 L168-180;[开发与移植指南](sdk/0.5.29-SDK开发与移植指南.md):契约 L5-63、缓存/resolve L64-94、上传恢复 L95-123、四端/继承 L124-151、核查 L152-164;parity 0.5.29 历史 L456-528 |
164
+ | 历史 0.5.28 agent.md 校验、共识 fresh、分类控制消息、Owner 通知与风控 | `docs/sdk/0.5.28-SDK应用集成指南.md`:接入/消息 L5-95、凭证/组织 L96-137、Storage/Ownership L138-186、通知 L187-201、风控/升级 L202-228;`docs/sdk/0.5.28-SDK开发与移植指南.md`:校验 L7-36、共识 L37-62、wire L63-108、outbox L109-121、风控 L122-134、移植 L135-146;parity 历史 L529-613,公共共识规则以 0.5.29 为准 |
165
+ | 四 SDK 0.5.27 对照 0.5.25 源码的凭证、消息证据、状态/Usage、Gateway 迁移、时间容错、组织与 CLI;0.5.26 仅为 TS 根证书打包修正 | `docs/sdk/0.5.27-SDK应用集成指南.md`:身份连接/消息 L30-133、结构化 L134-192、语义 L193-349、组织缓存 L350-388、升级 L389-408;`docs/sdk/0.5.27-SDK开发与移植指南.md`:字节 L38-84、结构化 L85-123、语义 L124-297、组织 L298-334、迁移 L335-383、平台回归 L384-410;`python/CHANGES_FOR_PARITY.md` 历史 0.5.27 L614-731、0.5.25 L732-800、0.5.24 L801-937、0.5.22 L938-1095,读缓存块⑦ L1023-1063/版本测试块⑧ L1064-1095 |
166
166
  | 群 `mention_mode` 提及过滤、Agent 自主行为、SDK group.index facade 和 CAS 冲突处理 | `docs/protocol/10-Group-子协议.md`、`docs/protocol/13-Agent行为规范.md`、`docs/sdk/09-group-rpc-manual.md`、`docs/sdk/07-错误处理.md` |
167
167
  | AUN Python CLI 源码位置、安装入口、全局选项、profile 配置和主要命令集 | `docs/cli/CLI手册.md` L3-378 |
168
168
  | AUN Python CLI 当前实现架构、命令注册、SDK 桥接和实现边界 | `docs/cli/AUN-CLI设计文档.md` L3-279 |
@@ -184,6 +184,6 @@ AUN SDK Core 文档在 `docs/` 下。根级索引为 `docs/INDEX.md`,SDK API
184
184
  | 离线消息弹性补拉:Gateway当前0/1、SDK按策略0..N、namespace并发和共享预算 | [方案正文](消息弹性补拉通道方案.md):当前Gateway同AID+设备最多授权1条,SDK现有协议测试到2;同namespace串行、不同namespace按授权/预算并行 L9-24;认证 L40-101;策略与回收 L102-201;公平/顺序/背压 L202-263;面板开关 L420-440;断线退主 L448-454;积压门槛、无新增读取下界、短连接无unread hint及统计 L456-485。旧额度结果不证明本轮规则通过。 |
185
185
  | 弹性补拉实施与验收 | [实施计划](消息弹性补拉通道实施计划.md):交付/阶段 L6-159;四端验收 L212-235;旧额度验证证据 L338-375(不证明新规则);本轮Gateway单辅助上限、SDK 0..N策略支持、namespace并发、积压门槛、短连接与统计验收 L377-399。新Gateway cap、四SDK新规则与Ubuntu Docker验收尚待完成。 |
186
186
 
187
- 0.5.34 SDK 专题:应用接入见 [0.5.34 应用指南](sdk/0.5.34-SDK应用集成指南.md),四端共同契约见 [0.5.34 开发与移植指南](sdk/0.5.34-SDK开发与移植指南.md),实现级差异见 [parity 0.5.34](../python/CHANGES_FOR_PARITY.md#v0534)。文档覆盖 EventService 多角色、SQLite/IndexedDB 持久化、durable outbox、实时目录、Storage 条件 ACL、Group FS、Service Proxy 和弹性补拉。
187
+ [0.5.35 应用指南](sdk/0.5.35-SDK应用集成指南.md):范围 L7-20、EventService L21-61、ACK/恢复 L62-77、Echo L78-94、UDP L95-124、Mail L125-163、语言专属 L164-177、验收 L178-189;[开发与移植指南](sdk/0.5.35-SDK开发与移植指南.md):职责 L7-17、事件契约 L18-63、ACK/同步 L64-83、Echo L84-99、UDP L100-136、Mail L137-172、语言落点 L173-184、回归 L185-204。 当前 0.5.35 见 [parity](../python/CHANGES_FOR_PARITY.md#v0535) L15-90:基线/矩阵 L17-29、EventService L30-43、ACK/同步 L44-51、Echo L52-58、UDP L59-65、Mail L66-73、语言专属 L74-80、核验范围 L81-90。0.5.34 历史 SDK 专题:应用接入见 [0.5.34 应用指南](sdk/0.5.34-SDK应用集成指南.md),四端共同契约见 [0.5.34 开发与移植指南](sdk/0.5.34-SDK开发与移植指南.md),实现级差异见 [parity 0.5.34](../python/CHANGES_FOR_PARITY.md#v0534)。文档覆盖 EventService 多角色、SQLite/IndexedDB 持久化、durable outbox、实时目录、Storage 条件 ACL、Group FS、Service Proxy 和弹性补拉。
188
188
 
189
189
  0.5.33 弹性补拉专题:应用配置与流程见 [应用指南 L404-464](sdk/0.5.33-SDK应用集成指南.md);四端共同实现见 [开发与移植指南 L413-499](sdk/0.5.33-SDK开发与移植指南.md)。索引三层入口见 [INDEX.md 的弹性补拉与0.5.33条目](INDEX.md);连接认证/回收和Message/Group存储范围及页字节字段已同步到各手册。
@@ -5,7 +5,7 @@ Ownership 版本: 2.0.0
5
5
 
6
6
  本文保留 legacy Ownership 2.0 的文件格式与字段,不是当前 2.1 Schema。Ownership 2.0 的 ownership 声明由整个文件尾部签名保护;本文的第三方存储写删授权、sub 单方撤销及无关系版本示例仅适用于该历史版本。当前 2.1 的完整文件、角色、关系版本、owner 锁与六态结果以 [Ownership 协议定义 2.1](../protocol/Ownership协议定义2.1.md) 为准。
7
7
 
8
- 当前 `group/org` 是独立生命周期分支:owner 必填,无 ownership 合法,通用 ownership/proof/release 禁止;实体私钥生成主签,当前 owner 以本人 token 上传,可选 owner 附签且存在必须验证;Group 旧实体单签及实体身份上传持续兼容,Org 不开放。通用多签、实体证书代际和恢复以 [协议 §2.5](../protocol/Ownership协议定义2.1.md#25-grouporg-名片的实体主签与-owner-上传) 为准。下文 legacy 的 owner/ownership 成对及目标本人签名规则不得套用于当前 Group/Org。
8
+ 当前现代 `group/org` 由专属生命周期维护归属,同时使用配对 `owner.md`/`agent.md` 的 ownership.statement 并参与通用共识;普通 bind/release/transfer Facade 仍返回 not_applicable,NS 对缺少 ownership 的历史实体保留同名标记,SDK 按实际返回状态处理。现代实体私钥主签不含 signer_aid,也不要求旧 entity_cert_fingerprint;当前 owner 以本人 token 上传,可选 owner 附签且存在必须验证。Group 旧实体单签及实体身份上传持续兼容,Org 不开放该旧入口。完整声明、签名和恢复见 [协议 §2.5](../protocol/Ownership协议定义2.1.md#25-grouporg-名片的实体主签与-owner-上传);下文 legacy Schema、实体主签字段与单方撤销规则不得套用于现代 Group/Org。
9
9
 
10
10
  ## 限制
11
11
 
@@ -1273,8 +1273,8 @@ docker logs --since 30m kite-app 2>&1 | Select-String -Pattern "WAL 批量写入
1273
1273
  本节适用于默认单域、分布式、双域及 cross-SDK 使用远程 Ubuntu Docker 的情况。
1274
1274
 
1275
1275
  - Ubuntu SSH:`root@61.169.195.42`,端口 `30248`;Docker context 为 `kite-ubuntu`,远端项目目录为 `/data/kite`,Docker 数据目录为 `/data/docker`。
1276
- - 本机 identity file:`C:\Users\ready\.ssh\id_rsa`;对应公钥 `C:\Users\ready\.ssh\id_rsa.pub` 已安装到 Ubuntu。只记录路径,不保存私钥内容,也不把私钥同步到远端。
1277
- - Windows PowerShell 登录命令:`ssh -p 30248 -i "$env:USERPROFILE\.ssh\id_rsa" -o IdentitiesOnly=yes root@61.169.195.42`。
1276
+ - 本机 identity file:`C:\Users\ready\.ssh\id_ed25519`;对应公钥 `C:\Users\ready\.ssh\id_ed25519.pub` 已安装到 Ubuntu。只记录路径,不保存私钥内容,也不把私钥同步到远端。
1277
+ - Windows PowerShell 登录命令:`ssh -p 30248 -i "$env:USERPROFILE\.ssh\id_ed25519" -o IdentitiesOnly=yes root@61.169.195.42`。
1278
1278
  - Ubuntu CN Compose 还需按顺序加载 `agentid.cn/local.env`、`agentid.cn/ubuntu.env`;后者由本机工作区维护并同步,固定远端 MySQL 镜像、健康卷、Redis 卷和 CN 子网,只用于远程 Docker,不用于本机 Docker。
1279
1279
  - Ubuntu PUB Compose 还要在基础与域 Compose 后加载 `agentid.pub/ubuntu-compose.yml`,并按 `local.env`、`ubuntu.env` 顺序提供变量;镜像 SHA 指向本机源码构建并同步到 Ubuntu 的镜像。
1280
1280
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  普通 `agent.md` 的基础读取、验签、上传与显式 pending 恢复不以前置 Ownership 共识、owner Storage 或关系状态为条件。普通正文更新须原样保留当前原件中全部关系材料的字段存在性、类型和值,并遵守本人签名和原 ETag/CAS;材料无效或依赖不可用不能阻断这种更新。增删改关系字段继续执行当前双文件授权核验,不能借普通名片入口清除或替换 owner 锁。
6
6
 
7
- 本协议的通用关系流程适用于 `human`、`group`、`org` 以外的主体;`human` 禁止声明 owner,`group/org` 作为被管理的 subject 时使用第 1.3 节的专属生命周期,也可按普通规则作为 `owner_aid`。通用关系双方独立签名、上传自己的声明文件;本协议不定义 ownership 专用授权 RPC 或权威关系控制方法,也不提供代签名、代上传及协议层关系申请、接受、拒绝方法。SDK 可以使用普通加密 P2P 载荷进行非权威编排,也可在持有各方身份材料时直接执行本地编排;当前流程不要求独立 decisions 接口或不可变审批记录。载荷和本地调用结果均不能替代双方文件及 NS 验收,具体流程见[当前应用指南](../sdk/Ownership2.1-SDK应用集成指南.md)。可选托管由应用层实现,不改变这两个文件的签署及上传身份。
7
+ 本协议的双文件声明与共识适用于 `human` 以外的主体,包含现代 `group/org`;`human` 禁止声明 owner。自 SDK 0.5.31 起,Group/Org 使用相同的 `ownership.statement` 和 `owner.md`,但绑定、释放及转移仍由第 1.3 节的专属生命周期编排,普通 Ownership 管理入口不直接操作群/组织。通用关系双方独立签署自己的声明文件;Group/Org 由实体签署名片、当前 owner 上传,见第 2.5 节。本协议不定义 ownership 专用授权 RPC 或权威关系控制方法,也不提供协议层关系申请、接受、拒绝方法。SDK 可以使用普通加密 P2P 载荷进行非权威编排,也可在持有各方身份材料时直接执行本地编排;当前流程不要求独立 decisions 接口或不可变审批记录。载荷和本地调用结果均不能替代双方文件及 NS 验收,具体流程见[当前应用指南](../sdk/Ownership2.1-SDK应用集成指南.md)。可选托管由应用层实现,不改变文件的签署身份及资源权限。
8
8
 
9
9
  兼容方向为新服务端保留旧 SDK 的既有身份认证、普通名片、通信和 legacy owner 操作入口;新 SDK 的 2.1 关系操作不兼容旧服务端。兼容旧 SDK 所需的注册、绑定、转移、查询和解绑 RPC 使用隔离的 Auth JSONL 状态及 NS `ownership_proof`,只处理 legacy 关系;它们不生成 2.1 双文件声明,不构成 2.1 授权、owner 锁、关系版本或 `consensus`,也不得覆盖已存现代声明。Ownership 2.1 当前关系始终重新核对两份当前文件;不把新 SDK 源码调用形态兼容作为本契约要求。
10
10
 
@@ -51,11 +51,11 @@ Storage 须在文件、父目录、移动、重命名及自动清理等所有能
51
51
 
52
52
  ### 1.3 Group/Org 的专属 owner 生命周期
53
53
 
54
- `type=group/org` 的 owner 是 Group/Org 服务的当前权威生命周期事实,创建时自动建立,解散时自动解除。它不由双方 Ownership 2.1 声明建立,不创建 `owner.md`、owner 锁、`relation_version`、通用编排任务或审批消息。通用绑定、释放、转移入口须在创建任务和写入文件之前直接返回 `not_applicable`、`retryable=false`,不自动调用其它生命周期方法;通用共识检查的 `status/code` 均为 `not_applicable`。本节排除仅针对 Group/Org 作为被管理的 subject/sub_aid;它们仍可按既有普通 owner 规则作为普通主体的 owner 参与关系,不扩大或改变 owner 类型规则。
54
+ `type=group/org` 的 owner 由 Group/Org 服务的当前权威生命周期确定;SDK 在创建、转移和解散流程中同步编排 Ownership 2.1 材料。现代实体同样使用 owner 的 `owner.md`、实体 `agent.md` 中的配对声明、`relation_version` 和双文件关系保护,并可通过通用共识入口查询。共识还须核对当前生命周期 owner、状态及实体证书,不能用声明文件单独改变生命周期归属。普通 Ownership 绑定、释放、转移 Facade 仍在副作用前返回 `not_applicable`、`retryable=false`,不自动转调用生命周期方法;这项管理入口限制不适用于现代实体的声明解析及共识查询,也不放宽管理入口的 owner 类型限制。
55
55
 
56
56
  Group 使用 `group.transfer_owner` → `group.complete_transfer` 的两阶段转移;Org 使用既有 `org.lifecycle.transfer` → `org.lifecycle.transferAccept`。两者都必须真正 rekey,使证书及公钥指纹变化,旧身份材料不再授权当前操作,新材料归新 owner 持有;Org 的 rekey 与 owner CAS 顺序保持其专属 0.8 契约。创建时实体身份公私钥及证书由初始 owner 持有,业务服务不保存实体私钥。解散后不再存在可用 owner 授权,旧身份材料和待上传文件不能继续鉴权或发布名片。
57
57
 
58
- 新 SDK 发布的 Group/Org 名片必须含当前 `owner`,必须省略 `ownership`、`ownership_proof`、`ownership_release`。实体私钥生成主签,当前 owner 使用本人 token 上传,可选追加 owner 附签;Group 旧实体单签及实体身份上传持续兼容,Org 不开放该旧入口,见第 2.5 节。实体类型和当前 owner 必须以权威身份及生命周期记录校验,不能只相信上传文件中的 `type/owner`。
58
+ 新 SDK 发布的 Group/Org 名片必须含当前 `owner` 及配对的 `ownership.statement`,省略旧 `ownership_proof`、`ownership_release` 和 `entity_cert_fingerprint`。实体私钥生成不带 `signer_aid` 的主签,当前 owner 使用本人 token 上传;可选附签按完整签名链验证。owner 先以本人身份在自有 Storage 发布 `owner.md`,实体再条件发布名片并确认新鲜共识。Group 旧实体单签及实体身份上传持续兼容,Org 不开放该旧入口,见第 2.5 节。实体类型和当前 owner 必须以权威身份及生命周期记录校验,不能只相信上传文件中的 `type/owner`。
59
59
 
60
60
  Org 生命周期向 CA 可信登记权威 Org 类型;分类只标识 AID 类型,不保存 owner 关系。Org 创建提交前完成登记,恢复时含 dissolved 的存量记录每批最多 256 条登记,全部成功后才持久标记分类回填完成。初签、轮换和导入不得覆盖已登记 Org 类型,Org 证书沿用 `signing` purpose。NS 仅在 CA 明确返回分类完成时将未登记的 normal 身份按普通主体处理;回填未确认时保留保守生命周期核验,Org 或 CA 故障不能降为普通身份。完成后普通主体 PUT 不再逐次查询 Org;Org 自身仍执行其生命周期校验。
61
61
 
@@ -86,8 +86,8 @@ Org 生命周期向 CA 可信登记权威 Org 类型;分类只标识 AID 类
86
86
  | `description` | 可选字符串,最多 100 个 Unicode 字符。 |
87
87
  | `avatar` | 可选字符串,最多 256 个 Unicode 字符。 |
88
88
  | `tags` | 可选字符串数组。 |
89
- | `owner` | 通用主体可选字符串,出现时必须同时出现 `ownership`;Group/Org 必填当前 owner AID,独立存在合法。 |
90
- | `ownership` | 通用主体可选对象,只允许包含 `statement`;Group/Org 禁止。 |
89
+ | `owner` | 非 human 主体可选字符串,出现时必须同时出现 `ownership`;现代 Group/Org 填当前生命周期 owner AID。历史实体 owner-only 格式仅按第 2.5 节兼容读取,不构成双文件共识。 |
90
+ | `ownership` | 非 human 主体可选对象,只允许包含 `statement`;现代 Group/Org 使用相同格式。 |
91
91
 
92
92
  `owner.md` 的顶层只允许 `owner_aid`、`sub_aid`、`ownership`,三者均必填;不要求 `aid`、`name`、`type` 或名片版本字段。其 AID 必须与 statement 及规范路径一致。文件角色由资源位置确定,不能改用另一角色的规则接受不匹配文件。
93
93
 
@@ -117,7 +117,7 @@ statement:
117
117
  | `relation_version` | `1..9007199254740991` 的整数,只用于两份当前签名声明的匹配;由双方在声明中明确一致取值,SDK 默认取当前可见基数加一(无声明时为 `1`),转移目标使用当前匹配版本加一。NS 不单独维护版本上界。 |
118
118
  | `declared_at` | 被文件签名覆盖的 Unix 秒整数,范围 `1..9007199254740991`。 |
119
119
 
120
- 通用主体的 `agent.md` 出现 `owner` 时必须同时出现 `ownership.statement`;`owner` 等于声明中的 `owner_aid`,`aid` 等于 `sub_aid`。无 owner 时两者同时省略;`human` 类型不能声明这两个字段。Group/Org 的 owner 字段按第 1.3、2.5 节处理,不解释为本节声明。
120
+ 现代 `agent.md` 出现 `owner` 时必须同时出现 `ownership.statement`;`owner` 等于声明中的 `owner_aid`,`aid` 等于 `sub_aid`。无 owner 时两者同时省略;`human` 类型不能声明这两个字段。现代 Group/Org 同样使用本节声明,并额外遵守第 1.3、2.5 节的生命周期和实体签名约束;历史 owner-only 实体格式不因此成为现代声明。
121
121
 
122
122
  普通正文、名称等更新必须完整保留已锁定的 `owner` 和 `ownership.statement`。不能只保留 owner 字符串、删除声明,也不能将完整关系降级为单方声明。
123
123
 
@@ -172,7 +172,7 @@ signature: <严格Base64编码的DER签名>
172
172
 
173
173
  仅向已有签名链末尾追加时,保持现有全部字节,并在末字节既非 LF 也非 CR 时补一个 LF;无旧块仍按首签要求正文以 CR/LF 结束,否则拒绝。该 LF 属于新块所签 prefix,不改变旧主签输入。修改、重排或删除前序块会令后续验签失败;删除末端块可形成有效短链,verify 只返回实际签名列表,不承诺检测末端截断。
174
174
 
175
- 附签必填 `signer_aid`,须与该块证书 AID 一致;通用容器可解析主块的可选 signer_aid,但普通 agent.md 和 owner.md 主块不输出且业务拒绝该字段;实体主块显式 signer_aid=target。各块仅允许表中四字段及 `signer_aid`,重复或未知字段拒绝;相同签署者可多次追加,不据此增加授权。verify 必须逐块全验,任一块失败不能只采用主签结果。证书沿用可信 resolver 按 AID/指纹获取,不增加证书链字段。
175
+ 附签必填 `signer_aid`,须与该块证书 AID 一致;通用容器可解析主块的可选 signer_aid,但现代 agent.md(含 Group/Org)和 owner.md 主块不输出且业务拒绝该字段;旧实体主块显式 signer_aid 的兼容边界见第 2.5 节。各块仅允许表中四字段及 `signer_aid`,重复或未知字段拒绝;相同签署者可多次追加,不据此增加授权。verify 必须逐块全验,任一块失败不能只采用主签结果。证书沿用可信 resolver 按 AID/指纹获取,不增加证书链字段。
176
176
 
177
177
  `declared_at`、`expires_at`、`timestamp` 只接受无符号、无前导零的十进制正整数原词法;拒绝零、负数、布尔、字符串、浮点、科学计数、十六进制及越界值。先校验词法和范围,再转换数字或日期;无效输入归 `invalid`,不能因日期转换失败归 `unavailable`。表示范围不替代证书有效期、当前时钟和授权未过期校验,也不另设年份或最长授权期限上界。
178
178
 
@@ -182,23 +182,23 @@ signature: <严格Base64编码的DER签名>
182
182
 
183
183
  ### 2.5 Group/Org 名片的实体主签与 owner 上传
184
184
 
185
- 新 SDK 名片的 `aid` 是实体 AID,`type` 为 `group` 或 `org`,`owner` 是当前 owner;必需 `entity_cert_fingerprint: sha256:<64位小写hex>` 指向实体当前证书。必须省略通用 `ownership`、`ownership_proof`、`ownership_release`。第一尾签块由实体私钥签署,显式 signer_aid=实体 AID,证书属于实体且匹配该指纹;可追加一个或多个当前 owner 附签,每个附签都必须属于当前 owner,存在时逐块验证,不得失败后降级成单签成功。双签不自动证明当前 owner。
185
+ 现代名片的 `aid` 是实体 AID,`type` 为 `group` 或 `org`,`owner` 是当前生命周期 owner,并包含与 owner 自有 Storage 中 `owner.md` 配对的 `ownership.statement`。新 SDK 不输出旧 `entity_cert_fingerprint`、`ownership_proof`、`ownership_release`;第一尾签块由实体当前私钥签署,不带 `signer_aid`,以尾签证书指纹及可信 CA 当前材料核对实体代际。Group 使用 `group_identity` 证书,Org 使用 `signing`;可选 owner 附签仍须逐块验证,不能替代主签、双文件共识或当前生命周期核验。
186
186
 
187
187
  现代上传使用当前 owner 的有效 token,无需实体登录;不再生成或强制实体专用 `AUN-AGENTMD-OWNER-AUTHORIZATION` V2 头。token 证明使用了该有效凭据,不证明本人操作,也不替代离线 owner 附签。普通 Ownership 既有 V1 兼容授权不因此变更。Group 始终兼容当前实体证书单签、实体身份上传的旧流程,仍执行生命周期、证书和文件 CAS 检查;Org 不开放该旧入口。
188
188
 
189
189
  旧0.5.19保留独立的 owner 主签 V2 兼容入口:请求无 multi-v1,文件仅一块主签,显式 signer_aid 等于正文 owner 且不同于实体 aid,正文 owner/entity_cert_fingerprint 完整合法。原 marker 可为裸或已有 tag,不能据 marker、UA 或尾签时间证明客户端版本。须有当前 owner token、原 `AUN-AGENTMD-OWNER-AUTHORIZATION` V2 授权和原 HTTP 条件;严格核对 target、uploader、完整原文摘要、实体当前指纹、owner 证书指纹、nonce、±300秒授权窗口及签名,并核对当前权威类型、owner、状态和实体代际,按完整快照 CAS 提交。该例外证明 owner 对原件的授权,不证明持有实体私钥;现代 multi-v1 上传仍必须实体主签。更早 Group 实体身份旧入口不因此增加 V2 要求。
190
190
 
191
- 当前 fresh 及 Storage 副本验证识别这种单块 owner 主签原件,核对当前权威 owner/实体代际和完整签名,不要求读取时提供未持久化的 V2 请求头。公开历史 verified 下载仅按正文 owner、显式 signer 及其历史证书验证原字节,实体指纹字段仍严格校验格式,但不与 owner 主签证书指纹混为一谈;不要求历史 owner 或证书代际仍为当前,不据此授予当前权限。历史读取例外不扩展到多块 owner 主签文件或现代写入;实体主签的单签、双签及多签均继续接受,所有存在的签块逐一验证。
191
+ 历史 owner-only 实体文件保留读取兼容,不构成双文件共识,也不得覆盖或降级已存现代声明。旧格式按其适用规则检查 `entity_cert_fingerprint` 与主签 `signer_aid`;仅特定旧 Group 单签格式允许省略实体指纹,不能将该豁免推广到 Org。fresh 及 Storage 副本验证仍识别上述单块 owner 主签原件,核对当前权威 owner/实体代际和完整签名,不要求读取时提供未持久化的 V2 请求头。公开历史 verified 下载按实际签署者及历史证书验证原字节,不要求历史 owner 或证书代际仍为当前;实体指纹字段不与 owner 主签证书指纹混为一谈。历史读取例外不扩展到多块 owner 主签文件或现代写入,历史验签不授予当前权限。
192
192
 
193
- NS 新鲜核对权威类型、生命周期状态、当前 owner、实体当前证书及所有签名,再允许提交。沿用既有 PKI current HTTP 查询并绕过缓存,不新增 RPC、证书链字段或关系账本。`entity_cert_fingerprint` 绑定 owner/rekey 代际,不另建数字 epoch,也不是 `relation_version`。非当前 owner 的现代上传为 `forbidden`,确定非法签名或字段为 `invalid`,旧实体证书代际为 HTTP 409 / `conflict`;生命周期、数据库或证书依赖不可用为 HTTP 503 / `unavailable`。Group 旧入口按专属兼容授权检查,不能据此开放 Org。
193
+ NS 对现代实体复用通用声明、Storage `owner.md`、关系保护和名片 CAS,并新鲜核对权威类型、生命周期状态、当前 owner、实体当前证书及所有签名,再允许提交。实体代际由主签证书与可信当前证书核对,不再依赖 frontmatter 的旧 `entity_cert_fingerprint`;证书代际和双文件 `relation_version` 不是同一概念。非当前 owner 的现代上传为 `forbidden`,声明 owner 与生命周期冲突、旧实体证书代际为 HTTP 409 / `conflict`,确定非法字段或签名为 `invalid`;生命周期、数据库或证书依赖不可用为 HTTP 503 / `unavailable`。沿用既有 PKI current HTTP 查询,不新增 RPC、证书链字段或独立关系账本;Group 旧入口不能据此开放 Org 或降级现代关系。
194
194
 
195
- 实体 fresh GET 必须同时携带 `X-AUN-Ownership-Check: 1`、`Cache-Control: no-cache`、`X-AUN-Signature-Format: multi-v1`;NS 仅凭 Check 头绕过 LRU 并新鲜验证全部签块,仍返回 not_applicable,不进入通用 Ownership 账本。GET/HEAD 按第 3.3 节协商表示,再返回 200 或按该表示 ETag 返回 304。响应保留 `X-AUN-Ownership-Status: not_applicable`、`X-AUN-Entity-Verification-Status: current|stale`、`X-AUN-Entity-Owner-AID` 和 `X-AUN-Entity-Cert-Fingerprint`;最终解散 owner 为空,无有效证书指纹为空。owner、状态或证书代际变化时为 `stale`,新 owner 可获取旧文件的表示 ETag 后按 CAS 替换;历史文件中的 owner 不作为当前权限。确实缺失时为 404,仍携带权威 owner/指纹及 stale,无 ETag;权威依赖失败为 503,不能伪装 404。
195
+ 实体 fresh GET 必须同时携带 `X-AUN-Ownership-Check: 1`、`Cache-Control: no-cache`、`X-AUN-Signature-Format: multi-v1`,绕过 LRU 并执行新鲜检查。现代声明进入通用双文件共识,使用第 3.3 节的协议、关系版本、lock 和结果 Header,不能按实体类型直接返回 `not_applicable`。仅缺少 `ownership` 的历史实体格式保留该标记及适用的实体 current/stale、权威 owner/证书指纹响应头;这些头不是现代共识证明。GET/HEAD 按协商表示返回 ETag,历史文件中的 owner 不作为当前权限。确实缺失为 404、无 ETag;权威依赖失败为 503,不能伪装 404 或未绑定。
196
196
 
197
- 新 SDK 首次发布用 `If-None-Match: *`,更新用原表示 `If-Match`;缺条件为 428,ETag 冲突为 412。实体 pending 保留完整签名原文、原 CAS、固定 owner 与实体证书指纹;显式重试先验证原件和当前生命周期代际,仅重传原字节。转移、rekey 或解散后停止旧代际待办,不换 owner、指纹或条件重签;连接恢复不隐式 PUT。新 SDK 现代上传不再保存或检查额外 V2 授权及其 ±300 秒窗口;旧 V2 兼容入口仍执行原授权检查;文件签名时间与当前证书校验仍按第 2.4 节执行。原条件完整且原文及对应 ETag 已证明提交时可仅观察完成。
197
+ 新 SDK 首次发布用 `If-None-Match: *`,更新用原表示 `If-Match`;缺条件为 428,ETag 冲突为 412。实体名片失败稿/pending 保留完整签名原文、原 CAS、固定 owner 及签名证书代际,应用显式重试先验证原件和当前生命周期,仅重传仍可提交的原字节;不更换 owner、证书或条件重签旧稿。创建/转移自身的检查点恢复另行保留,并复用同一关系版本。访问历史实体时,SDK 按当前身份和成功连接代际对单实体合并一次检查:先预筛本地实体材料,可用的本地共识匹配 owner 时直接结束;否则确认 active 生命周期 owner 后查询共识,具备本人及实体私钥时才补齐声明。失败不在本连接自动反复重试,真实重连后可重查;不在启动时遍历全部实体重传名片。现代上传不需额外 V2 授权;旧入口仍按原规则验证。原条件完整且原文及 ETag 已证明提交时可仅观察完成。
198
198
 
199
- 新 SDK 依据 NS fresh 权威 owner/指纹及独立 fresh PKI 查询交叉检查,不信 raw owner。Org 公共生命周期投影隐藏 owner,需 CAP 的 owner fields 不作为默认查询入口。公开 verified 下载逐块按签署者、尾签指纹和时间查询历史证书并验原始字节,不要求历史证书当前仍可签;不因 owner 或实体代际变化拒绝历史有效文件,历史验签不授予当前权限。确定坏签名或无效链为 `invalid`,依赖不可用为 `unavailable`。内部 fresh raw 可接收 stale 供条件替换,上传和当前授权仍执行当前生命周期及证书检查。
199
+ 新 SDK 通过 NS 查询当前双文件共识;补齐及生命周期编排另核对当前权威 owner、状态和实体签名材料,不信 raw owner 或历史实体响应头。owner 先条件发布本人签名的 `owner.md`,实体再签署配对名片并以 owner token 条件上传,完成后强制查询共识并核对 owner 和关系版本。首次历史补齐默认 v=1,同 owner 重试复用已有匹配声明;换 owner 须有旧 owner 指定目标的有效转移授权并使用 v+1,不能覆盖为新的无主绑定。公开 verified 下载逐块按签署者、尾签指纹和时间查询历史证书并验原始字节,不要求历史证书当前仍可签;历史验签不授予当前权限。确定坏签名或无效链为 `invalid`,依赖不可用为 `unavailable`,不能当成缺失关系补写。
200
200
 
201
- NS 对 Group/Org 实体上传与 legacy h.put 使用专用 Auditf 的 INFO event 绕过普通 level 过滤;普通 Ownership 独立 PUT 本轮不新增审计。日志记录 request_id、操作者、目标、权威类型、完整文件摘要、签名模式及转义字段;实际提交成功记 committed,拒绝记 rejected,操作失败记 failed。沿用 NS 日志,不新增审计服务或关系账本;数据库与日志非原子,不承诺无遗漏,Storage 副本失败不改写已提交结果。
201
+ NS 的旧实体上传分支及 legacy h.put 沿用专用 Auditf 的 INFO event,记录 request_id、操作者、目标、权威类型、完整文件摘要、签名模式及转义字段;提交成功记 committed,拒绝记 rejected,操作失败记 failed。现代实体走通用 Ownership PUT,不能把旧分支日志覆盖等同于全部现代路径。沿用 NS 日志,不新增审计服务或关系账本;数据库与日志非原子,不承诺无遗漏,Storage 副本失败不改写已提交结果。
202
202
 
203
203
  ## 3. Name Service 的锁定规则
204
204
 
@@ -343,7 +343,7 @@ flowchart TB
343
343
 
344
344
  原 owner 的有效 release 或权威删除使当前关系结果为 `released`。NS 不创建释放记录、不递增版本;sub 离线不妨碍当前校验方停止授予 owner 权限,sub 随后自行清理名片中的关系字段。
345
345
 
346
- release 发布后,旧关系不能通过新鲜授权检查;当前结果只由 NS 当前 `agent.md` 与 owner 当前 `owner.md` 共同决定。sub 的旧声明清理前须保留 release;sub 清理或转入另一有效关系后,owner 可核对当前 NS 及本任务完整原件后清理旧文件,不能只等待固定时长。
346
+ release 发布后,旧关系不能通过新鲜授权检查;当前关系声明依据 NS 当前 `agent.md` 与 owner 当前 `owner.md`;Group/Org 授权另须核对当前生命周期及实体证书。sub 的旧声明清理前须保留 release;sub 清理或转入另一有效关系后,owner 可核对当前 NS 及本任务完整原件后清理旧文件,不能只等待固定时长。
347
347
 
348
348
  原 owner 自签发布的 release `owner.md`(原路径、被释放版本 `1`):
349
349
 
@@ -642,11 +642,11 @@ Storage 不满足第 1.2 节的完整原子发布要求时,不得发布 `owner
642
642
 
643
643
  ## 6. 共识、审计与安全边界
644
644
 
645
- 共识检查只依据 NS 当前签名 `agent.md` 与 owner 当前签名 `owner.md`。本次校验期间完整文件、存在性和 ETag须保持一致;返回 `consensus` 时,两份声明的关系版本和双方 AID 必须匹配,签名及证书校验须通过。owner 的 `declare`、尚未提交的 `transfer_owner` 均可证明当前旧关系;转移授权过期不影响该旧关系声明。当前 release 或权威删除不能返回 `consensus`。响应 Header 只投影本次两份材料的校验结果,不能替代材料或新增事实。
645
+ 共识的关系声明依据 NS 当前签名 `agent.md` 与 owner 当前签名 `owner.md`;Group/Org 还须按第 1.3、2.5 节校验当前生命周期 owner、状态及实体证书。本次校验期间完整文件、存在性和 ETag须保持一致;返回 `consensus` 时,两份声明的关系版本和双方 AID 必须匹配,签名及证书校验须通过。owner 的 `declare`、尚未提交的 `transfer_owner` 均可证明当前旧关系;转移授权过期不影响该旧关系声明。当前 release 或权威删除不能返回 `consensus`。响应 Header 只投影本次两份材料的校验结果,不能替代材料或新增事实。
646
646
 
647
647
  self-owner 验证通过同样返回 `consensus`,仅证明该 AID 的自主管理声明;校验依据与外部关系相同。
648
648
 
649
- 下表六态仅用于通用主体;Group/Org 的通用共识入口直接返回 `status/code=not_applicable`、`retryable=false`,其 owner 授权另按第 1.3、2.5 节查询。
649
+ 下表六态同样适用于现代 Group/Org 的双文件共识;实体还须满足第 1.3、2.5 节的生命周期和当前证书约束。NS 对缺少 `ownership` 的历史实体格式保留 `not_applicable` 标记,不把 owner-only 名片解释为双文件共识;普通管理 Facade 的 `not_applicable` 另属入口限制,不能用于否定现代实体共识。
650
650
 
651
651
  | 结果 | 含义 |
652
652
  | --- | --- |