@agentunion/fastaun-browser 0.5.17 → 0.5.19

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 (119) hide show
  1. package/CHANGELOG.md +83 -0
  2. package/_packed_docs/CHANGELOG.md +83 -0
  3. package/_packed_docs/INDEX.md +163 -16
  4. package/_packed_docs/KITE_DOCS_GUIDE.md +52 -20
  5. package/_packed_docs/agent.md/SCHEMA.md +266 -207
  6. package/_packed_docs/aun/345/210/206/345/270/203/345/274/217/346/265/213/350/257/225/350/277/220/350/241/214/346/214/207/345/215/227.md +64 -31
  7. package/_packed_docs/aun/346/265/213/350/257/225/350/277/220/350/241/214/346/214/207/345/215/227.md +8 -6
  8. package/_packed_docs/protocol/01-/350/272/253/344/273/275/344/270/216/345/207/255/350/257/201/345/215/217/350/256/256-auth.md +39 -39
  9. package/_packed_docs/protocol/07-/351/224/231/350/257/257/347/240/201/344/270/216/347/212/266/346/200/201/346/234/272.md +1 -1
  10. package/_packed_docs/protocol/10-Group-/345/255/220/345/215/217/350/256/256.md +28 -9
  11. package/_packed_docs/protocol/11-Storage-/345/255/220/345/215/217/350/256/256.md +20 -2
  12. package/_packed_docs/protocol/agent.md/SCHEMA.md +4 -0
  13. package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +5 -2
  14. package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +246 -241
  15. package/_packed_docs/sdk/09-group-rpc-manual.md +46 -14
  16. package/_packed_docs/sdk/09-message-rpc-manual.md +40 -2
  17. package/_packed_docs/sdk/09-storage-rpc-manual.md +69 -38
  18. package/_packed_docs/sdk/AUN_DOCS_GUIDE.md +25 -5
  19. package/_packed_docs/sdk/INDEX.md +78 -18
  20. package/dist/agent-md-schema.d.ts +3 -0
  21. package/dist/agent-md-schema.d.ts.map +1 -1
  22. package/dist/agent-md-schema.js +46 -10
  23. package/dist/agent-md-schema.js.map +1 -1
  24. package/dist/agent-md.d.ts +44 -1
  25. package/dist/agent-md.d.ts.map +1 -1
  26. package/dist/agent-md.js +518 -26
  27. package/dist/agent-md.js.map +1 -1
  28. package/dist/aid-store.d.ts +12 -1
  29. package/dist/aid-store.d.ts.map +1 -1
  30. package/dist/aid-store.js +113 -18
  31. package/dist/aid-store.js.map +1 -1
  32. package/dist/aid.d.ts +17 -1
  33. package/dist/aid.d.ts.map +1 -1
  34. package/dist/aid.js +69 -9
  35. package/dist/aid.js.map +1 -1
  36. package/dist/auth.d.ts +4 -1
  37. package/dist/auth.d.ts.map +1 -1
  38. package/dist/auth.js +343 -23
  39. package/dist/auth.js.map +1 -1
  40. package/dist/bundle.js +37513 -31501
  41. package/dist/cert-utils.d.ts +1 -1
  42. package/dist/cert-utils.d.ts.map +1 -1
  43. package/dist/cert-utils.js +24 -10
  44. package/dist/cert-utils.js.map +1 -1
  45. package/dist/client/delivery.d.ts +16 -1
  46. package/dist/client/delivery.d.ts.map +1 -1
  47. package/dist/client/delivery.js +198 -58
  48. package/dist/client/delivery.js.map +1 -1
  49. package/dist/client/rpc-pipeline.d.ts.map +1 -1
  50. package/dist/client/rpc-pipeline.js +28 -6
  51. package/dist/client/rpc-pipeline.js.map +1 -1
  52. package/dist/client/v2-e2ee.d.ts +1 -0
  53. package/dist/client/v2-e2ee.d.ts.map +1 -1
  54. package/dist/client/v2-e2ee.js +858 -484
  55. package/dist/client/v2-e2ee.js.map +1 -1
  56. package/dist/client.d.ts +100 -1
  57. package/dist/client.d.ts.map +1 -1
  58. package/dist/client.js +1216 -24
  59. package/dist/client.js.map +1 -1
  60. package/dist/errors.d.ts.map +1 -1
  61. package/dist/errors.js +3 -2
  62. package/dist/errors.js.map +1 -1
  63. package/dist/events.d.ts +4 -0
  64. package/dist/events.d.ts.map +1 -1
  65. package/dist/events.js +41 -1
  66. package/dist/events.js.map +1 -1
  67. package/dist/facades.d.ts +84 -2
  68. package/dist/facades.d.ts.map +1 -1
  69. package/dist/facades.js +104 -4
  70. package/dist/facades.js.map +1 -1
  71. package/dist/index.d.ts +8 -3
  72. package/dist/index.d.ts.map +1 -1
  73. package/dist/index.js +3 -1
  74. package/dist/index.js.map +1 -1
  75. package/dist/keystore/index.d.ts +17 -0
  76. package/dist/keystore/index.d.ts.map +1 -1
  77. package/dist/keystore/indexeddb-shared.d.ts +10 -1
  78. package/dist/keystore/indexeddb-shared.d.ts.map +1 -1
  79. package/dist/keystore/indexeddb-shared.js +111 -0
  80. package/dist/keystore/indexeddb-shared.js.map +1 -1
  81. package/dist/keystore/indexeddb-token-store.d.ts +7 -1
  82. package/dist/keystore/indexeddb-token-store.d.ts.map +1 -1
  83. package/dist/keystore/indexeddb-token-store.js +30 -1
  84. package/dist/keystore/indexeddb-token-store.js.map +1 -1
  85. package/dist/org-protocol.d.ts +98 -0
  86. package/dist/org-protocol.d.ts.map +1 -0
  87. package/dist/org-protocol.js +1742 -0
  88. package/dist/org-protocol.js.map +1 -0
  89. package/dist/ownership-proof.d.ts +118 -0
  90. package/dist/ownership-proof.d.ts.map +1 -0
  91. package/dist/ownership-proof.js +283 -0
  92. package/dist/ownership-proof.js.map +1 -0
  93. package/dist/ownership-v21.d.ts +177 -0
  94. package/dist/ownership-v21.d.ts.map +1 -0
  95. package/dist/ownership-v21.js +609 -0
  96. package/dist/ownership-v21.js.map +1 -0
  97. package/dist/ownership-workflow.d.ts +146 -0
  98. package/dist/ownership-workflow.d.ts.map +1 -0
  99. package/dist/ownership-workflow.js +1066 -0
  100. package/dist/ownership-workflow.js.map +1 -0
  101. package/dist/seq-tracker.d.ts +1 -0
  102. package/dist/seq-tracker.d.ts.map +1 -1
  103. package/dist/seq-tracker.js +10 -2
  104. package/dist/seq-tracker.js.map +1 -1
  105. package/dist/tools/cross-sdk-agent.d.ts +82 -0
  106. package/dist/tools/cross-sdk-agent.d.ts.map +1 -1
  107. package/dist/tools/cross-sdk-agent.js +332 -7
  108. package/dist/tools/cross-sdk-agent.js.map +1 -1
  109. package/dist/transport.d.ts +6 -0
  110. package/dist/transport.d.ts.map +1 -1
  111. package/dist/transport.js +88 -2
  112. package/dist/transport.js.map +1 -1
  113. package/dist/v2/e2ee/decrypt.d.ts +1 -0
  114. package/dist/v2/e2ee/decrypt.d.ts.map +1 -1
  115. package/dist/v2/e2ee/decrypt.js +9 -1
  116. package/dist/v2/e2ee/decrypt.js.map +1 -1
  117. package/dist/version.d.ts +1 -1
  118. package/dist/version.js +1 -1
  119. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -6,6 +6,89 @@
6
6
 
7
7
  ---
8
8
 
9
+ ## 0.5.19 — 未发布
10
+
11
+ > 基线:`0.5.18` 的仓库快照 `1f03bf2d`;本节整理 2026-10-11 工作区的 SDK 增量。
12
+
13
+ ### 新功能
14
+
15
+ #### 跨设备已读未读
16
+ - 新增 `MessageFacade.read/readState`、`GroupFacade.read/readState`,分别上报话题的 `last_read_message_id`、查询当前 AID 的跨设备汇总及当前设备 seq 映射;业务已读状态独立于消息 ACK、Pull 游标和群事件游标。
17
+ - 消费 `message.read_changed`、`group.read_changed`,按公共 `last_read_order` 单调更新缓存并抑制重复/倒序事件;切换 AID 或设备时隔离缓存和在途查询结果。
18
+ - 重连后补查已登记的话题并发布本地 `read_state_sync` 完成事件,携带汇总状态及逐项错误;保留 `current_device_seq=null` 和 `mapping_status`;超过安全整数范围的公共顺序和设备 seq 保留为精确十进制字符串。
19
+
20
+ #### Ownership 2.1 管理
21
+ - 新增 `bindOwneraid`、`bindSubaid`、`releaseSubaid`、`transferSubaid`、`acceptOwnershipRequest`、`rejectOwnershipRequest` 和 `checkOwnershipConsensus`,覆盖双向发起绑定、释放、转移、审批和独立共识检查。
22
+ - 关系依据 sub 的 NS `agent.md` 与 owner 的 `sub_aids/{sub_aid}/owner.md`;使用本人尾签、`relation_version`、owner 锁、NS ETag 和 Storage revision CAS 验证及提交,不依赖旧 Auth owner operation。
23
+ - `aun.ownership.sdk.v1` 控制消息走加密消息通道,由 SDK 消费;审批、inbox/outbox、待提交原始字节和步骤先持久化到 IndexedDB,连接后续跑。任务完成需要重新读取权威文件验证目标共识,不能由通知或发送成功推断。
24
+ - 新增 `ownership.request/action_required/progress/completed/rejected/stopped/error` 应用事件;group/org 使用专属生命周期,通用 Ownership 2.1 返回 `not_applicable`。
25
+
26
+ #### 凭证与组织服务
27
+ - 增加 `credential` 门面的 `create`、`verifySignature`、`verify`、`verifyRegistrationReceipt` 及登记、撤销、状态/撤销列表 RPC;区分离线签名校验和包含凭证链、实时状态、能力范围、实际请求绑定的完整验证。
28
+ - 增加 `org.lifecycle/member/credential/authz/audit` 门面、组织请求准备、成员双签绑定和转让接受签署;组织请求绑定目标服务、nonce、请求摘要及必要的代表证明,并进入统一客户端签名管线。
29
+ - 组织/群身份由当前 owner 持有;专属转移强制 rekey。实体 `agent.md` 由 owner 使用本人证书和私钥代签、代上传,绑定 `signer_aid`、实体证书指纹及上传授权,失败阶段可恢复。
30
+ - `org.*` 与 `credential.revoked` 事件在进入应用事件队列前验证签发服务、接收身份、证书、时间窗口及签名,并按服务/事件/接收身份去重。
31
+
32
+ ### 修复
33
+
34
+ - Ownership 控制消息落盘或处理失败时保留有序队列/sender IK 待重试项,避免提前提交交付水位或 ACK;V2 解密保留控制消息原始 JSON,供重复键和严格字段校验。
35
+ - Ownership 证书验证绑定当前证书代际、生命周期状态和可信吊销证据;普通名片上传与关系字段变更分开,实体解散或身份失效后清理相应本地状态。
36
+ - 错误映射优先保留服务端 `data.retryable`,组织请求采用一致 canonical JSON 和请求参数摘要。
37
+
38
+ ### 兼容性与语言边界
39
+
40
+ - `AIDStore.register(aid, {type, owner?, exttype?})` 登记接口改为显式传入 type;human 禁止 owner,agent/group/org 要求 owner。登记意图持久化后由连接期续跑关系流程,group/org 交给各自生命周期。
41
+ - 旧 `auth.aid_register_*` / `auth.aid_bind_*` 关系编排已移除;`bindAid`、`bindOwner`、`releaseOwnership` 的 legacy 入口返回 `unsupported_protocol`,调用方应迁移到本节的 2.1 管理 API。
42
+ - 浏览器的凭证创建、成员绑定、转让签署及验签 helper 使用异步 WebCrypto;Ownership 任务、revision CAS 和登记意图保存到 IndexedDB。
43
+ - 组织创建、接受转让及解散可通过 `aidStore` 接入实体身份编排;`org.resource/task/host/workflow` 当前通过 `client.call` 使用。
44
+ - 包配置、锁文件、运行时 `VERSION`、V2 envelope 的 `sdk_version` 及加密 conformance 期望统一为 `0.5.19`。
45
+
46
+ ### 测试
47
+
48
+ - 增加 Ownership 2.1 和组织/凭证协议的跨语言共享向量、严格解析、签名/吊销、CAS、审批与重连恢复测试。
49
+ - 扩展已读状态门面、单调缓存、身份切换、重连补偿、组织实体身份及服务事件验签测试;配套单域、浏览器、cross-SDK 和双域测试入口列于 Python parity 文档。
50
+
51
+ ## 0.5.18 — 2026-10-06
52
+
53
+ ### 新功能
54
+
55
+ #### Owner relation 与 AID 注册编排
56
+ - 新增 `register({aid, type, owner?, ...})`,由 SDK 编排 `auth.aid_register_prepare` → `auth.aid_register_submit` → 带 `ownerOperationId` 的 agent.md 上传 → `auth.aid_register_activate`;保留 `register(aid)` 的 legacy 兼容语义。
57
+ - 新增 `bindAid`、`getAidBindingStatus`、`resumeAidBinding` 和 `changeOwner`,分别覆盖已有 `legacy_unbound`/`unbound` AID 的绑定、状态查询、operation 恢复和三方换 owner;绑定不重新签发证书。
58
+ - 注册规则明确 human 不得指定 owner,非 human 必须指定 owner,只有 agent 支持 self-owner;外部 owner 需要 subject 与 owner 双签,换 owner 需要旧 owner、subject、新 owner 签名及 `expected_relation_version` CAS。
59
+ - 新增 ownership proof canonical bytes、`factHash`/`statementHash`、UUID v4 `proofId` 和签名封套校验;AID 统一规范化为小写,普通 agent.md 更新保留现有 proof,不能通过普通 PUT 改 owner。
60
+ - owner operation 有效期为 7 天;pending、失败或过期期间证书、登录、连接和基本消息通信保持可用,关系状态可查询并从 operation ID 恢复。
61
+
62
+ #### Owner relation Storage 与审计门面
63
+ - 补齐 `storage.relation_backup_provision`、`relation_backup_revoke`、`relation_backup_status` 的 SDK 契约和集成验证;关系目录固定为 `.aun/subjects/<lowercase_subject_aid>`,撤销只回收 ACL、保留数据并递增 ACL generation。
64
+ - `MessageFacade` 和 `GroupFacade` 新增 `getAuditStatus`,统一映射对应的审计状态 RPC。
65
+
66
+ ### 修复
67
+
68
+ #### 证书与签名安全
69
+ - `AID.sign` 拒绝无效、过期或尚未生效证书;新增 `verifyWithContext`,绑定 expected AID、完整证书指纹、签名时间及当前有效性选项。
70
+ - RPC client signature、事件签名和 agent.md 签名路径增加证书有效期检查,并统一处理 `signature_verification_unavailable`、`type_change_blocked`、`aid_binding_required` 等关系错误。
71
+
72
+ #### V2 消息同步与投递
73
+ - P2P/Group V2 Pull 增加有界生产者消费者流水线、volatile cursor 去重、epoch mismatch 单次重试和后台 gap fill;`background_sync` 关闭时不再隐式启动后台补齐。
74
+ - inline push 在终态解密失败时仍提交连续序号并保留 ACK pending;Push、Pull、sender IK 延迟恢复共用去重和并发占用状态,减少交错投递重复。
75
+ - 当前设备 self-sync 消息只推进本地发布序号而不重复投递,其它设备仍可收到;公开 payload 保留 `sender_device_id` 和 `direction`,继续隐藏内部 slot 字段。
76
+
77
+ #### 会话、设备与连接生命周期
78
+ - 加强 slot ID/full slot ID 隔离,支持 long/short connection、short TTL 和 `background_sync` 组合;重连任务增加所有权、代际保护和旧连接结果隔离。
79
+ - 连接阶段暂存 Push,待应用监听器注册后排空,降低 `delivery.changed` 丢失和竞态;补齐多设备明文 P2P/Group self-sync 边界。
80
+
81
+ ### 改进
82
+
83
+ - 四端公开类型和结果继续对齐 volatile cursor、ACK、设备来源及审计状态;当前 CA/Name Service 仅实现 `signing` 与 `group_identity` 证书用途,`org_identity` 不作为已实现能力暴露。
84
+ - SDK、锁文件、运行时版本、V2 E2EE envelope `sdk_version` 和 conformance 期望统一更新为 `0.5.18`。
85
+
86
+ ### 测试
87
+
88
+ - 新增 ownership proof 四端 golden vector、大小写 AID、非法 UUID/控制字符和跨 SDK 验签测试。
89
+ - 增加 JavaScript owner relation 集成测试,覆盖新注册、self-owner、外部 owner 双签、legacy bind、operation 恢复、换 owner、unbind、Storage ACL/数据保留和重建访问。
90
+ - 扩展证书有效期、上下文验签、审计 facade、V2 Pull/Push、volatile 分页、设备隔离、连接代际和浏览器 E2E/conformance 测试。
91
+
9
92
  ## 0.5.17 — 2026-09-19
10
93
 
11
94
  ### 新功能
@@ -6,6 +6,89 @@
6
6
 
7
7
  ---
8
8
 
9
+ ## 0.5.19 — 未发布
10
+
11
+ > 基线:`0.5.18` 的仓库快照 `1f03bf2d`;本节整理 2026-10-11 工作区的 SDK 增量。
12
+
13
+ ### 新功能
14
+
15
+ #### 跨设备已读未读
16
+ - 新增 `MessageFacade.read/readState`、`GroupFacade.read/readState`,分别上报话题的 `last_read_message_id`、查询当前 AID 的跨设备汇总及当前设备 seq 映射;业务已读状态独立于消息 ACK、Pull 游标和群事件游标。
17
+ - 消费 `message.read_changed`、`group.read_changed`,按公共 `last_read_order` 单调更新缓存并抑制重复/倒序事件;切换 AID 或设备时隔离缓存和在途查询结果。
18
+ - 重连后补查已登记的话题并发布本地 `read_state_sync` 完成事件,携带汇总状态及逐项错误;保留 `current_device_seq=null` 和 `mapping_status`;超过安全整数范围的公共顺序和设备 seq 保留为精确十进制字符串。
19
+
20
+ #### Ownership 2.1 管理
21
+ - 新增 `bindOwneraid`、`bindSubaid`、`releaseSubaid`、`transferSubaid`、`acceptOwnershipRequest`、`rejectOwnershipRequest` 和 `checkOwnershipConsensus`,覆盖双向发起绑定、释放、转移、审批和独立共识检查。
22
+ - 关系依据 sub 的 NS `agent.md` 与 owner 的 `sub_aids/{sub_aid}/owner.md`;使用本人尾签、`relation_version`、owner 锁、NS ETag 和 Storage revision CAS 验证及提交,不依赖旧 Auth owner operation。
23
+ - `aun.ownership.sdk.v1` 控制消息走加密消息通道,由 SDK 消费;审批、inbox/outbox、待提交原始字节和步骤先持久化到 IndexedDB,连接后续跑。任务完成需要重新读取权威文件验证目标共识,不能由通知或发送成功推断。
24
+ - 新增 `ownership.request/action_required/progress/completed/rejected/stopped/error` 应用事件;group/org 使用专属生命周期,通用 Ownership 2.1 返回 `not_applicable`。
25
+
26
+ #### 凭证与组织服务
27
+ - 增加 `credential` 门面的 `create`、`verifySignature`、`verify`、`verifyRegistrationReceipt` 及登记、撤销、状态/撤销列表 RPC;区分离线签名校验和包含凭证链、实时状态、能力范围、实际请求绑定的完整验证。
28
+ - 增加 `org.lifecycle/member/credential/authz/audit` 门面、组织请求准备、成员双签绑定和转让接受签署;组织请求绑定目标服务、nonce、请求摘要及必要的代表证明,并进入统一客户端签名管线。
29
+ - 组织/群身份由当前 owner 持有;专属转移强制 rekey。实体 `agent.md` 由 owner 使用本人证书和私钥代签、代上传,绑定 `signer_aid`、实体证书指纹及上传授权,失败阶段可恢复。
30
+ - `org.*` 与 `credential.revoked` 事件在进入应用事件队列前验证签发服务、接收身份、证书、时间窗口及签名,并按服务/事件/接收身份去重。
31
+
32
+ ### 修复
33
+
34
+ - Ownership 控制消息落盘或处理失败时保留有序队列/sender IK 待重试项,避免提前提交交付水位或 ACK;V2 解密保留控制消息原始 JSON,供重复键和严格字段校验。
35
+ - Ownership 证书验证绑定当前证书代际、生命周期状态和可信吊销证据;普通名片上传与关系字段变更分开,实体解散或身份失效后清理相应本地状态。
36
+ - 错误映射优先保留服务端 `data.retryable`,组织请求采用一致 canonical JSON 和请求参数摘要。
37
+
38
+ ### 兼容性与语言边界
39
+
40
+ - `AIDStore.register(aid, {type, owner?, exttype?})` 登记接口改为显式传入 type;human 禁止 owner,agent/group/org 要求 owner。登记意图持久化后由连接期续跑关系流程,group/org 交给各自生命周期。
41
+ - 旧 `auth.aid_register_*` / `auth.aid_bind_*` 关系编排已移除;`bindAid`、`bindOwner`、`releaseOwnership` 的 legacy 入口返回 `unsupported_protocol`,调用方应迁移到本节的 2.1 管理 API。
42
+ - 浏览器的凭证创建、成员绑定、转让签署及验签 helper 使用异步 WebCrypto;Ownership 任务、revision CAS 和登记意图保存到 IndexedDB。
43
+ - 组织创建、接受转让及解散可通过 `aidStore` 接入实体身份编排;`org.resource/task/host/workflow` 当前通过 `client.call` 使用。
44
+ - 包配置、锁文件、运行时 `VERSION`、V2 envelope 的 `sdk_version` 及加密 conformance 期望统一为 `0.5.19`。
45
+
46
+ ### 测试
47
+
48
+ - 增加 Ownership 2.1 和组织/凭证协议的跨语言共享向量、严格解析、签名/吊销、CAS、审批与重连恢复测试。
49
+ - 扩展已读状态门面、单调缓存、身份切换、重连补偿、组织实体身份及服务事件验签测试;配套单域、浏览器、cross-SDK 和双域测试入口列于 Python parity 文档。
50
+
51
+ ## 0.5.18 — 2026-10-06
52
+
53
+ ### 新功能
54
+
55
+ #### Owner relation 与 AID 注册编排
56
+ - 新增 `register({aid, type, owner?, ...})`,由 SDK 编排 `auth.aid_register_prepare` → `auth.aid_register_submit` → 带 `ownerOperationId` 的 agent.md 上传 → `auth.aid_register_activate`;保留 `register(aid)` 的 legacy 兼容语义。
57
+ - 新增 `bindAid`、`getAidBindingStatus`、`resumeAidBinding` 和 `changeOwner`,分别覆盖已有 `legacy_unbound`/`unbound` AID 的绑定、状态查询、operation 恢复和三方换 owner;绑定不重新签发证书。
58
+ - 注册规则明确 human 不得指定 owner,非 human 必须指定 owner,只有 agent 支持 self-owner;外部 owner 需要 subject 与 owner 双签,换 owner 需要旧 owner、subject、新 owner 签名及 `expected_relation_version` CAS。
59
+ - 新增 ownership proof canonical bytes、`factHash`/`statementHash`、UUID v4 `proofId` 和签名封套校验;AID 统一规范化为小写,普通 agent.md 更新保留现有 proof,不能通过普通 PUT 改 owner。
60
+ - owner operation 有效期为 7 天;pending、失败或过期期间证书、登录、连接和基本消息通信保持可用,关系状态可查询并从 operation ID 恢复。
61
+
62
+ #### Owner relation Storage 与审计门面
63
+ - 补齐 `storage.relation_backup_provision`、`relation_backup_revoke`、`relation_backup_status` 的 SDK 契约和集成验证;关系目录固定为 `.aun/subjects/<lowercase_subject_aid>`,撤销只回收 ACL、保留数据并递增 ACL generation。
64
+ - `MessageFacade` 和 `GroupFacade` 新增 `getAuditStatus`,统一映射对应的审计状态 RPC。
65
+
66
+ ### 修复
67
+
68
+ #### 证书与签名安全
69
+ - `AID.sign` 拒绝无效、过期或尚未生效证书;新增 `verifyWithContext`,绑定 expected AID、完整证书指纹、签名时间及当前有效性选项。
70
+ - RPC client signature、事件签名和 agent.md 签名路径增加证书有效期检查,并统一处理 `signature_verification_unavailable`、`type_change_blocked`、`aid_binding_required` 等关系错误。
71
+
72
+ #### V2 消息同步与投递
73
+ - P2P/Group V2 Pull 增加有界生产者消费者流水线、volatile cursor 去重、epoch mismatch 单次重试和后台 gap fill;`background_sync` 关闭时不再隐式启动后台补齐。
74
+ - inline push 在终态解密失败时仍提交连续序号并保留 ACK pending;Push、Pull、sender IK 延迟恢复共用去重和并发占用状态,减少交错投递重复。
75
+ - 当前设备 self-sync 消息只推进本地发布序号而不重复投递,其它设备仍可收到;公开 payload 保留 `sender_device_id` 和 `direction`,继续隐藏内部 slot 字段。
76
+
77
+ #### 会话、设备与连接生命周期
78
+ - 加强 slot ID/full slot ID 隔离,支持 long/short connection、short TTL 和 `background_sync` 组合;重连任务增加所有权、代际保护和旧连接结果隔离。
79
+ - 连接阶段暂存 Push,待应用监听器注册后排空,降低 `delivery.changed` 丢失和竞态;补齐多设备明文 P2P/Group self-sync 边界。
80
+
81
+ ### 改进
82
+
83
+ - 四端公开类型和结果继续对齐 volatile cursor、ACK、设备来源及审计状态;当前 CA/Name Service 仅实现 `signing` 与 `group_identity` 证书用途,`org_identity` 不作为已实现能力暴露。
84
+ - SDK、锁文件、运行时版本、V2 E2EE envelope `sdk_version` 和 conformance 期望统一更新为 `0.5.18`。
85
+
86
+ ### 测试
87
+
88
+ - 新增 ownership proof 四端 golden vector、大小写 AID、非法 UUID/控制字符和跨 SDK 验签测试。
89
+ - 增加 JavaScript owner relation 集成测试,覆盖新注册、self-owner、外部 owner 双签、legacy bind、operation 恢复、换 owner、unbind、Storage ACL/数据保留和重建访问。
90
+ - 扩展证书有效期、上下文验签、审计 facade、V2 Pull/Push、volatile 分页、设备隔离、连接代际和浏览器 E2E/conformance 测试。
91
+
9
92
  ## 0.5.17 — 2026-09-19
10
93
 
11
94
  ### 新功能
@@ -17,21 +17,48 @@
17
17
  | [AUNClient 门面化与 Runtime 状态迁移细化方案](design/AUNClient门面化与Runtime状态迁移细化方案.md) | AUNClient 完全门面化、ClientRuntime 单一状态源和四端分批迁移步骤 |
18
18
  | [消息同步与历史拉取改造方案](消息同步与历史拉取改造方案.md) | Forward A/T/H 窗口、Group 成员可见性下界、Tail/History RPC、页内唯一有序发布、应用层跨页幂等排序、三 Pull Gate、缺 sender IK 有界同步 bootstrap、永久页内 Gap、坏密文推进和跨 SDK 验收门禁 |
19
19
  | [P2P 消息 TTL 内存缓存方案](design/P2P消息TTL内存缓存方案.md) | `message.send` 秒级 TTL 钳制、持久/volatile 双游标、按 device 收件箱、隐藏 slot lease/ACK、文件 epoch、消息调试计数器与 payload type 分类、多实例/跨域和四 SDK 测试矩阵 |
20
+ | [跨设备已读未读方案](跨设备已读未读方案.md) | 同一 AID 多设备按话题同步已读位置;服务端按 message ID 公共顺序汇总,返回汇总 message ID 及当前设备 seq 映射,支持 P2P/Group、批量和部分会话上报 |
21
+ | [跨设备已读未读详细设计](跨设备已读未读详细设计.md) | RPC、单条/显式空值边界、紧凑状态表、晚到位置持久回填、Group canonical 与权限版本、owner 事件路由及四端补偿 |
22
+ | [跨设备已读未读实施计划](跨设备已读未读实施计划.md) | 按 TDD 分阶段落地服务端、状态缓存与异步批写、Gateway、四端 SDK、单域/E2E/cross-SDK/跨域测试及完成定义 |
23
+ | [跨设备已读未读 SDK 集成指南](跨设备已读未读SDK集成指南.md) | TypeScript 身份加载、P2P/Group 上报查询、单调事件、本地 `read_state_sync`、精确整数和映射状态 |
24
+ | [跨设备已读未读 SDK 实现/移植指南](跨设备已读未读SDK实现移植指南.md) | 其它语言 SDK 的 wire 契约、状态表迁移、顺序与映射、CACHE/异步批写、事件联邦、四端对齐和测试矩阵 |
25
+ | [跨设备已读未读代码审查报告](跨设备已读未读代码审查报告.md) | 服务端及四端 SDK 补充修复、本轮实际验证与历史隔离/Docker 证据;部署层验收未执行 |
20
26
  | [消息同步与历史拉取代码审查问题清单](消息同步与历史拉取代码审查问题清单.md) | Python/Go 服务端、Gateway 与四 SDK 当前实现的 P0/P1/P2 问题、retention/Group Forward 可见性边界、跨语言差异、修复顺序和已排除误报 |
21
27
  | [跨语言容器E2E测试方案](design/跨语言容器E2E测试方案.md) | 多语言 SDK 同网同服、test-runner 控制面的跨语言 E2E 方案 |
22
- | [E2EE V2 简化为 1DH + Per-AID Wrap 方案](design/E2EE_V2简化为1DH加Per-AID_Wrap方案.md) | SDK bootstrap 能力声明 + 服务端 policy 控制 1DH/per-AID wrap 的兼容方案 |
23
- | [E2EE V2 消息通信时序图](sdk/E2EE_V2消息通信时序图.md) | 当前 V2-only P2P / Group 明文与加密主链路、设备密钥注册和 pull/ack 时序 |
24
- | [AUN RPC Trace 增强设计](design/2026-05-22-aun-rpc-trace-enhancement.md) | RPC trace 诊断字段与 enter/exit span 设计 |
28
+ | [E2EE V2 简化为 1DH + Per-AID Wrap 方案](design/E2EE_V2简化为1DH加Per-AID_Wrap方案.md) | SDK bootstrap 能力声明 + 服务端 policy 控制 1DH/per-AID wrap 的兼容方案 |
29
+ | [E2EE V2 消息通信时序图](sdk/E2EE_V2消息通信时序图.md) | 当前 V2-only P2P / Group 明文与加密主链路、设备密钥注册和 pull/ack 时序 |
30
+ | [ProtectedHeaders 用法专题](sdk/ProtectedHeaders用法专题.md) | 四 SDK `protected_headers` API、E2EE V2 元数据 HMAC、自动字段和接收信任边界 |
31
+ | [Ownership 协议定义 2.1](protocol/Ownership协议定义2.1.md) | 当前普通双文件/锁/版本、非权威 P2P 编排,以及 Group/Org 专属生命周期、owner 本人尾签 signer_aid、V2 授权和实体证书代际 |
32
+ | [Ownership SDK 编排指南 2.1](sdk/Ownership-SDK编排指南2.1.md) | 七 Facade、审批、普通加密 P2P、本地事件、按角色完成证据与恢复契约 |
33
+ | [Ownership 2.1 SDK 应用集成指南](sdk/Ownership2.1-SDK应用集成指南.md) | 当前应用接入、Group/Org 作为 sub 的边界、审批策略、任务事件、新鲜共识与 legacy 展示字段边界 |
34
+ | [Ownership 2.1 SDK 开发与移植指南](sdk/Ownership2.1-SDK开发与移植指南.md) | 当前 SDK 文件验证、Storage 权威 revision、条件发布与发布标记恢复、HTTP 428 映射、持久任务和逐条通知恢复 |
35
+ | [凭证与组织服务 SDK 应用集成指南](sdk/凭证与组织服务SDK应用集成指南.md) | 0.5.19 应用接入、CAP 完整验证、登记回执、成员闭环、代表请求和转让恢复 |
36
+ | [凭证与组织服务 SDK 开发与移植指南](sdk/凭证与组织服务SDK开发与移植指南.md) | 0.5.19 四端协议实现、canonical JSON、强状态 proof、facade/RPC、持久编排和共同向量 |
37
+ | [Ownership 2.1 详细设计](sdk/Ownership2.1详细设计.md) | SDK、NS、Storage 组件职责、原子提交、持久证据及 journal 恢复边界 |
38
+ | [Ownership 2.1 TDD 分阶段实施计划](sdk/Ownership2.1-TDD分阶段实施计划.md) | 冻结实现契约、HTTP 428 与错误分类、共同向量、实施账本与四 SDK 实际验收范围 |
39
+ | [Ownership 管理专题(legacy)](sdk/Ownership管理专题.md) | 历史 `aun.ownership.v1`、proof、托管、代签、代上传与 rekey 记录,不作为 2.1 接入依据 |
40
+ | [Ownership SDK 集成指南(legacy)](sdk/Ownership-SDK集成指南.md) | 2026-10-09 历史 TypeScript 应用接入、旧审批 API 与自动编排记录 |
41
+ | [Ownership SDK 实现指南(legacy)](sdk/Ownership-SDK实现指南.md) | 历史 proof/escrow、metadata、恢复和 rekey 移植记录 |
42
+ | [Ownership 协议定义(legacy)](protocol/Ownership协议定义.md) | 历史 `aun.ownership.v1`、proof、托管和 owner 上传授权格式 |
43
+ | [Ownership 2.1 代码审查报告](audit/Ownership2.1代码审查报告.md) | 历史服务端/四端审查与修复;本轮 13 项复审、逐项参考端、V2 过期停传、无消息释放清理及本地验证边界 |
44
+ | [Group 专属生命周期与名片](sdk/09-group-rpc-manual.md) | 自动 owner 绑定/解绑、强制 rekey 的两阶段转移、owner 本人尾签和 V2 名片上传 |
45
+ | [Org 0.8 专属生命周期](../../extensions/services/docs/org/0.8/02-组织模型.md) | 创建与解散 owner 自动建立/解除、先 rekey 后 owner CAS、材料归属与组织名片 |
46
+ | [AUN RPC Trace 增强设计](design/2026-05-22-aun-rpc-trace-enhancement.md) | RPC trace 诊断字段与 enter/exit span 设计 |
25
47
  | [AUN 服务端消息通信诊断面板方案](design/AUN服务端消息通信诊断面板方案.md) | aun-console 消息通信页的服务端可观察诊断面板总体方案 |
26
48
  | [服务端消息通信诊断面板 P0 方案](design/服务端消息通信诊断面板P0方案.md) | aun-console 消息通信页的服务端可观察 P0 诊断面板 |
27
49
  | [消息收件箱统一迁移方案](design/消息收件箱统一迁移方案.md) | P2P `message_inbox` 与群消息 `group_inbox` 的统一读模型、后台回填和旧表清理方案 |
28
50
  | [AUN 反向代理服务方案与 TDD 实施计划](design/AUN反向代理服务方案与TDD实施计划.md) | AUN Service Proxy、service_proxy 服务模块、SDK service-proxy-client、URL 路由、隧道协议、Web 边界和分阶段 TDD 落地计划 |
51
+ | [agent.md Schema(legacy 2.0)](agent.md/SCHEMA.md) | 历史 Ownership 2.0 双文件声明与撤销格式;当前 2.1 文件、关系版本和 owner 锁见协议定义 2.1 |
29
52
  | [远程 agent.md 缓存与 ETag 透传方案](agent.md/远程agent.md缓存与etag透传方案.md) | 远程 agent.md per-AID 本地文件/IndexedDB 缓存、Gateway `_meta.agent_md_etags` 角色、消息信封 ETag 和注入节流方案 |
30
- | [群索引版本提示与附件引用方案](design/群索引版本提示与附件引用方案.md) | `group.index` 签名索引、`_meta.group_indexes` 版本提示、CAS 更新、服务端缓存注入和附件稳定引用 |
53
+ | [agent.md Schema 与签发/验签流程澄清记录](agent.md/working/agent.md-schema与签发验签流程澄清.md) | working 讨论记录:当前 Schema、内嵌签名实现、三字段关系声明与 self-owner 单签、公开 proof 独立验签、owner 关系写入经 Auth 验证及冲突仲裁、事实摘要与 nonce/编排上下文分层、Auth 登记见证与回执、证书/关系状态分离,以及 `unbound`/`unusable`、状态 pull/push、TTL、type-change 和 Storage 权限的最新决策 |
54
+ | [AID 类型、owner 关系与换 owner 编排方案](agent.md/working/AID类型-owner关系与换owner编排方案.md) | working 方案:Schema 的 owner/proof 可选但出现即必须完整合法,human 禁止 owner;共同签署声明字段为 proof_id/subject_aid/owner_aid,self-owner 仅 subject 单签,事实摘要排除 nonce、完整声明摘要绑定 proof,使用可见分号域分隔符;Auth 作为登记机构托管证据并签发回执,公开 owner 声明多数场景可独立验证,旧 AID 通过 `aid_bind` 建立 type/owner 绑定且基本登录通信不受限,关系写入经 Auth 仲裁,Storage 内部对象可删除/移动/重命名,失效关系进入 `unbound`/`unusable` |
55
+ | [AID 类型、owner 关系与 agent.md 签发/换 owner 完整设计与实施计划](agent.md/working/AID类型-owner关系完整设计与实施计划.md) | 汇总设计及 Phase 0 已确认的 P0-A01 至 P0-A12:Schema owner/proof 可选性与 human 禁止 owner、三字段共同声明与 self-owner 单签、事实 hash 与完整声明 hash 分层、canonical JSON/可见分号域分隔符/签名封套、proof-only 与 registered 验证等级、Auth 登记见证/回执、证书状态与关系 operation 分离、legacy/绑定中基本登录通信及按应用场景降级、旧 AID `aid_bind` 与新建 `aid_register` 的 Facade/RPC 边界、active/pending 唯一性检查、离线审批、`unbound`/`unusable`、Storage 保留目录和内部对象操作、服务端/四端 SDK 调整及逐阶段验收标准;剩余仅为正式 wire/RPC 文档和跨端向量落稿 |
56
+ | [本地 Docker 测试 Bug 清单](agent.md/working/本地Docker测试Bug清单.md) | 本轮 owner 关系实施及单域、cross-SDK、双域 federation 回归中发现的非任务失败、根因、修复与验证记录 |
57
+ | [群索引版本提示与附件引用方案](design/群索引版本提示与附件引用方案.md) | `group.index` 签名索引、`_meta.group_indexes` 版本提示、CAS 更新、服务端缓存注入和附件稳定引用 |
31
58
  | [SDK 文档索引](sdk/INDEX.md) | SDK 使用手册、四 SDK 当前 access token getter、Python Push 自动登记/Facade、RPC 手册、E2EE、Storage VFS、Group FS 和 Collab 的子索引 |
32
59
  | [SDK 查阅指南](sdk/AUN_DOCS_GUIDE.md) | SDK 文档按行区间渐进式查阅方法 |
33
60
  | [AUN SDK 0.5.6 更新日志](sdk/CHANGELOG-0.5.6.md) | 以 0.5.5 为基线的四 SDK 发布汇总;覆盖首次签名者回源、下载提交前验签、消息窗口、显式 change-seed 和语言能力边界 |
34
- | [四 SDK 版本对齐变更清单](../python/CHANGES_FOR_PARITY.md) | 以 Python 实现为主线的 v0.3.3 至 v0.5.13 跨语言对齐清单;0.5.13 重点覆盖 agent.md `description` 可选字段、Unicode 长度边界与四端版本一致性 |
61
+ | [四 SDK 版本对齐变更清单](../python/CHANGES_FOR_PARITY.md) | 以 Python 实现为主线的 v0.3.3 至 v0.5.19 跨语言对齐清单;0.5.19 以仓库 0.5.18 为基线,覆盖跨设备已读未读、Ownership 2.1、凭证与组织服务、语言边界和测试入口 |
35
62
  | [AUN CLI 手册](cli/CLI手册.md) | Python CLI 源码位置、安装运行入口、全局选项、profile 配置和主要命令集 |
36
63
  | [AUN CLI 设计文档](cli/AUN-CLI设计文档.md) | `python/src/aun_cli` 当前实现架构、命令注册面、配置解析、SDK 桥接和实现边界 |
37
64
  | [AUN Storage 架构设计](<aun-fs/AUN Storage架构设计.md>) | Storage SDK VFS、控制面/数据面分离、下载 ticket / AID Bearer 边界、当前 access token getter、类 Linux 权限、mount/symlink、服务端分层和 direct backend 上传下载 |
@@ -74,6 +101,12 @@
74
101
  - AUNClient 完全门面化、Runtime 状态归属、状态写入收口和四端分批实施 → [AUNClient 门面化与 Runtime 状态迁移细化方案](design/AUNClient门面化与Runtime状态迁移细化方案.md)
75
102
  - P2P/Group Message 的 A/T/H、Tail/History、页内唯一有序发布、应用层跨页幂等排序、三 Pull Gate、缺 sender IK 有界同步 bootstrap、永久页内 Gap、坏密文推进和分布式验收门禁 → [消息同步与历史拉取改造方案](消息同步与历史拉取改造方案.md)
76
103
  - P2P `message.send` TTL 内存缓存、持久/volatile 游标、device 收件箱、隐藏 slot lease/ACK、服务 epoch、消息调试计数器与 payload type 分类、跨 SDK/双域验收 → [P2P 消息 TTL 内存缓存方案](design/P2P消息TTL内存缓存方案.md)
104
+ - 同一 AID 多设备按会话话题同步已读位置、message ID 公共顺序汇总、当前设备 seq 映射、P2P/Group 批量上报与查询 → [跨设备已读未读方案](跨设备已读未读方案.md)
105
+ - 跨设备已读未读 RPC、状态表、请求级提交、混合域部分提交、SDK 缓存及本地完成事件契约 → [跨设备已读未读详细设计](跨设备已读未读详细设计.md)
106
+ - 跨设备已读未读 TDD 阶段、状态缓存与批写、测试矩阵、断点续跑、兼容审查和完成定义 → [跨设备已读未读实施计划](跨设备已读未读实施计划.md)
107
+ - TypeScript 应用快速接入跨设备已读未读、上报/查询、单调事件、`read_state_sync`、精确整数和映射状态 → [跨设备已读未读 SDK 集成指南](跨设备已读未读SDK集成指南.md)
108
+ - Python/TypeScript/JavaScript/Go 及其它语言 SDK 的已读状态实现、数据库迁移、CACHE 批写、事件联邦和验收 → [跨设备已读未读 SDK 实现/移植指南](跨设备已读未读SDK实现移植指南.md)
109
+ - 跨设备已读未读实现完整度、文档一致性、四端 SDK 对齐、问题修复闭环及本轮/历史验证边界 → [跨设备已读未读代码审查报告](跨设备已读未读代码审查报告.md)
77
110
  - 当前实现的完整度、P0/P1/P2 缺陷、Python/Go 服务端差异、四 SDK 差异与 Go Group inbox-only 对齐项 → [消息同步与历史拉取代码审查问题清单](消息同步与历史拉取代码审查问题清单.md)
78
111
  - Python / TypeScript / Go / JavaScript 跨语言容器 E2E、internal 网络、每轮唯一 AID、test-runner、test-control API、用例矩阵 → [aun测试运行指南](aun测试运行指南.md)、[跨语言容器E2E测试方案](design/跨语言容器E2E测试方案.md)
79
112
  - 多语言 SDK 测试缺口与补测清单 → [审查与路线图目录](audit/)
@@ -85,10 +118,20 @@
85
118
  ### SDK 使用与协议
86
119
 
87
120
  - Python / TS / Go / JS SDK 使用手册,以及 Python `push_notify_aid` connect 自动登记和 PushFacade → [SDK 文档索引](sdk/INDEX.md)
121
+ - Ownership 2.1 双文件、身份、owner 锁、关系版本、释放、转移、非权威 P2P 和审计 → [协议定义 2.1](protocol/Ownership协议定义2.1.md)、[详细设计](sdk/Ownership2.1详细设计.md)
122
+ - Ownership 2.1 七 Facade、Group/Org 作为 sub 的边界、审批、本地事件、任务与新鲜共识 → [SDK 编排指南 2.1](sdk/Ownership-SDK编排指南2.1.md)、[应用集成指南](sdk/Ownership2.1-SDK应用集成指南.md)
123
+ - Ownership 2.1 文件验证、权威 Storage revision、条件发布与发布标记恢复、HTTP 428 映射、持久恢复和实际验收 → [开发与移植指南](sdk/Ownership2.1-SDK开发与移植指南.md)、[TDD 实施账本](sdk/Ownership2.1-TDD分阶段实施计划.md)
124
+ - Credential/Org 应用接入、CAP 完整 Verify、登记回执、成员入组/续期、代表请求和转让恢复 → [凭证与组织服务 SDK 应用集成指南](sdk/凭证与组织服务SDK应用集成指南.md)
125
+ - Credential/Org 四端协议实现、canonical JSON、父链强状态 proof、请求绑定、facade/RPC 和共同向量 → [凭证与组织服务 SDK 开发与移植指南](sdk/凭证与组织服务SDK开发与移植指南.md)
126
+ - legacy 四端 proof、托管、代签和代上传记录 → [Ownership 管理专题](sdk/Ownership管理专题.md)
127
+ - legacy 应用接入与旧 SDK 自动编排 → [Ownership SDK 集成指南](sdk/Ownership-SDK集成指南.md)
128
+ - legacy proof/escrow、metadata 和 rekey 移植记录 → [Ownership SDK 实现指南](sdk/Ownership-SDK实现指南.md)
129
+ - legacy `aun.ownership.v1` wire 格式和 owner 上传授权 → [Ownership 协议定义](protocol/Ownership协议定义.md)
130
+ - Ownership 2.1 当前代码审查、四端逐项裁决、本轮 13 项修复、实体授权过期规则和验证限制 → [Ownership 2.1 代码审查报告](audit/Ownership2.1代码审查报告.md)
88
131
  - 四 SDK 当前 access token getter、缓存快照语义和外部 HTTP 数据面下载凭据生命周期 → [连接与认证](sdk/04-连接与认证.md)、[API 手册](sdk/06-API手册.md)、[Storage RPC 手册](sdk/09-storage-rpc-manual.md)、[AUN Storage 架构设计](<aun-fs/AUN Storage架构设计.md>)
89
132
  - 按主题和行区间查 SDK 文档 → [SDK 查阅指南](sdk/AUN_DOCS_GUIDE.md)
90
133
  - 四 SDK 0.5.6 发布摘要、首次签名者回源、可信缓存提交、消息窗口、语言能力边界 → [AUN SDK 0.5.6 更新日志](sdk/CHANGELOG-0.5.6.md)
91
- - 四 SDK 相对发布基线的实现级差异、代码/测试落点、对齐优先级、agent.md 可选字段及历史消息同步边界 → [四 SDK 版本对齐变更清单](../python/CHANGES_FOR_PARITY.md)
134
+ - 四 SDK 0.5.19 相对仓库 0.5.18 的已读未读、Ownership 2.1、凭证/组织服务、代码/测试落点、语言边界及历史实现差异 → [四 SDK 版本对齐变更清单](../python/CHANGES_FOR_PARITY.md)
92
135
  - Python CLI 源码位置、安装运行入口、全局选项、profile 配置、身份/消息/群组/Storage/Group FS/Collab/诊断等命令用法 → [AUN CLI 手册](cli/CLI手册.md)
93
136
  - Python CLI 当前实现架构、`main.py` 命令注册、`CLISession` SDK 桥接、配置解析和实现边界 → [AUN CLI 设计文档](cli/AUN-CLI设计文档.md)
94
137
  - Storage SDK VFS、控制面/数据面分离、下载 ticket / AID Bearer 边界、当前 access token getter、类 Linux 权限、mount/symlink、direct backend 上传下载和服务端分层 → [AUN Storage 架构设计](<aun-fs/AUN Storage架构设计.md>)
@@ -105,8 +148,13 @@
105
148
  - 终端如何登记、Push Server 如何签发 token、接收批次、平台推送、幂等 ACK,以及如何运行 Mock smoke → [AUN 离线推送接入与演示指南](AUN离线推送接入与演示指南.md)
106
149
  - P2P/Group 离线唤醒、Python connect/Facade 登记、六项冻结契约、9 Phase/40 Task、发布门和回滚 → [离线推送协议](protocol/15-离线推送通知协议.md)、[Push Service 设计](superpowers/specs/2026-07-24-push-service-design-v3.md)、[契约冻结](superpowers/契约冻结-v3-to-v4.md)、[v4 实施计划](superpowers/plans/2026-07-24-push-service-implementation-v4.md)、[运维与发布指南](AUN离线推送服务运维与发布指南.md);[旧 Codex 版本](AUN离线推送服务架构与详细实现计划-codex.md)仅作历史背景
107
150
  - 协议细节、Agent 自主行为、群 `mention_mode` 提及过滤和消息格式 → [协议文档目录](protocol/)、[Group 子协议](protocol/10-Group-子协议.md)、[Agent 行为规范](protocol/13-Agent行为规范.md)
151
+ - legacy Ownership 2.0 的 agent.md/owner.md 声明与撤销 → [agent.md Schema](agent.md/SCHEMA.md);当前 2.1 文件与锁规则 → [协议定义 2.1](protocol/Ownership协议定义2.1.md)
108
152
  - agent.md 远程缓存、`remote_etag` / `local_etag`、`requester` / `peer` / `group` 角色、消息信封与 Gateway `_meta` ETag 透传 → [远程 agent.md 缓存与 ETag 透传方案](agent.md/远程agent.md缓存与etag透传方案.md)
109
- - `group.index` owner/admin SDK 生成签名索引、`_meta.group_indexes` 观察、`expected_index_etag` CAS、服务端正/负缓存与注入频率控制 → [群索引版本提示与附件引用方案](design/群索引版本提示与附件引用方案.md)、[SDK 文档索引](sdk/INDEX.md)
153
+ - agent.md Schema、内嵌签名、三字段关系声明与 self-owner 单签、公开 proof 独立验签、关系写入经 Auth 验证与冲突仲裁、既有签名协议开放项及本轮状态/TTL/Storage 决策 → [agent.md Schema 与签发/验签流程澄清记录](agent.md/working/agent.md-schema与签发验签流程澄清.md)
154
+ - AID 类型、owner/ownership_proof 可选但出现即合法、human 禁止 owner、共同签署字段集合、可见分号 canonical bytes、公开关系声明、Auth 关系写入与冲突裁定、owner-side 备份 ACL、`unbound`/`unusable` 与无专门 recovery → [AID 类型、owner 关系与换 owner 编排方案](agent.md/working/AID类型-owner关系与换owner编排方案.md)
155
+ - Auth 权威写入状态、Schema 可选性与 human 禁止 owner、三字段共同声明与 self-owner 单签、canonical bytes、公开 owner proof 独立验证、active/pending 唯一性检查、owner 流程、状态传播、`unbound`/`unusable`、Storage 内部对象权限、服务端/四端 SDK 调整和分阶段验收 Checklist;剩余为正式 wire/RPC 文档和跨端向量落稿 → [AID 类型、owner 关系与 agent.md 签发/换 owner 完整设计与实施计划](agent.md/working/AID类型-owner关系完整设计与实施计划.md)
156
+ - 本轮本地 Docker、单域、cross-SDK 与双域 federation 回归中的非任务失败及修复证据 → [本地 Docker 测试 Bug 清单](agent.md/working/本地Docker测试Bug清单.md)
157
+ - `group.index` owner/admin SDK 生成签名索引、`_meta.group_indexes` 观察、`expected_index_etag` CAS、服务端正/负缓存与注入频率控制 → [群索引版本提示与附件引用方案](design/群索引版本提示与附件引用方案.md)、[SDK 文档索引](sdk/INDEX.md)
110
158
 
111
159
  ### Service Proxy 与服务暴露
112
160
 
@@ -124,10 +172,11 @@
124
172
  - 测试日志路径、测试输出、容器日志查看 → [aun测试运行指南](aun测试运行指南.md)
125
173
  - 跨语言 E2E trace 字段、日志产物、失败分类 → [跨语言容器E2E测试方案](design/跨语言容器E2E测试方案.md)
126
174
 
127
- ### E2EE 与跨语言一致性
128
-
129
- - SDK E2EE V2 API、会话管理、ProtectedHeaders、P2P/Group 当前主链路 → [SDK 文档索引](sdk/INDEX.md)、[E2EE V2 消息通信时序图](sdk/E2EE_V2消息通信时序图.md)
130
- - E2EE V2 1DH/per-AID wrap、bootstrap 能力声明、服务端 fanout → [E2EE V2 简化为 1DH + Per-AID Wrap 方案](design/E2EE_V2简化为1DH加Per-AID_Wrap方案.md)
175
+ ### E2EE 与跨语言一致性
176
+
177
+ - SDK E2EE V2 API、会话管理、ProtectedHeaders、P2P/Group 当前主链路 → [SDK 文档索引](sdk/INDEX.md)、[E2EE V2 消息通信时序图](sdk/E2EE_V2消息通信时序图.md)
178
+ - `protected_headers` 四端 API、合并优先级、元数据 HMAC 和解密信任边界 → [ProtectedHeaders 用法专题](sdk/ProtectedHeaders用法专题.md)
179
+ - E2EE V2 1DH/per-AID wrap、bootstrap 能力声明、服务端 fanout → [E2EE V2 简化为 1DH + Per-AID Wrap 方案](design/E2EE_V2简化为1DH加Per-AID_Wrap方案.md)
131
180
  - 共享测试向量、transcript 回放、Python / TS / Go / JS 互通 → [aun测试运行指南](aun测试运行指南.md)、[跨语言容器E2E测试方案](design/跨语言容器E2E测试方案.md)
132
181
 
133
182
  ---
@@ -158,6 +207,30 @@
158
207
 
159
208
  定义 P2P `message.send` 的秒级 `ttl` 语义:`ttl <= 0` 走原持久化路径,正数钳制到 1-3600 秒并进入不写数据库/WAL 的 volatile 通道。方案规定持久/volatile 独立游标、按 device 的内存收件箱、slot 隐藏的 lease/ACK、服务模块数据目录中的递增 epoch 文件、消息调试页的 volatile 计数器与 payload type 分类、重启丢失和多实例/跨域约束,并给出 Python/Go 服务端、四 SDK、单域、cross-SDK、E2E 与双域验收矩阵。
160
209
 
210
+ ### 跨设备已读未读方案
211
+
212
+ 定义同一 AID 多设备的业务已读状态模型。P2P `seq` 按设备隔离,设备按应用传入的 `topic_key` 保存最后已读 `message_id`;服务端依据消息公共顺序汇总各设备状态,查询只返回汇总 message ID 及其在当前设备上的 seq 映射。方案覆盖 P2P/Group、AID/话题/Group 过滤查询、单条/批量/部分会话上报、在线变更事件、定向消息边界、四端 SDK 和前端未读数计算。
213
+
214
+ ### 跨设备已读未读详细设计
215
+
216
+ 定义四个已读 RPC 的 wire 契约、顶层单条与显式空值边界、128 字符字段上限、紧凑状态表与幂等迁移、公共顺序和晚到位置持久回填、Group canonical ID 与跨实例权限版本、请求级提交及混合域部分提交;明确原事件 scope、必需 owner、Gateway 来源与路由,以及四端 SDK 的原查询登记、身份隔离、精确整数和本地补偿完成事件。
217
+
218
+ ### 跨设备已读未读实施计划
219
+
220
+ 按契约测试、Message/Group 紧凑状态表与兼容迁移、repository、RPC/Gateway、事件、四端 SDK、单域/E2E/cross-SDK/跨域验收的顺序实施;定义断点续跑、兼容性审查、测试文件规划和完成定义。
221
+
222
+ ### 跨设备已读未读 SDK 集成指南
223
+
224
+ 以 `@agentunion/fastaun` TypeScript SDK 为例,说明 AID 加载、Gateway 连接、P2P/Group 已读上报与查询、单调 `read_changed`、本地 `read_state_sync` 的 states/errors、number/精确字符串整数表示、`mapping_status` 解释和混合域重试边界。
225
+
226
+ ### 跨设备已读未读 SDK 实现/移植指南
227
+
228
+ 面向四端和其它语言 SDK 实现者,定义 wire 字段、128 字符约束、紧凑状态表与迁移重试、公共顺序和当前设备映射、请求级异步提交、事件/federation、原查询登记与身份隔离、本地完成事件、精确整数及验收矩阵。
229
+
230
+ ### 跨设备已读未读代码审查报告
231
+
232
+ 记录 2026-10-11 本轮顶层单条/空值、事件 scope/owner、Gateway 来源与路由、晚到位置持久回填、Group 别名和跨实例权限、事件 ID 与日志边界的补充修复,另覆盖 A→B→A 身份代际和 Gateway 已读结果无损整数,实际隔离验证、工具缺失及既有 runner 失败已汇总于报告第 7.3 节。R-01~R-17、2026-10-10 隔离回归和 2026-10-09 Docker 结果单列为历史证据;真实 MySQL、多实例、集成/E2E、共享 AID cross-SDK 和双域部署验收本轮未执行。
233
+
161
234
  ### 消息同步与历史拉取代码审查问题清单
162
235
 
163
236
  以当前代码为唯一事实来源,汇总 Python/Go Message 与 Group 服务端、Python/Go Gateway、Python/TypeScript/Go/JavaScript SDK 的实现完整度和横向一致性。问题按 P0/P1/P2 排序,覆盖跨 Gap ACK、retention 与 Group Forward 可见性边界、崩溃窗口、异步任务代际、反向快照、History 分页、GC/WAL/cache、响应上限、敏感日志与诊断缺口;明确迁移完成后 Python Group inbox-only 为基准,Go Group 仍合并旧表必须对齐,并记录已排除的误报。
@@ -206,21 +279,95 @@
206
279
 
207
280
  定义每个远程 AID 在 SDK 内存和本地持久化记录中维护一条 agent.md 状态:Python / TypeScript / Go 使用 `{aun_path}/AIDs/{aid}/agent.md` 与 `agentmd.json`,浏览器 JavaScript 使用 IndexedDB logical key。方案规定 Gateway 在 RPC response / event push 的 `_meta.agent_md_etags` 中按 `requester`、`peer`、`group` 注入元数据,保留旧别名兼容,并通过 300 秒正缓存、60 秒负缓存和默认 60 秒发送节流控制热路径开销;Message Service V2 P2P 信封携带 `agent_md.sender`。四端 SDK 自动观察 `_meta` 和信封 `agent_md.sender/group`,写入 `remote_etag` / `last_modified`,并遵守按需下载、无条件 GET、304 兼容、竞态和跨 SDK 一致性规则。
208
281
 
209
- ### 群索引版本提示与附件引用方案
282
+ ### agent.md Schema
283
+
284
+ 保留 legacy Ownership 2.0 的 agent.md/owner.md 独立声明、共识与撤销格式,不定义当前 2.1 的关系版本、owner 锁和释放终局。当前完整文件与身份校验见 [Ownership 协议定义 2.1](protocol/Ownership协议定义2.1.md);`docs/protocol/agent.md/SCHEMA.md` 则是更早的 legacy 1.0 副本。
285
+
286
+ ### agent.md Schema 与签发/验签流程澄清记录
287
+
288
+ 记录当前四端 SDK 的 agent.md Schema、尾部内嵌签名格式、签发与验签责任边界,并列出历史外挂 `.sig` 草案与当前实现的冲突。owner proof 可公开独立验证;只有 owner 关系创建、替换或撤销需要 Auth 验证写入,普通内容变化不触发关系审批;证书状态不因关系 pending 改变,legacy/绑定中保留基本登录通信;并记录 `unbound`/`unusable`、状态 pull/push、TTL、type-change 和 Storage 权限决策。该文档处于 working 状态,不是冻结协议。
289
+
290
+ ### AID 类型、owner 关系与换 owner 编排方案
291
+
292
+ 定义八种 AID 类型下的 owner 必填矩阵、human/agent owner 约束、agent 自主 self-owner、`owner` 与 `ownership_proof` 两字段、subject 与 owner 对三字段关系声明独立签名及 self-owner 单签。大多数场景可信任公开验签通过的 agent.md owner;旧/绑定中 AID 保留基本登录通信,具体 owner 依赖场景由应用层决定;只有关系创建、替换和撤销经 Auth 验证写入,协议冲突由 Auth 按台账与 CAS 裁定,并在绑定和 `agent.md` 激活时检查未解除关系;普通名片内容变化不触发关系审批。文档还涵盖当前 owner 发起并签署目标/版本绑定转移授权、`unbound`/`unusable`、无专门 recovery 及 owner-side 备份 ACL 生命周期。该文档处于 working 状态,不是冻结协议。
293
+
294
+ ### AID 类型、owner 关系与 agent.md 签发/换 owner 完整设计与实施计划
295
+
296
+ 汇总公开 proof 独立验签、Auth 关系写入与冲突仲裁边界、创建/换 owner/解绑流程、Storage 保留目录与内部对象操作、Auth/Name Service/Storage 和四端 SDK 调整,以及带阶段验收标准的实施 Checklist;其中 12A 节记录了已确认的 Phase 0 P0-A01 至 P0-A12 字段、可见分号 canonical bytes、hash/签名、receipt、TTL、证书状态与关系 operation 分离、legacy/绑定中基本登录通信、`unbound`/`unusable` 和 RPC 方向,剩余为正式 wire/RPC 文档及跨端向量落稿。普通关系读取不要求每次实时查询 Auth;需要确认最新状态的场景按新鲜度契约处理。该文档处于 working 状态,不是冻结协议。
297
+
298
+ ### 本地 Docker 测试 Bug 清单
299
+
300
+ 记录本轮 owner 关系实施及单域、cross-SDK、双域 federation 回归中发现的非任务失败,包括 Go SQL mock 期望缺失、损坏 Python 字节码、Tester 原生 ABI、身份游标污染、双域端口冲突和 Group 成员状态异步持久化断言竞态;每项均列出根因、修复动作和验证结果。
301
+
302
+ ### 群索引版本提示与附件引用方案
210
303
 
211
304
  定义 `group.index` 的 owner/admin SDK 生成、canonical JSONL、签名、`etag` / `body_hash`、`expected_index_etag` CAS、`_meta.group_indexes` 版本提示、Gateway/Message 转发边界、服务端正/负缓存、singleflight、写后失效/刷新、注入频率控制,以及 DB 保存核心设置、group.fs 保存大附件、附件稳定引用和 SDK `check/get/updateGroupIndex` 语义。
212
305
 
213
- ### SDK 文档索引
214
-
306
+ ### SDK 文档索引
307
+
215
308
  `docs/sdk/INDEX.md` 是 SDK 手册的三层子索引,覆盖快速开始、连接认证、E2EE V2、P2P device/TTL volatile 消息、Group 成员控制与两阶段群主转让、Storage MIME/Content-Type/OSS 403、Python `ErrorInfo.cause`、Group FS、Collab 和各类 RPC 手册。
309
+
310
+ ### ProtectedHeaders 用法专题
311
+
312
+ 按当前四端 SDK 实现整理 `protected_headers` 的实例级与单次调用方式、兼容别名、key/value 规范化、E2EE V2 元数据 HMAC、自动字段、解密失败信任边界,以及明文和裸 RPC 的适用边界。
313
+
314
+ ### Ownership 管理专题
315
+
316
+ 保留 legacy `aun.ownership.v1` 四端 proof、托管、代签、代上传和 rekey 历史记录;文中“当前”指该历史基线,不作为 Ownership 2.1 契约或接入依据。
317
+
318
+ ### Ownership 协议定义 2.1
319
+
320
+ 定义当前普通双文件原始字节签名、自身份上传、owner.md 权限、持久 owner 锁、关系版本、release/权威删除、连续转移和审计;Group/Org 创建自动绑定、解散自动解绑、专属转移强制 rekey,实体名片 owner 本人尾签与 V2 上传授权单独分流;三个时间字段统一安全整数范围,invalid 与 unavailable 分别表示无效与不可用。实体 pending 固定完整 V2 授权与原 CAS,过期停止自动重传并保留待办,明确上传才生成新授权;同全文/ETag 已提交仅观察确认。SDK 普通 P2P 编排仅作非权威协作,不构成协议层授权。
321
+
322
+ ### Ownership SDK 编排指南 2.1
323
+
324
+ 定义七 Facade、明确审批、普通加密 P2P 载荷、公共 local_roles 与请求身份、本地事件、按角色核对完成证据和新鲜权威恢复;冻结重复发起复用、错误与任务状态分别记录、时间整数边界,文件保存、关系完成与清理分别跟踪;整体 30 秒从首次 GET 前计时,接收方固定授权摘要/期限,无控制消息也按精确本人历史同意恢复清理。
325
+
326
+ Group/Org 作为 sub 时不进入这些通用任务、审批或 NS Ownership 账本;以其为 sub 误调用直接 not_applicable,符合普通 owner 规则时仍可作为 owner_aid。实体 owner 创建自动建立、解散自动解除,专属转移强制 rekey,名片由 owner 本人尾签,signer_aid 与 V2 上传授权绑定当前实体证书代际。
327
+
328
+ ### Ownership 2.1 SDK 应用集成指南
329
+
330
+ 说明应用身份准备、Group/Org 作为 sub 的专属边界、审批 UI/策略、任务事件、新鲜 checkOwnershipConsensus 和恢复接入;普通下载 ownership_status 保留 legacy proof 展示语义,不能作为 2.1 授权结果;说明实体授权过期保留待办/明确上传和无消息释放清理的应用处理。
331
+
332
+ ### Ownership 2.1 SDK 开发与移植指南
333
+
334
+ 以当前 Node TS 接线为参考,说明文件、证书、Storage authoritative/revision/expected_revision、持久 CAS/outbox 和实际收件边界;发布成功后保存权威 revision/ETag 标记,恢复区分未保存和已保存标记的核验条件,禁止刷新原提交条件;HTTP 428 统一映射 unsupported_protocol;通知恢复发送前逐条核对新鲜 NS,不以参考实现代替各语言验收;严格 OCSP issuer 绑定、本人原件/任务上下文及实体 pending 原授权复用以协议与逐项裁决为准,不默认全部行为以 TS 为准。
335
+
336
+ ### Ownership 2.1 详细设计
216
337
 
217
- ### Service Proxy RPC 手册
338
+ 定义四 SDK、NS、Storage 的组件职责、证据与原子边界、条件发布、名片同步和旧版隔离;说明 reserve 无法证明 SQL 提交及 DB+journal 一起回退时的人工恢复与可信上界门槛;补当前时间 OCSP 复核、原授权固定、无消息释放清理和实体授权过期恢复边界。
339
+
340
+ ### Ownership 2.1 TDD 分阶段实施计划
341
+
342
+ 保存实施顺序、共同向量、冻结实现契约与历史测试账本,统一 Group/Org 的 sub 边界、HTTP 428/错误分类及非权威 P2P;第 13 节区分各端当前源码、运行版本、恢复进程边界及未验证环境;旧群自签/token 上传结果保留为旧契约事实,不能作为新 owner 本人名片契约验收;第 13.7 节单列本轮 13 项复审后的本地验证,不改写历史网络账本。
343
+
344
+ ### Ownership 2.1 代码审查报告
345
+
346
+ 保留首次审查的实现完整性、协议一致性、四端差异及服务端问题;第九节记录用户授权后的 6 个 P1、12 个 P2、追加恢复窗口修复、受影响测试证据和验证边界;第十节记录三项契约冻结与本地验证,第十一节记录 Group/Org 既有转移/解散上的约束与恢复修复、owner 本人名片和 V2 授权、四端与服务按断点取得的本地测试证据、已知基线首败及未执行环境验收。第十二节新增本轮 6 个 P1、7 个 P2 的影响、修代码/修文档裁决和参考端,记录 V2 过期停止自动重传的用户决定、无消息释放清理、Red → Green 和断点回归结果。修复判断以 2.1 协议和冻结契约为准,不外推真实部署验收。
347
+
348
+ ### Ownership SDK 集成指南
349
+
350
+ 保留 2026-10-09 legacy TypeScript 应用接入及 proof、escrow、代上传流程。当前七 Facade、审批与新鲜共识见 [2.1 应用集成指南](sdk/Ownership2.1-SDK应用集成指南.md)。
351
+
352
+ ### Ownership SDK 实现指南
353
+
354
+ 保留 legacy proof/escrow、metadata 和 rekey 移植记录。当前双文件、持久任务、权威条件发布和恢复见 [2.1 开发与移植指南](sdk/Ownership2.1-SDK开发与移植指南.md)。
355
+
356
+ ### Ownership 协议定义
357
+
358
+ 保留 legacy `aun.ownership.v1`、proof、托管和 owner 代上传授权格式;当前文件、锁、版本及审计以 [协议定义 2.1](protocol/Ownership协议定义2.1.md) 为准。
359
+
360
+ ### Service Proxy RPC 手册
218
361
 
219
362
  定义 `proxy.register_services` / `proxy.unregister_services` / `proxy.list_services` 的 Gateway 控制面语义,以及 proxy-server `register_services` 数据面隧道消息、服务列表与连接绑定、一致性约束和 wakeup 路由策略。
220
363
 
221
364
  ### SDK 查阅指南
222
365
 
223
366
  `docs/sdk/AUN_DOCS_GUIDE.md` 说明如何按行区间渐进式读取 SDK 文档,避免一次性加载过多文档内容。
367
+
368
+ ### 凭证与组织服务 SDK 指南
369
+
370
+ [应用集成指南](sdk/凭证与组织服务SDK应用集成指南.md)覆盖 service-plane 边界、完整验证、Credential 请求绑定、受保护读取、首次 admission、创建/转让恢复及解散清理;[开发与移植指南](sdk/凭证与组织服务SDK开发与移植指南.md)定义四端共同密码学、CAP、binding、facade/RPC、checkpoint 和测试向量契约。
224
371
 
225
372
  ### AUN SDK 0.5.6 更新日志
226
373
 
@@ -228,7 +375,7 @@
228
375
 
229
376
  ### 四 SDK 版本对齐变更清单
230
377
 
231
- `python/CHANGES_FOR_PARITY.md` 以 Python SDK 历史实现为主线记录 Go / TypeScript / JavaScript 的对齐要求。当前 v0.5.13 章节以 `8df55664` 的 v0.5.12 为基线,明确 agent.md `description` 缺失、空字符串、类型和 Unicode 长度边界,并列出四语言实现、测试与版本落点。
378
+ `python/CHANGES_FOR_PARITY.md` 以 Python SDK 历史实现为主线记录 Go / TypeScript / JavaScript 的对齐要求。当前 v0.5.19 章节以 `1f03bf2d` 的仓库 v0.5.18 为基线,记录跨设备已读未读、Ownership 2.1 持久编排、显式 type/owner 注册、实体名片代签与 rekey、凭证完整验证、组织门面与服务事件验签;列出四端 API、Python 函数定位、语言差异和测试入口,并保留 v0.5.18 历史章节。
232
379
 
233
380
  ### AUN CLI 手册
234
381