@agentunion/fastaun 0.4.13 → 0.5.1

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 (182) hide show
  1. package/CHANGELOG.md +547 -393
  2. package/_packed_docs/CHANGELOG-validators.md +144 -0
  3. package/_packed_docs/CHANGELOG.md +547 -393
  4. package/_packed_docs/INDEX.md +159 -84
  5. package/_packed_docs/KITE_DOCS_GUIDE.md +48 -31
  6. package/_packed_docs/agent.md/SCHEMA.md +2 -0
  7. package/_packed_docs/agent.md/examples/codeagent-claudecode.md +2 -0
  8. package/_packed_docs/agent.md/examples/human-developer.md +2 -0
  9. package/_packed_docs/agent.md/examples/openclaw-lobster.md +2 -0
  10. package/_packed_docs/agent.md/examples/signed-openclaw-lobster.md +2 -0
  11. package/_packed_docs/agent.md//350/277/234/347/250/213agent.md/347/274/223/345/255/230/344/270/216etag/351/200/217/344/274/240/346/226/271/346/241/210.md +2 -0
  12. package/_packed_docs/cli/AUN-CLI/350/256/276/350/256/241/346/226/207/346/241/243.md +266 -686
  13. package/_packed_docs/cli/CLI/346/211/213/345/206/214.md +331 -0
  14. package/_packed_docs/design/2026-05-22-aun-rpc-trace-enhancement.md +2 -0
  15. package/_packed_docs/design/AUNClient/346/213/206/345/210/206/351/207/215/346/236/204/346/211/247/350/241/214/346/226/271/346/241/210.md +2 -0
  16. package/_packed_docs/design/E2EE_V2/347/256/200/345/214/226/344/270/2721DH/345/212/240Per-AID_Wrap/346/226/271/346/241/210.md +2 -0
  17. package/_packed_docs/design//350/267/250/350/257/255/350/250/200/345/256/271/345/231/250E2E/346/265/213/350/257/225/346/226/271/346/241/210.md +2 -0
  18. package/_packed_docs/protocol/00-/346/200/273/350/247/210/344/270/216/345/210/206/345/261/202.md +2 -0
  19. package/_packed_docs/protocol/00A-/350/256/276/350/256/241/345/216/237/345/210/231-/344/270/272Agent/350/200/214/347/224/237.md +2 -0
  20. 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 +2 -0
  21. package/_packed_docs/protocol/02-/350/257/201/344/271/246/344/270/216/344/277/241/344/273/273/344/275/223/347/263/273.md +2 -0
  22. package/_packed_docs/protocol/03-Gateway-/350/277/236/346/216/245/346/250/241/345/274/217.md +2 -0
  23. package/_packed_docs/protocol/04-Peer-/345/255/220/345/215/217/350/256/256.md +2 -0
  24. package/_packed_docs/protocol/05-Relay-/345/255/220/345/215/217/350/256/256.md +2 -0
  25. 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 +2 -0
  26. package/_packed_docs/protocol/08-AUN-E2EE-Group.md +296 -900
  27. package/_packed_docs/protocol/08-AUN-E2EE.md +2 -0
  28. package/_packed_docs/protocol/09-/345/256/211/345/205/250/350/200/203/350/231/221.md +2 -0
  29. package/_packed_docs/protocol/10-Group-/345/255/220/345/215/217/350/256/256.md +66 -173
  30. package/_packed_docs/protocol/11-Storage-/345/255/220/345/215/217/350/256/256.md +55 -0
  31. package/_packed_docs/protocol/12-Stream-/345/255/220/345/215/217/350/256/256.md +2 -0
  32. package/_packed_docs/protocol/13-Agent/350/241/214/344/270/272/350/247/204/350/214/203.md +2 -0
  33. package/_packed_docs/protocol/14-/344/272/244/344/272/222/346/234/272/345/210/266-/345/223/215/345/272/224/346/250/241/345/274/217/344/270/216/350/207/252/344/270/273/346/250/241/345/274/217.md +2 -0
  34. 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 +2 -0
  35. package/_packed_docs/protocol/16-/347/263/273/347/273/237/347/233/256/345/275/225/344/277/235/346/212/244/346/226/271/346/241/210.md +177 -0
  36. package/_packed_docs/protocol/README.md +4 -1
  37. package/_packed_docs/protocol/agent.md/SCHEMA.md +2 -0
  38. package/_packed_docs/protocol/agent.md/examples/codeagent-claudecode.md +2 -0
  39. package/_packed_docs/protocol/agent.md/examples/human-developer.md +2 -0
  40. package/_packed_docs/protocol/agent.md/examples/openclaw-lobster.md +2 -0
  41. package/_packed_docs/protocol/aun-docs-guide.md +2 -0
  42. package/_packed_docs/protocol/index.md +10 -3
  43. package/_packed_docs/protocol//350/215/211/346/241/210-agent.md/347/255/276/345/220/215/345/215/217/350/256/256.md +2 -0
  44. package/_packed_docs/protocol//350/215/211/346/241/210-/346/213/222/347/273/235/344/277/241/345/217/267/345/215/217/350/256/256.md +2 -0
  45. package/_packed_docs/protocol//351/231/204/345/275/225A-/346/234/257/350/257/255/350/241/250.md +2 -0
  46. package/_packed_docs/protocol//351/231/204/345/275/225B-/346/211/251/345/261/225/346/200/247/346/214/207/345/215/227.md +2 -0
  47. package/_packed_docs/protocol//351/231/204/345/275/225C-/347/247/201/351/222/245/347/256/241/347/220/206/344/270/216/350/272/253/344/273/275/346/201/242/345/244/215.md +2 -0
  48. package/_packed_docs/protocol//351/231/204/345/275/225D-Root_CA_/346/262/273/347/220/206/346/234/272/345/210/266.md +2 -0
  49. package/_packed_docs/protocol//351/231/204/345/275/225E-Root_CA_/345/207/206/345/205/245/346/265/201/347/250/213.md +2 -0
  50. package/_packed_docs/protocol//351/231/204/345/275/225F-Issuer_CA_/347/224/263/350/257/267/346/265/201/347/250/213.md +2 -0
  51. package/_packed_docs/protocol//351/231/204/345/275/225G-AID_/345/255/244/345/204/277/351/242/204/351/230/262/344/270/216/346/225/221/346/217/264/346/234/272/345/210/266.md +2 -0
  52. package/_packed_docs/protocol//351/231/204/345/275/225H-Identity/346/234/215/345/212/241/345/256/236/347/216/260/346/214/207/345/215/227.md +2 -0
  53. package/_packed_docs/protocol//351/231/204/345/275/225I-/350/267/250/345/237/237/346/266/210/346/201/257/350/267/257/347/224/261/345/256/236/347/216/260/346/214/207/345/215/227.md +2 -0
  54. package/_packed_docs/protocol//351/231/204/345/275/225J-/345/256/242/346/210/267/347/253/257/346/216/245/345/205/245/347/244/272/344/276/213.md +2 -0
  55. package/_packed_docs/protocol//351/231/204/345/275/225K-Agent_Web/345/217/221/347/216/260/345/215/217/350/256/256.md +2 -0
  56. package/_packed_docs/protocol//351/231/204/345/275/225L-E2EE/345/256/236/347/216/260/346/214/207/345/215/227.md +2 -0
  57. package/_packed_docs/protocol//351/231/204/345/275/225M-JWT/350/256/244/350/257/201/345/256/236/347/216/260/346/214/207/345/215/227.md +2 -0
  58. package/_packed_docs/protocol//351/231/204/345/275/225N-/345/210/206/345/270/203/345/274/217Trace/345/215/217/350/256/256.md +2 -0
  59. package/_packed_docs/sdk/01-/345/277/253/351/200/237/345/274/200/345/247/213.md +2 -0
  60. package/_packed_docs/sdk/02-WebSocket/345/215/217/350/256/256.md +2 -0
  61. package/_packed_docs/sdk/03-/346/240/270/345/277/203/346/246/202/345/277/265.md +2 -0
  62. package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +2 -0
  63. package/_packed_docs/sdk/05-E2EE/345/212/240/345/257/206/351/200/232/344/277/241.md +6 -252
  64. package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +219 -177
  65. package/_packed_docs/sdk/07-/351/224/231/350/257/257/345/244/204/347/220/206.md +4 -1
  66. package/_packed_docs/sdk/08-/346/234/200/344/275/263/345/256/236/350/267/265.md +2 -0
  67. package/_packed_docs/sdk/09-collab-rpc-manual.md +581 -0
  68. package/_packed_docs/sdk/09-custody-api-manual.md +2 -0
  69. package/_packed_docs/sdk/09-group-rpc-manual.md +301 -634
  70. package/_packed_docs/sdk/09-message-rpc-manual.md +2 -0
  71. package/_packed_docs/sdk/09-meta-rpc-manual.md +2 -0
  72. package/_packed_docs/sdk/09-payload-reference.md +2 -0
  73. package/_packed_docs/sdk/09-proxy-rpc-manual.md +2 -0
  74. package/_packed_docs/sdk/09-storage-rpc-manual.md +984 -274
  75. package/_packed_docs/sdk/09-stream-rpc-manual.md +2 -0
  76. package/_packed_docs/sdk/AUN_DOCS_GUIDE.md +36 -23
  77. package/_packed_docs/sdk/E2EE_V2/346/266/210/346/201/257/351/200/232/344/277/241/346/227/266/345/272/217/345/233/276.md +2 -0
  78. package/_packed_docs/sdk/INDEX.md +47 -30
  79. package/_packed_docs/sdk/Notify/351/200/232/347/237/245/346/226/271/346/241/210.md +2 -0
  80. package/_packed_docs/sdk/README.md +17 -15
  81. package/dist/aid-store.d.ts +25 -0
  82. package/dist/aid-store.js +80 -0
  83. package/dist/aid-store.js.map +1 -1
  84. package/dist/client/delivery.d.ts +11 -0
  85. package/dist/client/delivery.js +208 -25
  86. package/dist/client/delivery.js.map +1 -1
  87. package/dist/client/group-state.js +33 -11
  88. package/dist/client/group-state.js.map +1 -1
  89. package/dist/client/rpc-pipeline.d.ts +1 -0
  90. package/dist/client/rpc-pipeline.js +177 -65
  91. package/dist/client/rpc-pipeline.js.map +1 -1
  92. package/dist/client/v2-e2ee.d.ts +6 -1
  93. package/dist/client/v2-e2ee.js +199 -130
  94. package/dist/client/v2-e2ee.js.map +1 -1
  95. package/dist/client.d.ts +37 -1
  96. package/dist/client.js +491 -44
  97. package/dist/client.js.map +1 -1
  98. package/dist/collab/client.d.ts +46 -0
  99. package/dist/collab/client.js +136 -0
  100. package/dist/collab/client.js.map +1 -0
  101. package/dist/collab/errors.d.ts +15 -0
  102. package/dist/collab/errors.js +60 -0
  103. package/dist/collab/errors.js.map +1 -0
  104. package/dist/collab/index.d.ts +3 -0
  105. package/dist/collab/index.js +4 -0
  106. package/dist/collab/index.js.map +1 -0
  107. package/dist/collab/types.d.ts +110 -0
  108. package/dist/collab/types.js +2 -0
  109. package/dist/collab/types.js.map +1 -0
  110. package/dist/crypto.d.ts +2 -0
  111. package/dist/crypto.js +6 -0
  112. package/dist/crypto.js.map +1 -1
  113. package/dist/errors.d.ts +0 -12
  114. package/dist/errors.js +9 -25
  115. package/dist/errors.js.map +1 -1
  116. package/dist/facades.d.ts +94 -0
  117. package/dist/facades.js +255 -0
  118. package/dist/facades.js.map +1 -0
  119. package/dist/group-fs.d.ts +122 -0
  120. package/dist/group-fs.js +467 -0
  121. package/dist/group-fs.js.map +1 -0
  122. package/dist/group-id.d.ts +9 -12
  123. package/dist/group-id.js +41 -63
  124. package/dist/group-id.js.map +1 -1
  125. package/dist/group-resources.d.ts +31 -0
  126. package/dist/group-resources.js +84 -0
  127. package/dist/group-resources.js.map +1 -0
  128. package/dist/index.d.ts +9 -3
  129. package/dist/index.js +11 -1
  130. package/dist/index.js.map +1 -1
  131. package/dist/keystore/aid-db.d.ts +1 -0
  132. package/dist/keystore/aid-db.js +43 -43
  133. package/dist/keystore/aid-db.js.map +1 -1
  134. package/dist/keystore/local-identity-store.d.ts +16 -0
  135. package/dist/keystore/local-identity-store.js +190 -18
  136. package/dist/keystore/local-identity-store.js.map +1 -1
  137. package/dist/keystore/local-token-store.d.ts +0 -13
  138. package/dist/keystore/local-token-store.js +0 -105
  139. package/dist/keystore/local-token-store.js.map +1 -1
  140. package/dist/logger.d.ts +2 -0
  141. package/dist/logger.js +4 -0
  142. package/dist/logger.js.map +1 -1
  143. package/dist/register-flow.d.ts +1 -0
  144. package/dist/register-flow.js +3 -0
  145. package/dist/register-flow.js.map +1 -1
  146. package/dist/service-proxy.d.ts +1 -0
  147. package/dist/service-proxy.js +17 -4
  148. package/dist/service-proxy.js.map +1 -1
  149. package/dist/storage/errors.d.ts +27 -0
  150. package/dist/storage/errors.js +65 -0
  151. package/dist/storage/errors.js.map +1 -0
  152. package/dist/storage/index.d.ts +1 -0
  153. package/dist/storage/index.js +2 -0
  154. package/dist/storage/index.js.map +1 -0
  155. package/dist/storage/lowlevel.d.ts +321 -0
  156. package/dist/storage/lowlevel.js +475 -0
  157. package/dist/storage/lowlevel.js.map +1 -0
  158. package/dist/storage/types.d.ts +57 -0
  159. package/dist/storage/types.js +116 -0
  160. package/dist/storage/types.js.map +1 -0
  161. package/dist/storage/vfs.d.ts +166 -0
  162. package/dist/storage/vfs.js +524 -0
  163. package/dist/storage/vfs.js.map +1 -0
  164. package/dist/tools/cross-sdk-agent.js +708 -1
  165. package/dist/tools/cross-sdk-agent.js.map +1 -1
  166. package/dist/transport.d.ts +5 -0
  167. package/dist/transport.js +124 -21
  168. package/dist/transport.js.map +1 -1
  169. package/dist/types.d.ts +38 -0
  170. package/dist/v2/session/session.d.ts +2 -0
  171. package/dist/v2/session/session.js +53 -23
  172. package/dist/v2/session/session.js.map +1 -1
  173. package/dist/v2/state/commitment.d.ts +1 -1
  174. package/dist/v2/state/commitment.js +4 -2
  175. package/dist/v2/state/commitment.js.map +1 -1
  176. package/dist/validators.d.ts +32 -0
  177. package/dist/validators.js +128 -0
  178. package/dist/validators.js.map +1 -0
  179. package/dist/version.d.ts +1 -1
  180. package/dist/version.js +1 -1
  181. package/dist/version.js.map +1 -1
  182. package/package.json +1 -1
@@ -0,0 +1,46 @@
1
+ import type { RpcParams } from '../types.js';
2
+ import type { CollabDiffResult, CollabDocumentEntry, CollabDocumentResult, CollabGCResult, CollabHistoryEntry, CollabRaw, CollabReflogEntry, CollabRegistryEntry, CollabRpcClient, CollabTag, CollabTagDiffResult, CollabTagPruneOptions, CollabTagRestoreResult } from './types.js';
3
+ export declare class CollabTagClient {
4
+ private readonly parent;
5
+ constructor(parent: CollabClient);
6
+ create(collabRoot: string, options?: {
7
+ message?: string;
8
+ major?: boolean;
9
+ }): Promise<CollabRaw>;
10
+ list(collabRoot: string): Promise<CollabTag[]>;
11
+ show(collabRoot: string, version: string): Promise<CollabTag>;
12
+ diff(collabRoot: string, versionA: string, versionB: string): Promise<CollabTagDiffResult>;
13
+ restore(collabRoot: string, version: string, options?: {
14
+ message?: string;
15
+ }): Promise<CollabTagRestoreResult>;
16
+ rm(collabRoot: string, version: string): Promise<CollabRaw>;
17
+ prune(collabRoot: string, options?: CollabTagPruneOptions): Promise<CollabRaw>;
18
+ }
19
+ export declare class CollabClient {
20
+ readonly tag: CollabTagClient;
21
+ private readonly client;
22
+ constructor(client: CollabRpcClient);
23
+ _call<T = unknown>(method: string, params?: RpcParams): Promise<T>;
24
+ lsFiles(collabRoot: string): Promise<CollabDocumentEntry[]>;
25
+ create(collabRoot: string, doc: string, source: string): Promise<CollabDocumentResult>;
26
+ show(collabRoot: string, doc: string, rev?: number): Promise<CollabDocumentResult>;
27
+ commit(collabRoot: string, doc: string, source: string, onto: number, message?: string): Promise<CollabDocumentResult>;
28
+ merge(collabRoot: string, doc: string, source: string, onto: number): Promise<CollabDocumentResult>;
29
+ log(collabRoot: string, doc: string): Promise<CollabHistoryEntry[]>;
30
+ diff(collabRoot: string, doc: string, fromVersion: number, toVersion: number): Promise<CollabDiffResult>;
31
+ clone(src: string, dest: string, reroot?: boolean): Promise<CollabRaw>;
32
+ prune(collabRoot: string, doc: string): Promise<CollabRaw>;
33
+ gc(collabRoot: string, dryRun?: boolean): Promise<CollabGCResult>;
34
+ reflog(collabRoot: string, doc?: string, limit?: number): Promise<CollabReflogEntry[]>;
35
+ revert(collabRoot: string, doc: string, rev: number, message?: string): Promise<CollabDocumentResult>;
36
+ lsRemote(groupAid: string): Promise<CollabRegistryEntry[]>;
37
+ unregister(groupAid: string, collabRoot: string): Promise<CollabRaw>;
38
+ setAcl(collabRoot: string, granteeAid: string, options?: {
39
+ perms?: string;
40
+ expires_at?: number;
41
+ expiresAt?: number;
42
+ max_uses?: number;
43
+ maxUses?: number;
44
+ }): Promise<CollabRaw>;
45
+ removeAcl(collabRoot: string, granteeAid: string): Promise<CollabRaw>;
46
+ }
@@ -0,0 +1,136 @@
1
+ import { mapCollabError } from './errors.js';
2
+ function stripNil(params) {
3
+ const out = {};
4
+ for (const [key, value] of Object.entries(params)) {
5
+ if (value !== undefined && value !== null)
6
+ out[key] = value;
7
+ }
8
+ return out;
9
+ }
10
+ export class CollabTagClient {
11
+ parent;
12
+ constructor(parent) {
13
+ this.parent = parent;
14
+ }
15
+ create(collabRoot, options = {}) {
16
+ return this.parent._call('collab.tag.create', {
17
+ collab_root: collabRoot,
18
+ message: options.message ?? '',
19
+ major: options.major ?? false,
20
+ });
21
+ }
22
+ list(collabRoot) {
23
+ return this.parent._call('collab.tag.list', { collab_root: collabRoot });
24
+ }
25
+ show(collabRoot, version) {
26
+ return this.parent._call('collab.tag.show', { collab_root: collabRoot, version });
27
+ }
28
+ diff(collabRoot, versionA, versionB) {
29
+ return this.parent._call('collab.tag.diff', {
30
+ collab_root: collabRoot,
31
+ version_a: versionA,
32
+ version_b: versionB,
33
+ });
34
+ }
35
+ restore(collabRoot, version, options = {}) {
36
+ return this.parent._call('collab.tag.restore', {
37
+ collab_root: collabRoot,
38
+ version,
39
+ message: options.message ?? '',
40
+ });
41
+ }
42
+ rm(collabRoot, version) {
43
+ return this.parent._call('collab.tag.rm', { collab_root: collabRoot, version });
44
+ }
45
+ prune(collabRoot, options = {}) {
46
+ return this.parent._call('collab.tag.prune', stripNil({
47
+ collab_root: collabRoot,
48
+ before: options.before,
49
+ keep_last: options.keep_last ?? options.keepLast,
50
+ }));
51
+ }
52
+ }
53
+ export class CollabClient {
54
+ tag;
55
+ client;
56
+ constructor(client) {
57
+ this.client = client;
58
+ this.tag = new CollabTagClient(this);
59
+ }
60
+ async _call(method, params = {}) {
61
+ try {
62
+ return await this.client.call(method, params);
63
+ }
64
+ catch (exc) {
65
+ const mapped = mapCollabError(exc);
66
+ throw mapped === exc ? exc : mapped;
67
+ }
68
+ }
69
+ lsFiles(collabRoot) {
70
+ return this._call('collab.ls-files', { collab_root: collabRoot });
71
+ }
72
+ create(collabRoot, doc, source) {
73
+ return this._call('collab.create', { collab_root: collabRoot, doc, source });
74
+ }
75
+ show(collabRoot, doc, rev) {
76
+ const params = { collab_root: collabRoot, doc };
77
+ if (rev !== undefined)
78
+ params.rev = rev;
79
+ return this._call('collab.show', params);
80
+ }
81
+ commit(collabRoot, doc, source, onto, message = '') {
82
+ return this._call('collab.commit', {
83
+ collab_root: collabRoot,
84
+ doc,
85
+ source,
86
+ onto,
87
+ message,
88
+ });
89
+ }
90
+ merge(collabRoot, doc, source, onto) {
91
+ return this._call('collab.merge', { collab_root: collabRoot, doc, source, onto });
92
+ }
93
+ log(collabRoot, doc) {
94
+ return this._call('collab.log', { collab_root: collabRoot, doc });
95
+ }
96
+ diff(collabRoot, doc, fromVersion, toVersion) {
97
+ return this._call('collab.diff', { collab_root: collabRoot, doc, from: fromVersion, to: toVersion });
98
+ }
99
+ clone(src, dest, reroot = false) {
100
+ return this._call('collab.clone', { src, dest, reroot });
101
+ }
102
+ prune(collabRoot, doc) {
103
+ return this._call('collab.prune', { collab_root: collabRoot, doc });
104
+ }
105
+ gc(collabRoot, dryRun = true) {
106
+ return this._call('collab.gc', { collab_root: collabRoot, dry_run: dryRun });
107
+ }
108
+ reflog(collabRoot, doc, limit = 100) {
109
+ const params = { collab_root: collabRoot, limit };
110
+ if (doc)
111
+ params.doc = doc;
112
+ return this._call('collab.reflog', params);
113
+ }
114
+ revert(collabRoot, doc, rev, message = '') {
115
+ return this._call('collab.revert', { collab_root: collabRoot, doc, rev, message });
116
+ }
117
+ lsRemote(groupAid) {
118
+ return this._call('collab.ls-remote', { group_aid: groupAid });
119
+ }
120
+ unregister(groupAid, collabRoot) {
121
+ return this._call('collab.unregister', { group_aid: groupAid, collab_root: collabRoot });
122
+ }
123
+ setAcl(collabRoot, granteeAid, options = {}) {
124
+ return this._call('collab.set_acl', stripNil({
125
+ collab_root: collabRoot,
126
+ grantee_aid: granteeAid,
127
+ perms: options.perms ?? 'w',
128
+ expires_at: options.expires_at ?? options.expiresAt,
129
+ max_uses: options.max_uses ?? options.maxUses,
130
+ }));
131
+ }
132
+ removeAcl(collabRoot, granteeAid) {
133
+ return this._call('collab.remove_acl', { collab_root: collabRoot, grantee_aid: granteeAid });
134
+ }
135
+ }
136
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/collab/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { AUNError } from '../errors.js';
2
+ export declare class CollabError extends AUNError {
3
+ constructor(message: string, opts?: ConstructorParameters<typeof AUNError>[1]);
4
+ }
5
+ export declare class CollabConflictError extends CollabError {
6
+ readonly current_version: number | null;
7
+ readonly current_target: string;
8
+ readonly hint: string;
9
+ constructor(message: string, opts?: ConstructorParameters<typeof CollabError>[1] & {
10
+ current_version?: number | null;
11
+ current_target?: string;
12
+ hint?: string;
13
+ });
14
+ }
15
+ export declare function mapCollabError(exc: unknown): unknown;
@@ -0,0 +1,60 @@
1
+ import { AUNError } from '../errors.js';
2
+ import { isJsonObject } from '../types.js';
3
+ export class CollabError extends AUNError {
4
+ constructor(message, opts = {}) {
5
+ super(message, opts);
6
+ this.name = 'CollabError';
7
+ }
8
+ }
9
+ export class CollabConflictError extends CollabError {
10
+ current_version;
11
+ current_target;
12
+ hint;
13
+ constructor(message, opts = {}) {
14
+ super(message, { ...opts, code: opts.code ?? -32009 });
15
+ this.name = 'CollabConflictError';
16
+ this.current_version = opts.current_version ?? null;
17
+ this.current_target = opts.current_target ?? '';
18
+ this.hint = opts.hint ?? '';
19
+ }
20
+ }
21
+ function errorMessage(exc) {
22
+ if (exc instanceof Error)
23
+ return exc.message || exc.name;
24
+ return String(exc || 'collab error');
25
+ }
26
+ function errorCode(exc) {
27
+ const code = (exc && typeof exc === 'object') ? exc.code : undefined;
28
+ const parsed = Number(code);
29
+ return Number.isFinite(parsed) ? parsed : undefined;
30
+ }
31
+ function errorData(exc) {
32
+ const data = (exc && typeof exc === 'object') ? exc.data : undefined;
33
+ return data === undefined ? null : data;
34
+ }
35
+ function errorTraceId(exc) {
36
+ const direct = (exc && typeof exc === 'object') ? exc : {};
37
+ const value = direct.traceId ?? direct.trace_id;
38
+ return typeof value === 'string' ? value : undefined;
39
+ }
40
+ export function mapCollabError(exc) {
41
+ if (exc instanceof CollabError)
42
+ return exc;
43
+ const code = errorCode(exc);
44
+ const data = errorData(exc);
45
+ const message = errorMessage(exc);
46
+ if (code === -32009) {
47
+ const payload = isJsonObject(data) ? data : {};
48
+ const currentVersion = Number(payload.current_version);
49
+ return new CollabConflictError(message, {
50
+ code: code ?? -32009,
51
+ data,
52
+ traceId: errorTraceId(exc),
53
+ current_version: Number.isFinite(currentVersion) ? currentVersion : null,
54
+ current_target: String(payload.current_target ?? ''),
55
+ hint: String(payload.hint ?? ''),
56
+ });
57
+ }
58
+ return exc;
59
+ }
60
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/collab/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { CollabClient, CollabTagClient } from './client.js';
2
+ export { CollabConflictError, CollabError, mapCollabError } from './errors.js';
3
+ export * from './types.js';
@@ -0,0 +1,4 @@
1
+ export { CollabClient, CollabTagClient } from './client.js';
2
+ export { CollabConflictError, CollabError, mapCollabError } from './errors.js';
3
+ export * from './types.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/collab/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC/E,cAAc,YAAY,CAAC"}
@@ -0,0 +1,110 @@
1
+ import type { JsonObject, JsonValue, RpcParams } from '../types.js';
2
+ export type CollabRaw = JsonObject;
3
+ export interface CollabRpcClient {
4
+ call(method: string, params?: RpcParams): Promise<unknown>;
5
+ }
6
+ export interface CollabDocumentEntry extends JsonObject {
7
+ collab_root?: string;
8
+ doc?: string;
9
+ anchor?: string;
10
+ version?: number;
11
+ author?: string;
12
+ target?: string;
13
+ current_target?: string;
14
+ updated_at?: number;
15
+ }
16
+ export interface CollabDocumentResult extends JsonObject {
17
+ ok?: boolean;
18
+ collab_root?: string;
19
+ doc?: string;
20
+ anchor?: string;
21
+ source?: string;
22
+ content?: string;
23
+ version?: number;
24
+ author?: string;
25
+ current_target?: string;
26
+ conflicts?: boolean;
27
+ }
28
+ export interface CollabHistoryEntry extends JsonObject {
29
+ version?: number;
30
+ target?: string;
31
+ author?: string;
32
+ message?: string;
33
+ time?: number;
34
+ }
35
+ export interface CollabDiffResult extends JsonObject {
36
+ collab_root?: string;
37
+ doc?: string;
38
+ from?: number;
39
+ to?: number;
40
+ diff?: JsonValue;
41
+ }
42
+ export interface CollabRegistryEntry extends JsonObject {
43
+ group_aid?: string;
44
+ authority_aid?: string;
45
+ collab_root?: string;
46
+ }
47
+ export interface CollabTagEntry extends JsonObject {
48
+ doc?: string;
49
+ anchor?: string;
50
+ version?: number;
51
+ author?: string;
52
+ current_target?: string;
53
+ target?: string;
54
+ }
55
+ export interface CollabTag extends JsonObject {
56
+ collab_root?: string;
57
+ version?: string;
58
+ message?: string;
59
+ created_at?: number;
60
+ major?: boolean;
61
+ bump?: string;
62
+ changed?: string[];
63
+ entries?: CollabTagEntry[];
64
+ }
65
+ export interface CollabTagDiffResult extends JsonObject {
66
+ collab_root?: string;
67
+ version_a?: string;
68
+ version_b?: string;
69
+ added?: string[];
70
+ removed?: string[];
71
+ changed?: string[];
72
+ }
73
+ export interface CollabTagPruneOptions {
74
+ before?: number | string | null;
75
+ keep_last?: number | null;
76
+ keepLast?: number | null;
77
+ }
78
+ export interface CollabTagRestoreResult extends JsonObject {
79
+ restored_from?: string;
80
+ new_snapshot_version?: string;
81
+ warnings?: string[];
82
+ partial?: boolean;
83
+ restored_docs?: string[];
84
+ }
85
+ export type CollabSnapshotEntry = CollabTagEntry;
86
+ export type CollabSnapshot = CollabTag;
87
+ export type CollabSnapshotDiffResult = CollabTagDiffResult;
88
+ export type CollabSnapshotPruneOptions = CollabTagPruneOptions;
89
+ export type CollabSnapshotRestoreResult = CollabTagRestoreResult;
90
+ export interface CollabGCResult extends JsonObject {
91
+ scanned?: number;
92
+ reachable?: number;
93
+ garbage?: number;
94
+ deleted?: number;
95
+ freed_bytes?: number;
96
+ }
97
+ export interface CollabReflogEntry extends JsonObject {
98
+ seq?: number;
99
+ action?: string;
100
+ requester?: string;
101
+ doc?: string;
102
+ version?: number;
103
+ base_version?: number;
104
+ target?: string;
105
+ status?: string;
106
+ error_code?: number;
107
+ error_msg?: string;
108
+ metadata?: JsonObject;
109
+ timestamp?: number;
110
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/collab/types.ts"],"names":[],"mappings":""}
package/dist/crypto.d.ts CHANGED
@@ -21,6 +21,7 @@ export declare class CryptoProvider {
21
21
  * 返回 PEM 私钥 + DER 公钥(base64)+ 曲线名称。
22
22
  */
23
23
  generateIdentity(): IdentityKeyPair;
24
+ generateIdentityAsync(): Promise<IdentityKeyPair>;
24
25
  /**
25
26
  * 使用私钥签名登录 nonce。
26
27
  * 签名数据格式:"nonce:timestamp"
@@ -28,6 +29,7 @@ export declare class CryptoProvider {
28
29
  * @returns [signature_b64, timestamp]
29
30
  */
30
31
  signLoginNonce(privateKeyPem: string, nonce: string, clientTime?: string): [string, string];
32
+ signLoginNonceAsync(privateKeyPem: string, nonce: string, clientTime?: string): Promise<[string, string]>;
31
33
  /**
32
34
  * 生成客户端 nonce(12 字节随机数的 base64 编码)。
33
35
  */
package/dist/crypto.js CHANGED
@@ -27,6 +27,9 @@ export class CryptoProvider {
27
27
  curve: this.curveName,
28
28
  };
29
29
  }
30
+ generateIdentityAsync() {
31
+ return Promise.resolve(this.generateIdentity());
32
+ }
30
33
  /**
31
34
  * 使用私钥签名登录 nonce。
32
35
  * 签名数据格式:"nonce:timestamp"
@@ -44,6 +47,9 @@ export class CryptoProvider {
44
47
  const signature = signer.sign(privateKeyPem);
45
48
  return [signature.toString('base64'), usedTime];
46
49
  }
50
+ signLoginNonceAsync(privateKeyPem, nonce, clientTime) {
51
+ return Promise.resolve(this.signLoginNonce(privateKeyPem, nonce, clientTime));
52
+ }
47
53
  /**
48
54
  * 生成客户端 nonce(12 字节随机数的 base64 编码)。
49
55
  */
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../src/crypto.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -79,18 +79,6 @@ export declare class E2EEError extends AUNError {
79
79
  export declare class E2EEDecryptFailedError extends E2EEError {
80
80
  constructor(message?: string, opts?: ConstructorParameters<typeof E2EEError>[1]);
81
81
  }
82
- /** Membership Commitment 验证失败 */
83
- export declare class E2EEGroupCommitmentInvalidError extends E2EEError {
84
- constructor(message?: string, opts?: ConstructorParameters<typeof E2EEError>[1]);
85
- }
86
- /** 密钥请求者不是群成员 */
87
- export declare class E2EEGroupNotMemberError extends E2EEError {
88
- constructor(message?: string, opts?: ConstructorParameters<typeof E2EEError>[1]);
89
- }
90
- /** 群消息解密失败 */
91
- export declare class E2EEGroupDecryptFailedError extends E2EEError {
92
- constructor(message?: string, opts?: ConstructorParameters<typeof E2EEError>[1]);
93
- }
94
82
  /** 对端证书已被吊销 */
95
83
  export declare class CertificateRevokedError extends AuthError {
96
84
  constructor(message?: string, opts?: ConstructorParameters<typeof AUNError>[1]);
package/dist/errors.js CHANGED
@@ -136,28 +136,6 @@ export class E2EEDecryptFailedError extends E2EEError {
136
136
  this.name = 'E2EEDecryptFailedError';
137
137
  }
138
138
  }
139
- // ── 群组 E2EE 错误 ────────────────────────────────────────────
140
- /** Membership Commitment 验证失败 */
141
- export class E2EEGroupCommitmentInvalidError extends E2EEError {
142
- constructor(message = 'group commitment invalid', opts = {}) {
143
- super(message, { ...opts, code: -32042, localCode: 'E2EE_GROUP_COMMITMENT_INVALID' });
144
- this.name = 'E2EEGroupCommitmentInvalidError';
145
- }
146
- }
147
- /** 密钥请求者不是群成员 */
148
- export class E2EEGroupNotMemberError extends E2EEError {
149
- constructor(message = 'not a group member', opts = {}) {
150
- super(message, { ...opts, code: -32043, localCode: 'E2EE_GROUP_NOT_MEMBER' });
151
- this.name = 'E2EEGroupNotMemberError';
152
- }
153
- }
154
- /** 群消息解密失败 */
155
- export class E2EEGroupDecryptFailedError extends E2EEError {
156
- constructor(message = 'group message decrypt failed', opts = {}) {
157
- super(message, { ...opts, code: -32044, localCode: 'E2EE_GROUP_DECRYPT_FAILED' });
158
- this.name = 'E2EEGroupDecryptFailedError';
159
- }
160
- }
161
139
  /** 对端证书已被吊销 */
162
140
  export class CertificateRevokedError extends AuthError {
163
141
  constructor(message = 'peer certificate has been revoked', opts = {}) {
@@ -187,6 +165,11 @@ export class ClientSignatureError extends ValidationError {
187
165
  }
188
166
  }
189
167
  // ── 远程错误映射 ──────────────────────────────────────────────
168
+ function isTransientGatewayDegradedError(message) {
169
+ const text = message.trim().toLowerCase();
170
+ return text.includes('gateway service degraded')
171
+ || text.includes('certificate not loaded');
172
+ }
190
173
  /**
191
174
  * 将 JSON-RPC error 对象映射为具体的 AUNError 子类。
192
175
  * 与 Python SDK 的 map_remote_error 逻辑完全一致。
@@ -204,10 +187,11 @@ export function mapRemoteError(error) {
204
187
  const AUTH_CODES = new Set([4001, 4010, -32001, -32003]);
205
188
  const PERMISSION_CODES = new Set([4030, 403, -32004]); // -32004 = PERMISSION_DENIED
206
189
  const NOT_FOUND_CODES = new Set([4040, 404, -32008]);
207
- const RATE_LIMIT_CODES = new Set([4290, 429, -32029]);
190
+ const RATE_LIMIT_CODES = new Set([4290, 429, -32029, -32429]);
208
191
  const SESSION_CODES = new Set([-32010, -32011, -32013]);
209
192
  const VALIDATION_CODES = new Set([-32600, -32601, -32602, 4000]);
210
- const opts = { code, data, traceId, retryable: false };
193
+ const transientRetryable = isTransientGatewayDegradedError(message);
194
+ const opts = { code, data, traceId, retryable: transientRetryable };
211
195
  let err;
212
196
  if (AUTH_CODES.has(code)) {
213
197
  err = new AuthError(message, opts);
@@ -241,7 +225,7 @@ export function mapRemoteError(error) {
241
225
  }
242
226
  else {
243
227
  // 5000-5999 范围的服务端错误可重试
244
- const retryable = code >= 5000 && code < 6000;
228
+ const retryable = transientRetryable || (code >= 5000 && code < 6000);
245
229
  err = new AUNError(message, { ...opts, retryable });
246
230
  }
247
231
  return err;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}