@agentunion/fastaun-browser 0.5.4 → 0.5.8

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 (184) hide show
  1. package/CHANGELOG.md +177 -67
  2. package/_packed_docs/AUN/347/246/273/347/272/277/346/216/250/351/200/201/346/216/245/345/205/245/344/270/216/346/274/224/347/244/272/346/214/207/345/215/227.md +290 -0
  3. package/_packed_docs/AUN/347/246/273/347/272/277/346/216/250/351/200/201/346/234/215/345/212/241/346/236/266/346/236/204/344/270/216/350/257/246/347/273/206/345/256/236/347/216/260/350/256/241/345/210/222-codex.md +994 -0
  4. package/_packed_docs/AUN/347/246/273/347/272/277/346/216/250/351/200/201/346/234/215/345/212/241/350/277/220/347/273/264/344/270/216/345/217/221/345/270/203/346/214/207/345/215/227.md +144 -0
  5. package/_packed_docs/CHANGELOG.md +177 -67
  6. package/_packed_docs/INDEX.md +124 -65
  7. package/_packed_docs/KITE_DOCS_GUIDE.md +65 -30
  8. package/_packed_docs/agent.md/SCHEMA.md +83 -58
  9. package/_packed_docs/agent.md/examples/codeagent-claudecode.md +1 -1
  10. package/_packed_docs/agent.md/examples/openclaw-lobster.md +1 -1
  11. package/_packed_docs/agent.md/examples/signed-openclaw-lobster.md +1 -1
  12. package/_packed_docs/audit/AUN/346/234/215/345/212/241Go/345/214/226/351/207/215/346/236/204/347/262/276/347/273/206/345/214/226/346/272/220/347/240/201/345/256/241/346/237/245-20260718.md +366 -0
  13. package/_packed_docs/aun/345/205/254/347/275/221/346/265/213/350/257/225/350/277/220/350/241/214/346/214/207/345/215/227.md +234 -0
  14. 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 +1095 -0
  15. package/_packed_docs/aun/346/265/213/350/257/225/350/277/220/350/241/214/346/214/207/345/215/227.md +1199 -0
  16. package/_packed_docs/cli/CLI/346/211/213/345/206/214.md +6 -4
  17. package/_packed_docs/group-message-rpc-alignment-gaps.md +741 -0
  18. package/_packed_docs/message-online-push-alignment.md +572 -0
  19. package/_packed_docs/protocol/06-/346/234/215/345/212/241/345/215/217/350/256/256.md +58 -20
  20. package/_packed_docs/protocol/10-Group-/345/255/220/345/215/217/350/256/256.md +219 -247
  21. package/_packed_docs/protocol/12-Stream-/345/255/220/345/215/217/350/256/256.md +14 -14
  22. package/_packed_docs/protocol/13-Agent/350/241/214/344/270/272/350/247/204/350/214/203.md +3 -3
  23. package/_packed_docs/protocol/15-/347/246/273/347/272/277/346/216/250/351/200/201/351/200/232/347/237/245/345/215/217/350/256/256.md +165 -421
  24. package/_packed_docs/protocol/README.md +1 -0
  25. package/_packed_docs/protocol/aun-docs-guide.md +7 -4
  26. package/_packed_docs/protocol/index.md +25 -19
  27. package/_packed_docs/sdk/02-WebSocket/345/215/217/350/256/256.md +63 -18
  28. package/_packed_docs/sdk/03-/346/240/270/345/277/203/346/246/202/345/277/265.md +22 -0
  29. package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +93 -84
  30. package/_packed_docs/sdk/05-E2EE/345/212/240/345/257/206/351/200/232/344/277/241.md +6 -2
  31. package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +73 -34
  32. package/_packed_docs/sdk/07-/351/224/231/350/257/257/345/244/204/347/220/206.md +3 -3
  33. package/_packed_docs/sdk/08-/346/234/200/344/275/263/345/256/236/350/267/265.md +21 -9
  34. package/_packed_docs/sdk/09-group-rpc-manual.md +319 -285
  35. package/_packed_docs/sdk/09-message-rpc-manual.md +144 -103
  36. package/_packed_docs/sdk/09-payload-reference.md +1 -1
  37. package/_packed_docs/sdk/09-storage-rpc-manual.md +14 -3
  38. package/_packed_docs/sdk/09-stream-rpc-manual.md +8 -8
  39. package/_packed_docs/sdk/AUN_DOCS_GUIDE.md +34 -23
  40. package/_packed_docs/sdk/CHANGELOG-0.5.6.md +73 -0
  41. package/_packed_docs/sdk/INDEX.md +45 -37
  42. package/_packed_docs/sdk/README.md +11 -9
  43. package/_packed_docs//345/217/221/345/270/203/346/212/245/345/221/212-0.5.6.md +260 -0
  44. package/_packed_docs//346/266/210/346/201/257/345/220/214/346/255/245/344/270/216/345/216/206/345/217/262/346/213/211/345/217/226/344/273/243/347/240/201/345/256/241/346/237/245/351/227/256/351/242/230/346/270/205/345/215/225.md +229 -0
  45. package/_packed_docs//346/266/210/346/201/257/345/220/214/346/255/245/344/270/216/345/216/206/345/217/262/346/213/211/345/217/226/346/224/271/351/200/240/346/226/271/346/241/210.md +750 -0
  46. package/dist/agent-md-schema.d.ts +14 -0
  47. package/dist/agent-md-schema.d.ts.map +1 -0
  48. package/dist/agent-md-schema.js +103 -0
  49. package/dist/agent-md-schema.js.map +1 -0
  50. package/dist/agent-md.d.ts +11 -5
  51. package/dist/agent-md.d.ts.map +1 -1
  52. package/dist/agent-md.js +295 -53
  53. package/dist/agent-md.js.map +1 -1
  54. package/dist/aid-store.d.ts +7 -7
  55. package/dist/aid-store.d.ts.map +1 -1
  56. package/dist/aid-store.js +46 -18
  57. package/dist/aid-store.js.map +1 -1
  58. package/dist/aid.d.ts +2 -0
  59. package/dist/aid.d.ts.map +1 -1
  60. package/dist/aid.js +29 -7
  61. package/dist/aid.js.map +1 -1
  62. package/dist/auth.d.ts.map +1 -1
  63. package/dist/auth.js +31 -11
  64. package/dist/auth.js.map +1 -1
  65. package/dist/bundle.js +29920 -19719
  66. package/dist/cert-utils.d.ts +1 -0
  67. package/dist/cert-utils.d.ts.map +1 -1
  68. package/dist/cert-utils.js +36 -16
  69. package/dist/cert-utils.js.map +1 -1
  70. package/dist/client/delivery.d.ts +106 -11
  71. package/dist/client/delivery.d.ts.map +1 -1
  72. package/dist/client/delivery.js +1925 -374
  73. package/dist/client/delivery.js.map +1 -1
  74. package/dist/client/group-state.d.ts.map +1 -1
  75. package/dist/client/group-state.js +27 -24
  76. package/dist/client/group-state.js.map +1 -1
  77. package/dist/client/lifecycle.d.ts +15 -1
  78. package/dist/client/lifecycle.d.ts.map +1 -1
  79. package/dist/client/lifecycle.js +477 -132
  80. package/dist/client/lifecycle.js.map +1 -1
  81. package/dist/client/mention-mode.d.ts +7 -0
  82. package/dist/client/mention-mode.d.ts.map +1 -0
  83. package/dist/client/mention-mode.js +184 -0
  84. package/dist/client/mention-mode.js.map +1 -0
  85. package/dist/client/peers.d.ts +1 -1
  86. package/dist/client/peers.d.ts.map +1 -1
  87. package/dist/client/peers.js +26 -3
  88. package/dist/client/peers.js.map +1 -1
  89. package/dist/client/rpc-pipeline.d.ts +34 -2
  90. package/dist/client/rpc-pipeline.d.ts.map +1 -1
  91. package/dist/client/rpc-pipeline.js +503 -99
  92. package/dist/client/rpc-pipeline.js.map +1 -1
  93. package/dist/client/runtime.d.ts +1 -3
  94. package/dist/client/runtime.d.ts.map +1 -1
  95. package/dist/client/runtime.js +4 -7
  96. package/dist/client/runtime.js.map +1 -1
  97. package/dist/client/v2-e2ee.d.ts +43 -2
  98. package/dist/client/v2-e2ee.d.ts.map +1 -1
  99. package/dist/client/v2-e2ee.js +931 -138
  100. package/dist/client/v2-e2ee.js.map +1 -1
  101. package/dist/client.d.ts +46 -15
  102. package/dist/client.d.ts.map +1 -1
  103. package/dist/client.js +785 -304
  104. package/dist/client.js.map +1 -1
  105. package/dist/errors.d.ts.map +1 -1
  106. package/dist/errors.js +4 -1
  107. package/dist/errors.js.map +1 -1
  108. package/dist/facades.d.ts +26 -1
  109. package/dist/facades.d.ts.map +1 -1
  110. package/dist/facades.js +142 -60
  111. package/dist/facades.js.map +1 -1
  112. package/dist/group-id.d.ts.map +1 -1
  113. package/dist/group-id.js +2 -17
  114. package/dist/group-id.js.map +1 -1
  115. package/dist/group-index.d.ts +6 -1
  116. package/dist/group-index.d.ts.map +1 -1
  117. package/dist/group-index.js +44 -25
  118. package/dist/group-index.js.map +1 -1
  119. package/dist/index.d.ts +5 -4
  120. package/dist/index.d.ts.map +1 -1
  121. package/dist/index.js +3 -2
  122. package/dist/index.js.map +1 -1
  123. package/dist/keystore/index.d.ts +10 -5
  124. package/dist/keystore/index.d.ts.map +1 -1
  125. package/dist/keystore/indexeddb-identity-store.d.ts +0 -12
  126. package/dist/keystore/indexeddb-identity-store.d.ts.map +1 -1
  127. package/dist/keystore/indexeddb-identity-store.js +0 -60
  128. package/dist/keystore/indexeddb-identity-store.js.map +1 -1
  129. package/dist/keystore/indexeddb-shared.d.ts.map +1 -1
  130. package/dist/keystore/indexeddb-shared.js +9 -5
  131. package/dist/keystore/indexeddb-shared.js.map +1 -1
  132. package/dist/keystore/indexeddb-token-store.d.ts +3 -1
  133. package/dist/keystore/indexeddb-token-store.d.ts.map +1 -1
  134. package/dist/keystore/indexeddb-token-store.js +47 -2
  135. package/dist/keystore/indexeddb-token-store.js.map +1 -1
  136. package/dist/register-flow.d.ts.map +1 -1
  137. package/dist/register-flow.js +28 -3
  138. package/dist/register-flow.js.map +1 -1
  139. package/dist/seq-tracker.d.ts +28 -8
  140. package/dist/seq-tracker.d.ts.map +1 -1
  141. package/dist/seq-tracker.js +224 -61
  142. package/dist/seq-tracker.js.map +1 -1
  143. package/dist/storage/vfs.d.ts +1 -0
  144. package/dist/storage/vfs.d.ts.map +1 -1
  145. package/dist/storage/vfs.js +26 -2
  146. package/dist/storage/vfs.js.map +1 -1
  147. package/dist/tools/cross-sdk-agent.js +399 -11
  148. package/dist/tools/cross-sdk-agent.js.map +1 -1
  149. package/dist/transport.d.ts +12 -0
  150. package/dist/transport.d.ts.map +1 -1
  151. package/dist/transport.js +226 -102
  152. package/dist/transport.js.map +1 -1
  153. package/dist/v2/session/session.d.ts.map +1 -1
  154. package/dist/v2/session/session.js +3 -4
  155. package/dist/v2/session/session.js.map +1 -1
  156. package/dist/v2/state/commitment.d.ts.map +1 -1
  157. package/dist/v2/state/commitment.js +1 -2
  158. package/dist/v2/state/commitment.js.map +1 -1
  159. package/dist/validators.d.ts.map +1 -1
  160. package/dist/validators.js +8 -14
  161. package/dist/validators.js.map +1 -1
  162. package/dist/version.d.ts +1 -1
  163. package/dist/version.js +1 -1
  164. package/package.json +11 -9
  165. package/dist/group-resources.d.ts +0 -98
  166. package/dist/group-resources.d.ts.map +0 -1
  167. package/dist/group-resources.js +0 -635
  168. package/dist/group-resources.js.map +0 -1
  169. package/dist/keystore/indexeddb.d.ts +0 -179
  170. package/dist/keystore/indexeddb.d.ts.map +0 -1
  171. package/dist/keystore/indexeddb.js +0 -2031
  172. package/dist/keystore/indexeddb.js.map +0 -1
  173. package/dist/namespaces/auth.d.ts +0 -98
  174. package/dist/namespaces/auth.d.ts.map +0 -1
  175. package/dist/namespaces/auth.js +0 -992
  176. package/dist/namespaces/auth.js.map +0 -1
  177. package/dist/namespaces/custody.d.ts +0 -51
  178. package/dist/namespaces/custody.d.ts.map +0 -1
  179. package/dist/namespaces/custody.js +0 -302
  180. package/dist/namespaces/custody.js.map +0 -1
  181. package/dist/namespaces/meta.d.ts +0 -109
  182. package/dist/namespaces/meta.d.ts.map +0 -1
  183. package/dist/namespaces/meta.js +0 -549
  184. package/dist/namespaces/meta.js.map +0 -1
@@ -0,0 +1,234 @@
1
+ # AUN 公网测试运行指南
2
+
3
+ 本文说明如何对 `evolagent.cn`、`agentid.pub` 或同拓扑的其他公网 issuer domain 运行 Python SDK integration/E2E。公网测试与本地 Docker 单域、分布式 `data-dist` 完全分离,不复用其身份、临时文件或报告目录。
4
+
5
+ ## 测试指南:
6
+ D:\modelunion\kite\aun-sdk-core\docs\aun测试运行指南.md
7
+ D:\modelunion\kite\aun-sdk-core\docs\aun分布式测试运行指南.md
8
+ D:\modelunion\kite\aun-sdk-core\docs\aun公网测试运行指南.md
9
+
10
+ 运行测试(单元、集成、E2E, cross-sdk, 双域)时应该使用断点续跑的方法,即运行到某个测试时如果发生失败,应该立即停下来,修复此用例,然后再接着此用例运行后续用例。之前通过的用例如果手续修改不受影响则不要重复跑。
11
+
12
+ ## 1. 测试入口与边界
13
+
14
+ Python SDK 公网入口:
15
+
16
+ ```text
17
+ python/run-public-tests.py
18
+ ```
19
+
20
+ 它只编排可通过公网协议完成的 SDK 用例,不读取服务端 MySQL/Redis,不操作 Docker 网络,也不重启远端服务。公网 `full` 覆盖 50 个去重后的 integration/E2E,用例按顺序逐个在独立子进程中运行。
21
+
22
+ 服务端主要模块的公网验收入口另为:
23
+
24
+ ```text
25
+ ../docker-deploy/tests/public_single_instance_acceptance.py
26
+ ```
27
+
28
+ 该脚本补充 AUN Console、Leaderboard、AID Custody、服务注册状态和端口/TLS 等服务端检查。它与 SDK runner 不是重复关系,完整验收时应先跑服务端验收,再跑 SDK `smoke` 或 `full`。
29
+
30
+ ## 2. 数据隔离
31
+
32
+ SDK runner 默认只使用仓库下的 `.public-test-data/`:
33
+
34
+ ```text
35
+ .public-test-data/
36
+ ├── identities/<domain>/<identity-prefix>/
37
+ │ ├── persistent/
38
+ │ └── service-proxy-provider/
39
+ └── runs/<domain>/<run-id>/
40
+ ├── logs/
41
+ ├── artifacts/
42
+ ├── tmp/
43
+ ├── home/
44
+ ├── pycache/
45
+ └── report.json
46
+ ```
47
+
48
+ - `identities/` 跨运行保留测试私钥、证书和 token,避免每次重复注册固定测试 AID。
49
+ - `runs/` 每轮独立保存日志、临时目录、HOME、CLI 状态和 JSON 报告。
50
+ - 每个用例还有独立的 `HOME`、`TEMP/TMP/TMPDIR`、CLI 配置和 Python bytecode 目录。
51
+ - runner 默认串行执行,避免同一测试身份的槽位、在线状态和游标相互干扰。
52
+
53
+ runner 会拒绝与下列目录重叠的数据根:
54
+
55
+ - `../docker-deploy/data`
56
+ - `../docker-deploy/data-aun-pub`
57
+ - `../docker-deploy/data-evolagent-cn`
58
+ - `../docker-deploy/federation-test/data-dist`
59
+ - 仓库中的旧 `.aun*`
60
+ - 用户真实的 `~/.aun`
61
+
62
+ 服务端公网验收建议使用 `../docker-deploy/public-test-data/` 和 `../docker-deploy/public-test-artifacts/`,不要与 SDK 的 `.public-test-data/` 混用。
63
+
64
+ ## 3. 前置条件
65
+
66
+ - 目标域的公网 DNS、证书和服务端口已配置完成。
67
+ - Python 3.11 以上;推荐使用已构建的 `aun-sdk-tester:latest` 容器。
68
+ - 目标至少可访问 NameService 443、Gateway 20001、Storage 9470、Group 9480、Stream 9490 和 Service Proxy 19890。
69
+ - 用于新身份的加密 seed 通过环境变量 `AUN_TEST_ENCRYPTION_SEED` 注入;同一 `identity-prefix` 后续必须使用同一个 seed。
70
+ - 公网测试会创建 AID、消息、群、对象、agent.md 和 Service Proxy 注册,不能使用真实用户 AID。
71
+
72
+ 实际执行必须显式传入 `--allow-create-identities`。遗漏该参数时 runner 会在联网前退出;`--list` 和 `--dry-run` 不需要该确认。
73
+
74
+ ## 4. 先检查命令
75
+
76
+ 在 `aun-sdk-core/python` 目录执行:
77
+
78
+ ```powershell
79
+ python -X utf8 run-public-tests.py --list
80
+ python -X utf8 run-public-tests.py `
81
+ --domain evolagent.cn `
82
+ --suite full `
83
+ --identity-prefix public-ci `
84
+ --dry-run
85
+ ```
86
+
87
+ `dry-run` 会验证域名、目录安全规则、用例名称和所有测试文件,只打印命令,不创建目录、不连接公网、不创建身份。
88
+
89
+ 切换域名只需修改 `--domain`:
90
+
91
+ ```powershell
92
+ python -X utf8 run-public-tests.py --domain agentid.pub --suite smoke --dry-run
93
+ ```
94
+
95
+ ## 5. 推荐:在一次性 Docker 容器中运行
96
+
97
+ 以下 PowerShell 命令从 `aun-sdk-core` 根目录执行。容器使用默认 bridge 网络访问公网,不加入本地 `kite-net`,代码只读挂载,公网测试数据单独挂载:
98
+
99
+ ```powershell
100
+ $repo = (Get-Location).Path
101
+ $env:AUN_TEST_ENCRYPTION_SEED = "使用固定的公网测试 seed"
102
+
103
+ docker run --rm `
104
+ -v "${repo}\python:/workspace/python:ro" `
105
+ -v "${repo}\.public-test-data:/public-test-data" `
106
+ -e AUN_TEST_ENCRYPTION_SEED `
107
+ -w /workspace/python `
108
+ aun-sdk-tester:latest `
109
+ python -X utf8 run-public-tests.py `
110
+ --domain evolagent.cn `
111
+ --suite smoke `
112
+ --data-root /public-test-data `
113
+ --identity-prefix public-ci `
114
+ --allow-create-identities `
115
+ --fail-fast
116
+ ```
117
+
118
+ 确认 `smoke` 通过后,把 `--suite smoke` 改成 `--suite full`。Linux/macOS 使用相同挂载关系,将 PowerShell 续行符替换为 `\` 即可。
119
+
120
+ ## 6. 宿主机直接运行
121
+
122
+ 宿主机已安装当前 Python SDK 依赖时,可在 `aun-sdk-core/python` 下执行:
123
+
124
+ ```powershell
125
+ $env:AUN_TEST_ENCRYPTION_SEED = "使用固定的公网测试 seed"
126
+ python -X utf8 run-public-tests.py `
127
+ --domain evolagent.cn `
128
+ --suite full `
129
+ --identity-prefix public-ci `
130
+ --allow-create-identities
131
+ ```
132
+
133
+ 可用 `--data-root D:\aun-public-tests` 改变公网数据根,但仍会经过受保护目录重叠检查。
134
+
135
+ ## 7. 套件矩阵
136
+
137
+ | 套件 | 用例数 | 主要范围 |
138
+ | --- | ---: | --- |
139
+ | `smoke` | 9 | Auth/Gateway token、CA 指纹、Message ACK、Group 管理/index、Storage、Stream、Echo、Service Proxy |
140
+ | `integration` | 28 | 消息、群、Storage/FS、Stream、NameService、Collab、签名、同步与失败契约 |
141
+ | `e2e` | 23 | Echo/trace/refresh、V2 E2EE、多设备、thought、Group FS、CLI FS、Collab、Notify、Service Proxy |
142
+ | `full` | 50 | `integration + e2e` 去重;不自动包含压力测试 |
143
+ | `stress` | 3 | Gateway quota、slot-id storm、长短连接 CLI 压力 |
144
+
145
+ `full` 的主要业务覆盖:
146
+
147
+ - Auth/CA/Gateway:身份注册、认证、token/Gateway 缓存复用、正式 refresh、PKI DER/SPKI 指纹、长短连接和 quota。
148
+ - Message:P2P 明文/E2EE、ACK、在线状态、notify、replay guard、失败路径、push seq、gap fill、inbox、thought、多设备。
149
+ - Group:生命周期、角色、邀请/审批/封禁、设置、搜索、撤回、游标同步、在线未读、签名审计和 `group.index`。
150
+ - Storage/Group FS/Collab:控制面与数据面、ACL、配额、分享、VFS P1-P4、CLI P1-P6、群目录及协作链路。
151
+ - Stream:RPC、token、HTTP、SSE、WebSocket、回放、多拉流端和输入校验。
152
+ - NameService:agent.md 上传、同步、认证边界和快照下载。
153
+ - Service Proxy:公网发现、provider 隧道、HTTP/SSE/WebSocket 和并发访问。
154
+
155
+ 指定少量用例时可重复使用 `--case`;此时 `--case` 覆盖套件默认清单:
156
+
157
+ ```powershell
158
+ python -X utf8 run-public-tests.py `
159
+ --domain evolagent.cn `
160
+ --case integration-message-ack `
161
+ --case e2e-v2-p2p `
162
+ --identity-prefix public-debug `
163
+ --allow-create-identities
164
+ ```
165
+
166
+ ## 8. 明确不纳入公网套件的用例
167
+
168
+ - `e2e_test_group_index.py`:只是 `integration_test_group_index.py` 的包装入口,`full` 按同一 `group-index` 用例去重。
169
+ - `integration_test_reconnect.py`:会操作 Docker 网络并重启 Gateway。
170
+ - `integration_test_mail*.py`:当前公网单实例未启用 Mail/SMTP/IMAP/Mailpit。
171
+ - `integration_test_p0_common_gaps.py`:包含 loopback 和本地故障注入。
172
+ - `integration_test_service_proxy.py`:加载服务端源码并启动进程内本地服务;公网使用 `e2e_test_service_proxy_docker.py`。
173
+ - `test_integration_auth_flow.py`:主要验证本地 mock CA/Gateway,不是公网 E2E。
174
+ - `local_real_sms_e2e.py`:会调用真实短信网关,必须单独授权。
175
+
176
+ 这些排除项可通过 `--list` 查看,runner 不提供绕过开关,避免 `full` 意外影响本地容器或外部系统。
177
+
178
+ ## 9. TLS 规则
179
+
180
+ 公网 runner 固定设置 `AUN_ENV=production`、`KITE_ENV=production`,并默认启用控制面和数据面的证书校验。SDK、AIDStore、Storage、Stream、NameService 和 Service Proxy 使用同一测试 TLS 开关。
181
+
182
+ 只有临时测试域证书尚未就绪时才使用:
183
+
184
+ ```powershell
185
+ python -X utf8 run-public-tests.py `
186
+ --domain temporary.example.com `
187
+ --suite smoke `
188
+ --insecure-skip-tls-verify `
189
+ --allow-create-identities
190
+ ```
191
+
192
+ 该运行会在 `report.json` 中记录 `verify_ssl: false`,不能作为正式公网 TLS 验收结果。
193
+
194
+ ## 10. 报告与排障
195
+
196
+ 每个用例实时输出到控制台,同时写入:
197
+
198
+ ```text
199
+ .public-test-data/runs/<domain>/<run-id>/logs/<case>.log
200
+ ```
201
+
202
+ 整轮结构化结果位于:
203
+
204
+ ```text
205
+ .public-test-data/runs/<domain>/<run-id>/report.json
206
+ ```
207
+
208
+ 常用参数:
209
+
210
+ - `--run-id <id>`:固定本轮目录名;已存在且非空时拒绝覆盖。
211
+ - `--timeout-seconds <n>`:每个用例独立超时,默认 1800 秒。
212
+ - `--fail-fast`:首个失败或超时后停止,报告中的 `not_run` 会记录未执行数量。
213
+ - `--identity-prefix <prefix>`:隔离不同域、人员或 CI 任务;固定角色会生成为 `<prefix>-alice.<domain>` 等 AID。
214
+
215
+ 失败时先查看对应 case 日志,再核对公网 DNS、证书 SAN、端口和 NameService 公告地址。切换域名后,不要复制另一个域的 identity 目录;应使用同一数据根下按 domain 自动分开的目录。
216
+
217
+ ## 11. 服务端公网验收
218
+
219
+ SDK 测试前,可从 `aun-sdk-core` 根目录运行服务端验收:
220
+
221
+ ```powershell
222
+ $repo = (Get-Location).Path
223
+ $env:PYTHONPATH = "${repo}\python\src"
224
+ $env:AUN_ACCEPTANCE_ENCRYPTION_SEED = "使用独立的服务端验收 seed"
225
+
226
+ python -X utf8 ..\docker-deploy\tests\public_single_instance_acceptance.py `
227
+ --target-mode public `
228
+ --domain evolagent.cn `
229
+ --data-root ..\docker-deploy\public-test-data `
230
+ --artifact-root ..\docker-deploy\public-test-artifacts `
231
+ --allow-create-identities
232
+ ```
233
+
234
+ 该验收必须 12 项全部 PASS,重点补齐 SDK runner 不直接覆盖的 AUN Console、服务注册健康、Leaderboard 和 AID Custody。服务端验收与 SDK runner 使用不同默认 AID 和不同本地数据目录,可连续运行。