@agentunion/fastaun-browser 0.5.9 → 0.5.10

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 (50) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/_packed_docs/CHANGELOG.md +32 -0
  3. package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +6 -5
  4. package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +43 -8
  5. package/_packed_docs/sdk/09-group-rpc-manual.md +18 -3
  6. package/_packed_docs/sdk/09-message-rpc-manual.md +34 -10
  7. package/dist/agent-md.d.ts.map +1 -1
  8. package/dist/agent-md.js +23 -1
  9. package/dist/agent-md.js.map +1 -1
  10. package/dist/auth.d.ts.map +1 -1
  11. package/dist/auth.js +16 -2
  12. package/dist/auth.js.map +1 -1
  13. package/dist/bundle.js +812 -205
  14. package/dist/client/delivery.d.ts +23 -7
  15. package/dist/client/delivery.d.ts.map +1 -1
  16. package/dist/client/delivery.js +221 -80
  17. package/dist/client/delivery.js.map +1 -1
  18. package/dist/client/group-state.js +6 -6
  19. package/dist/client/group-state.js.map +1 -1
  20. package/dist/client/lifecycle.d.ts.map +1 -1
  21. package/dist/client/lifecycle.js +34 -38
  22. package/dist/client/lifecycle.js.map +1 -1
  23. package/dist/client/rpc-pipeline.d.ts +4 -0
  24. package/dist/client/rpc-pipeline.d.ts.map +1 -1
  25. package/dist/client/rpc-pipeline.js +56 -2
  26. package/dist/client/rpc-pipeline.js.map +1 -1
  27. package/dist/client/v2-e2ee.d.ts +1 -1
  28. package/dist/client/v2-e2ee.d.ts.map +1 -1
  29. package/dist/client/v2-e2ee.js +22 -6
  30. package/dist/client/v2-e2ee.js.map +1 -1
  31. package/dist/client.d.ts +0 -1
  32. package/dist/client.d.ts.map +1 -1
  33. package/dist/client.js +23 -32
  34. package/dist/client.js.map +1 -1
  35. package/dist/events.d.ts +31 -2
  36. package/dist/events.d.ts.map +1 -1
  37. package/dist/events.js +167 -7
  38. package/dist/events.js.map +1 -1
  39. package/dist/register-flow.d.ts.map +1 -1
  40. package/dist/register-flow.js +16 -2
  41. package/dist/register-flow.js.map +1 -1
  42. package/dist/transport.d.ts +10 -1
  43. package/dist/transport.d.ts.map +1 -1
  44. package/dist/transport.js +283 -29
  45. package/dist/transport.js.map +1 -1
  46. package/dist/version.d.ts +1 -1
  47. package/dist/version.d.ts.map +1 -1
  48. package/dist/version.js +1 -1
  49. package/dist/version.js.map +1 -1
  50. package/package.json +1 -1
package/dist/transport.js CHANGED
@@ -7,6 +7,164 @@ const MAX_BACKGROUND_RPC_INFLIGHT = 8;
7
7
  const _noopLog = { error: () => { }, warn: () => { }, info: () => { }, debug: () => { } };
8
8
  /** RPC 请求递增计数器,避免 Date.now() 高并发碰撞 */
9
9
  let _rpcIdCounter = 0;
10
+ const WORKER_WEBSOCKET_SOURCE = `
11
+ let socket = null;
12
+ self.onmessage = (event) => {
13
+ const command = event.data || {};
14
+ if (command.type === 'connect') {
15
+ try {
16
+ socket = new WebSocket(command.url);
17
+ socket.onopen = () => self.postMessage({ type: 'open' });
18
+ socket.onmessage = (message) => self.postMessage({ type: 'message', data: message.data });
19
+ socket.onerror = () => self.postMessage({ type: 'error', message: 'websocket error' });
20
+ socket.onclose = (close) => self.postMessage({
21
+ type: 'close', code: close.code, reason: close.reason || '', wasClean: close.wasClean === true,
22
+ });
23
+ } catch (error) {
24
+ self.postMessage({ type: 'error', message: error instanceof Error ? error.message : String(error) });
25
+ }
26
+ return;
27
+ }
28
+ if (command.type === 'send') {
29
+ try {
30
+ if (!socket || socket.readyState !== WebSocket.OPEN) throw new Error('websocket is not open');
31
+ socket.send(command.data);
32
+ self.postMessage({ type: 'send_result', id: command.id, ok: true });
33
+ } catch (error) {
34
+ self.postMessage({
35
+ type: 'send_result', id: command.id, ok: false,
36
+ error: error instanceof Error ? error.message : String(error),
37
+ });
38
+ }
39
+ return;
40
+ }
41
+ if (command.type === 'close' && socket) socket.close(command.code, command.reason);
42
+ };
43
+ `;
44
+ class WorkerWebSocketProxy {
45
+ static CONNECTING = 0;
46
+ static OPEN = 1;
47
+ static CLOSING = 2;
48
+ static CLOSED = 3;
49
+ readyState = WorkerWebSocketProxy.CONNECTING;
50
+ onopen = null;
51
+ onmessage = null;
52
+ onerror = null;
53
+ onclose = null;
54
+ _worker;
55
+ _workerUrl;
56
+ _listeners = new Map();
57
+ _pendingSends = new Map();
58
+ _sendSeq = 0;
59
+ constructor(url) {
60
+ this._workerUrl = URL.createObjectURL(new Blob([WORKER_WEBSOCKET_SOURCE], { type: 'text/javascript' }));
61
+ try {
62
+ this._worker = new Worker(this._workerUrl);
63
+ }
64
+ catch (error) {
65
+ URL.revokeObjectURL(this._workerUrl);
66
+ throw error;
67
+ }
68
+ this._worker.onmessage = (event) => this._handleWorkerMessage(event.data);
69
+ this._worker.onerror = (event) => this._emitError(event.message || 'websocket worker error');
70
+ this._worker.postMessage({ type: 'connect', url });
71
+ }
72
+ send(data) {
73
+ if (this.readyState !== WorkerWebSocketProxy.OPEN)
74
+ return Promise.reject(new Error('websocket is not open'));
75
+ const id = ++this._sendSeq;
76
+ return new Promise((resolve, reject) => {
77
+ this._pendingSends.set(id, { resolve, reject });
78
+ try {
79
+ this._worker.postMessage({ type: 'send', id, data });
80
+ }
81
+ catch (error) {
82
+ this._pendingSends.delete(id);
83
+ reject(error instanceof Error ? error : new Error(String(error)));
84
+ }
85
+ });
86
+ }
87
+ close(code, reason) {
88
+ if (this.readyState === WorkerWebSocketProxy.CLOSED)
89
+ return;
90
+ this.readyState = WorkerWebSocketProxy.CLOSING;
91
+ this._worker.postMessage({ type: 'close', code, reason });
92
+ }
93
+ addEventListener(type, listener) {
94
+ const callback = typeof listener === 'function' ? listener : (event) => listener.handleEvent(event);
95
+ const listeners = this._listeners.get(type) ?? new Set();
96
+ listeners.add(callback);
97
+ this._listeners.set(type, listeners);
98
+ }
99
+ removeEventListener(type, listener) {
100
+ if (typeof listener === 'function')
101
+ this._listeners.get(type)?.delete(listener);
102
+ }
103
+ _handleWorkerMessage(reply) {
104
+ if (reply.type === 'send_result' && reply.id !== undefined) {
105
+ const pending = this._pendingSends.get(reply.id);
106
+ if (!pending)
107
+ return;
108
+ this._pendingSends.delete(reply.id);
109
+ if (reply.ok)
110
+ pending.resolve();
111
+ else
112
+ pending.reject(new Error(reply.error || 'websocket send failed'));
113
+ return;
114
+ }
115
+ if (reply.type === 'open') {
116
+ this.readyState = WorkerWebSocketProxy.OPEN;
117
+ const event = new Event('open');
118
+ this.onopen?.(event);
119
+ this._emit('open', event);
120
+ return;
121
+ }
122
+ if (reply.type === 'message') {
123
+ const event = new MessageEvent('message', { data: reply.data });
124
+ this.onmessage?.(event);
125
+ this._emit('message', event);
126
+ return;
127
+ }
128
+ if (reply.type === 'error') {
129
+ this._emitError(reply.message || 'websocket worker error');
130
+ return;
131
+ }
132
+ if (reply.type === 'close') {
133
+ this.readyState = WorkerWebSocketProxy.CLOSED;
134
+ for (const pending of this._pendingSends.values())
135
+ pending.reject(new Error('websocket closed'));
136
+ this._pendingSends.clear();
137
+ const event = new CloseEvent('close', {
138
+ code: reply.code ?? 1006, reason: reply.reason ?? '', wasClean: reply.wasClean === true,
139
+ });
140
+ this.onclose?.(event);
141
+ this._emit('close', event);
142
+ this._worker.terminate();
143
+ URL.revokeObjectURL(this._workerUrl);
144
+ }
145
+ }
146
+ _emitError(message) {
147
+ const event = new ErrorEvent('error', { message });
148
+ this.onerror?.(event);
149
+ this._emit('error', event);
150
+ }
151
+ _emit(type, event) {
152
+ for (const listener of [...(this._listeners.get(type) ?? [])])
153
+ listener(event);
154
+ }
155
+ }
156
+ export function createTransportWebSocket(url) {
157
+ if (typeof Worker === 'function' && typeof Blob === 'function' && typeof URL !== 'undefined'
158
+ && typeof URL.createObjectURL === 'function' && typeof URL.revokeObjectURL === 'function') {
159
+ try {
160
+ return new WorkerWebSocketProxy(url);
161
+ }
162
+ catch {
163
+ // Worker/CSP 不可用时保持原生 WebSocket 路径。
164
+ }
165
+ }
166
+ return new WebSocket(url);
167
+ }
10
168
  // ── Trace 树状展示 ─────────────────────────────────────────────
11
169
  const TRACE_SPAN_DETAIL_FIELDS = [
12
170
  'method', 'route', 'namespace', 'instance_id', 'aid', 'caller_aid',
@@ -260,6 +418,10 @@ export class RPCTransport {
260
418
  _traceMode = 'off';
261
419
  // Trace observer:observer(traceInfo) 在每次 RPC/事件携带 _trace 时调用
262
420
  _traceObserver = null;
421
+ // 每个 transport 实例一个轻量级网络 actor。命令只在此处启动网络操作,
422
+ // 不等待 RPC 响应,避免应用回调中的 send 反向占住收包路径。
423
+ _actorTail = Promise.resolve();
424
+ _actorBusy = false;
263
425
  constructor(opts) {
264
426
  this._dispatcher = opts.eventDispatcher;
265
427
  this._timeout = opts.timeout ?? 10;
@@ -287,18 +449,21 @@ export class RPCTransport {
287
449
  setMetaObserver(observer) {
288
450
  this._metaObserver = observer;
289
451
  }
290
- async _notifyMetaObserver(message) {
291
- if (this._metaObserver === null)
452
+ _notifyMetaObserver(message) {
453
+ const observer = this._metaObserver;
454
+ if (observer === null)
292
455
  return;
293
456
  const meta = message._meta;
294
457
  if (!isJsonObject(meta))
295
458
  return;
296
- try {
297
- await this._metaObserver(meta);
298
- }
299
- catch (exc) {
300
- this._log.debug(`meta_observer raised: ${String(exc)}`);
301
- }
459
+ this._dispatcher.enqueueTask(async () => {
460
+ try {
461
+ await observer(meta);
462
+ }
463
+ catch (exc) {
464
+ this._log.debug(`meta_observer raised: ${String(exc)}`);
465
+ }
466
+ });
302
467
  }
303
468
  /** 设置 trace 模式:off / log / diag */
304
469
  setTraceMode(mode) {
@@ -335,7 +500,10 @@ export class RPCTransport {
335
500
  * 连接到 WebSocket URL。
336
501
  * 等待首条消息,若为 challenge 则返回,否则进入消息路由。
337
502
  */
338
- async connect(url) {
503
+ connect(url) {
504
+ return this._enqueueActorStart(() => this._connectImpl(url));
505
+ }
506
+ async _connectImpl(url) {
339
507
  const tStart = Date.now();
340
508
  this._log.debug(`connect enter: url=${url}`);
341
509
  const setup = await this._withConnectionSetup(async () => {
@@ -345,7 +513,7 @@ export class RPCTransport {
345
513
  this._lastCloseCode = null;
346
514
  this._lastCloseReason = '';
347
515
  const handshake = new Promise((resolve, reject) => {
348
- const ws = new WebSocket(url);
516
+ const ws = createTransportWebSocket(url);
349
517
  this._ws = ws;
350
518
  this._closed = false;
351
519
  let initialResolved = false;
@@ -489,7 +657,10 @@ export class RPCTransport {
489
657
  return setup.handshake;
490
658
  }
491
659
  /** 关闭连接 */
492
- async close() {
660
+ close() {
661
+ return this._enqueueActor(() => this._closeImpl());
662
+ }
663
+ async _closeImpl() {
493
664
  await this._withConnectionSetup(() => this._closeUnlocked());
494
665
  }
495
666
  /** 已持有连接建立串行权时关闭当前 WebSocket。 */
@@ -566,7 +737,10 @@ export class RPCTransport {
566
737
  * 发起 JSON-RPC 2.0 调用。
567
738
  * 返回 result 字段的值;若有 error 字段则抛出映射后的错误。
568
739
  */
569
- async call(method, params, timeout, trace, background = false) {
740
+ call(method, params, timeout, trace, background = false) {
741
+ return this._enqueueActorStart(() => this._callImpl(method, params, timeout, trace, background), () => new TimeoutError(`rpc cancelled: ${method}`, { retryable: true }));
742
+ }
743
+ _callImpl(method, params, timeout, trace, background = false) {
570
744
  if (this._closed || !this._ws) {
571
745
  throw this._notConnectedError();
572
746
  }
@@ -612,7 +786,7 @@ export class RPCTransport {
612
786
  this._drainRpcQueue();
613
787
  }, effectiveTimeout);
614
788
  const pending = {
615
- resolve: async (response) => {
789
+ resolve: (response) => {
616
790
  clearTimeout(timer);
617
791
  const elapsed = Date.now() - tStart;
618
792
  if (response.error !== undefined) {
@@ -631,7 +805,7 @@ export class RPCTransport {
631
805
  if (traceId) {
632
806
  this._log.info(`[trace=${traceId}] rpc_recv method=${method} rpc_id=${rpcId} duration_ms=${elapsed} status=ok`);
633
807
  }
634
- await this._notifyMetaObserver(response);
808
+ this._notifyMetaObserver(response);
635
809
  // 处理 success 路径的 _trace
636
810
  const respTrace = response._trace;
637
811
  if (respTrace && typeof respTrace === 'object' && !Array.isArray(respTrace)) {
@@ -671,7 +845,10 @@ export class RPCTransport {
671
845
  return Object.assign(promise, { cancel: () => cancelRpc?.() });
672
846
  }
673
847
  /** 发送 JSON-RPC 2.0 Notification,不分配 id,也不等待响应。 */
674
- async notify(method, params) {
848
+ notify(method, params) {
849
+ return this._enqueueActorStart(() => this._notifyImpl(method, params));
850
+ }
851
+ async _notifyImpl(method, params) {
675
852
  if (this._closed || !this._ws) {
676
853
  throw this._notConnectedError();
677
854
  }
@@ -699,6 +876,63 @@ export class RPCTransport {
699
876
  this._sendChain = run.catch(() => { });
700
877
  return run;
701
878
  }
879
+ _enqueueActor(operation) {
880
+ this._actorBusy = true;
881
+ const run = this._actorTail.then(async () => {
882
+ return await operation();
883
+ }, async () => {
884
+ return await operation();
885
+ });
886
+ const tail = run.then(() => undefined, () => undefined);
887
+ this._actorTail = tail;
888
+ void tail.then(() => {
889
+ if (this._actorTail === tail)
890
+ this._actorBusy = false;
891
+ });
892
+ return run;
893
+ }
894
+ _enqueueActorStart(operation, cancellationError) {
895
+ let resolveResult;
896
+ let rejectResult;
897
+ const result = new Promise((resolve, reject) => { resolveResult = resolve; rejectResult = reject; });
898
+ let cancel;
899
+ let cancelRequested = false;
900
+ const launch = () => {
901
+ if (cancelRequested)
902
+ return;
903
+ try {
904
+ const inner = operation();
905
+ cancel = inner.cancel;
906
+ inner.then(resolveResult, rejectResult);
907
+ }
908
+ catch (err) {
909
+ rejectResult(err);
910
+ }
911
+ };
912
+ if (this._actorBusy) {
913
+ const gate = this._actorTail.then(launch, launch);
914
+ const tail = gate.then(() => undefined, () => undefined);
915
+ this._actorTail = tail;
916
+ void tail.then(() => {
917
+ if (this._actorTail === tail)
918
+ this._actorBusy = false;
919
+ });
920
+ }
921
+ else {
922
+ launch();
923
+ }
924
+ return Object.assign(result, {
925
+ cancel: () => {
926
+ if (cancelRequested)
927
+ return;
928
+ cancelRequested = true;
929
+ if (cancel)
930
+ cancel();
931
+ else
932
+ rejectResult(cancellationError?.() ?? new TimeoutError('rpc cancelled', { retryable: true }));
933
+ },
934
+ });
935
+ }
702
936
  _sendText(payload, context, beforeSend) {
703
937
  return this._enqueueSend(async () => {
704
938
  if (beforeSend && !beforeSend()) {
@@ -709,7 +943,7 @@ export class RPCTransport {
709
943
  }
710
944
  const ws = this._ws;
711
945
  try {
712
- ws.send(payload);
946
+ await Promise.resolve(ws.send(payload));
713
947
  }
714
948
  catch (err) {
715
949
  throw await this._sendFailureError(context, err, ws);
@@ -841,7 +1075,15 @@ export class RPCTransport {
841
1075
  const enriched = { ...respTrace, spans };
842
1076
  this._log.info(traceDisplay(method, status, elapsedMs, respTrace, spans));
843
1077
  if (this._traceObserver !== null) {
844
- this._traceObserver({ type: 'rpc', method, trace: enriched, status, duration_ms: elapsedMs });
1078
+ const observer = this._traceObserver;
1079
+ this._dispatcher.enqueueTask(async () => {
1080
+ try {
1081
+ await observer({ type: 'rpc', method, trace: enriched, status, duration_ms: elapsedMs });
1082
+ }
1083
+ catch (err) {
1084
+ this._log.debug(`trace observer raised: ${err instanceof Error ? err.message : String(err)}`);
1085
+ }
1086
+ });
845
1087
  }
846
1088
  }
847
1089
  catch (err) {
@@ -887,10 +1129,18 @@ export class RPCTransport {
887
1129
  // 非主动关闭时触发断线回调
888
1130
  if (!wasClosed) {
889
1131
  const error = new ConnectionError(`websocket closed: code=${event.code} reason=${event.reason}`);
890
- this._dispatcher.publish('connection.error', { error });
891
1132
  if (this._onDisconnect) {
892
- this._onDisconnect(error, event.code).catch(exc => this._log.warn('[aun_core.transport] disconnect callback exception:', exc));
1133
+ const onDisconnect = this._onDisconnect;
1134
+ this._dispatcher.enqueueTask(async () => {
1135
+ try {
1136
+ await onDisconnect(error, event.code);
1137
+ }
1138
+ catch (exc) {
1139
+ this._log.warn('[aun_core.transport] disconnect callback exception:', exc);
1140
+ }
1141
+ });
893
1142
  }
1143
+ this._dispatcher.enqueue('connection.error', { error });
894
1144
  }
895
1145
  }
896
1146
  _notConnectedError() {
@@ -922,7 +1172,7 @@ export class RPCTransport {
922
1172
  if (method === 'challenge') {
923
1173
  this._challenge = message;
924
1174
  this._log.debug('challenge received');
925
- this._dispatcher.publish('connection.challenge', message.params ?? {});
1175
+ this._dispatcher.enqueue('connection.challenge', message.params ?? {});
926
1176
  return;
927
1177
  }
928
1178
  // 事件推送
@@ -930,7 +1180,7 @@ export class RPCTransport {
930
1180
  const protocolEvent = method.slice(6);
931
1181
  const sdkEvent = EVENT_NAME_MAP[protocolEvent] ?? protocolEvent;
932
1182
  this._log.debug(`event recv: event=${sdkEvent} ${summarizeDict(message.params, DIAG_RESULT_FIELDS)}`);
933
- void this._notifyMetaObserver(message);
1183
+ this._notifyMetaObserver(message);
934
1184
  // 提取事件中的 _trace 并回调 observer,然后从 params 中剥离
935
1185
  const params = (message.params ?? {});
936
1186
  if ('_trace' in params) {
@@ -938,10 +1188,14 @@ export class RPCTransport {
938
1188
  delete params._trace;
939
1189
  if (eventTrace && typeof eventTrace === 'object' && !Array.isArray(eventTrace)) {
940
1190
  if (this._traceObserver !== null) {
941
- try {
942
- this._traceObserver({ type: 'event', event: sdkEvent, trace: eventTrace });
943
- }
944
- catch { /* observer 抛错被吞 */ }
1191
+ const observer = this._traceObserver;
1192
+ const tracePayload = eventTrace;
1193
+ this._dispatcher.enqueueTask(async () => {
1194
+ try {
1195
+ await observer({ type: 'event', event: sdkEvent, trace: tracePayload });
1196
+ }
1197
+ catch { /* observer 抛错被吞 */ }
1198
+ });
945
1199
  }
946
1200
  const traceObj = eventTrace;
947
1201
  this._log.info(`[trace=${String(traceObj.trace_id ?? '')}] event_recv event=${sdkEvent}`);
@@ -949,16 +1203,16 @@ export class RPCTransport {
949
1203
  }
950
1204
  // 发布为 _raw.{event},由 AUNClient 处理后再发布用户可见的事件
951
1205
  if (sdkEvent.startsWith('app.')) {
952
- this._dispatcher.publish(sdkEvent, params);
1206
+ this._dispatcher.enqueue(sdkEvent, params);
953
1207
  return;
954
1208
  }
955
- this._dispatcher.publish(`_raw.${sdkEvent}`, params);
1209
+ this._dispatcher.enqueue(`_raw.${sdkEvent}`, params);
956
1210
  return;
957
1211
  }
958
1212
  // 其他通知
959
- void this._notifyMetaObserver(message);
1213
+ this._notifyMetaObserver(message);
960
1214
  this._log.debug(`notification recv: method=${method || '<no-method>'}`);
961
- this._dispatcher.publish('notification', message);
1215
+ this._dispatcher.enqueue('notification', message);
962
1216
  }
963
1217
  _decodeMessage(raw) {
964
1218
  if (isJsonObject(raw)) {
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.5.9";
1
+ export declare const VERSION = "0.5.10";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,UAAU,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO,WAAW,CAAC"}
package/dist/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // AUN SDK 版本号(单一事实来源)。
2
2
  // 所有引用点(index.ts / auth.ts / v2/e2ee/encrypt-p2p.ts)统一从此导入,
3
3
  // 避免多处独立定义导致版本号不一致。
4
- export const VERSION = '0.5.9';
4
+ export const VERSION = '0.5.10';
5
5
  //# sourceMappingURL=version.js.map