@agentunion/fastaun 0.2.16 → 0.2.18

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 (56) hide show
  1. package/dist/auth.d.ts +3 -0
  2. package/dist/auth.js +314 -217
  3. package/dist/auth.js.map +1 -1
  4. package/dist/client.d.ts +7 -0
  5. package/dist/client.js +1137 -740
  6. package/dist/client.js.map +1 -1
  7. package/dist/config.d.ts +2 -0
  8. package/dist/config.js +2 -0
  9. package/dist/config.js.map +1 -1
  10. package/dist/discovery.d.ts +3 -0
  11. package/dist/discovery.js +29 -2
  12. package/dist/discovery.js.map +1 -1
  13. package/dist/e2ee-group.d.ts +7 -2
  14. package/dist/e2ee-group.js +216 -61
  15. package/dist/e2ee-group.js.map +1 -1
  16. package/dist/e2ee.d.ts +3 -0
  17. package/dist/e2ee.js +34 -11
  18. package/dist/e2ee.js.map +1 -1
  19. package/dist/events.d.ts +3 -0
  20. package/dist/events.js +11 -1
  21. package/dist/events.js.map +1 -1
  22. package/dist/group-id.d.ts +23 -0
  23. package/dist/group-id.js +94 -0
  24. package/dist/group-id.js.map +1 -0
  25. package/dist/keystore/aid-db.d.ts +8 -1
  26. package/dist/keystore/aid-db.js +14 -3
  27. package/dist/keystore/aid-db.js.map +1 -1
  28. package/dist/keystore/file.d.ts +5 -0
  29. package/dist/keystore/file.js +19 -10
  30. package/dist/keystore/file.js.map +1 -1
  31. package/dist/keystore/index.d.ts +2 -0
  32. package/dist/keystore/sqlite-backup.d.ts +5 -1
  33. package/dist/keystore/sqlite-backup.js +9 -6
  34. package/dist/keystore/sqlite-backup.js.map +1 -1
  35. package/dist/logger.d.ts +28 -3
  36. package/dist/logger.js +170 -37
  37. package/dist/logger.js.map +1 -1
  38. package/dist/namespaces/auth.d.ts +1 -0
  39. package/dist/namespaces/auth.js +289 -146
  40. package/dist/namespaces/auth.js.map +1 -1
  41. package/dist/namespaces/custody.d.ts +1 -0
  42. package/dist/namespaces/custody.js +138 -56
  43. package/dist/namespaces/custody.js.map +1 -1
  44. package/dist/namespaces/meta.d.ts +1 -0
  45. package/dist/namespaces/meta.js +26 -0
  46. package/dist/namespaces/meta.js.map +1 -1
  47. package/dist/secret-store/file-store.d.ts +4 -0
  48. package/dist/secret-store/file-store.js +7 -3
  49. package/dist/secret-store/file-store.js.map +1 -1
  50. package/dist/secret-store/index.d.ts +3 -0
  51. package/dist/secret-store/index.js +2 -2
  52. package/dist/secret-store/index.js.map +1 -1
  53. package/dist/transport.d.ts +3 -0
  54. package/dist/transport.js +91 -2
  55. package/dist/transport.js.map +1 -1
  56. package/package.json +1 -1
package/dist/config.d.ts CHANGED
@@ -36,6 +36,8 @@ export interface AUNConfig {
36
36
  requireForwardSecrecy: boolean;
37
37
  /** 防重放窗口(秒) */
38
38
  replayWindowSeconds: number;
39
+ /** 是否启用 debug 模式(DEBUG 级别输出 + 文件日志) */
40
+ debug: boolean;
39
41
  }
40
42
  /** 返回默认配置 */
41
43
  export declare function defaultConfig(): AUNConfig;
package/dist/config.js CHANGED
@@ -93,6 +93,7 @@ export function defaultConfig() {
93
93
  verifySsl: resolveVerifySslFromEnv(),
94
94
  requireForwardSecrecy: true,
95
95
  replayWindowSeconds: 300,
96
+ debug: false,
96
97
  };
97
98
  }
98
99
  // ── 从字典构建配置 ───────────────────────────────────────────
@@ -114,6 +115,7 @@ export function configFromMap(raw) {
114
115
  verifySsl: readBoolean(raw.verify_ssl ?? raw.verifySSL ?? raw.verifySsl, def.verifySsl),
115
116
  requireForwardSecrecy: readBoolean(raw.require_forward_secrecy ?? raw.requireForwardSecrecy, def.requireForwardSecrecy),
116
117
  replayWindowSeconds: readOptionalNumber(raw.replay_window_seconds ?? raw.replayWindowSeconds, def.replayWindowSeconds) ?? def.replayWindowSeconds,
118
+ debug: readBoolean(raw.debug, def.debug),
117
119
  };
118
120
  }
119
121
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
+ import type { ModuleLogger } from './logger.js';
1
2
  export declare class GatewayDiscovery {
2
3
  private _verifySsl;
3
4
  private _lastHealthy;
5
+ private _logger;
4
6
  constructor(opts?: {
5
7
  verifySsl?: boolean;
8
+ logger?: ModuleLogger;
6
9
  });
7
10
  /** 最近一次 health check 结果,null 表示尚未检查 */
8
11
  get lastHealthy(): boolean | null;
package/dist/discovery.js CHANGED
@@ -2,6 +2,7 @@ import * as http from 'node:http';
2
2
  import * as https from 'node:https';
3
3
  import { ConnectionError, ValidationError } from './errors.js';
4
4
  import { isJsonObject } from './types.js';
5
+ const _noopLogger = { error: () => { }, warn: () => { }, info: () => { }, debug: () => { } };
5
6
  function _httpGetJson(url, verifySsl, timeout) {
6
7
  return new Promise((resolve, reject) => {
7
8
  const parsed = new URL(url);
@@ -54,8 +55,10 @@ function _httpGetOk(url, verifySsl, timeout) {
54
55
  export class GatewayDiscovery {
55
56
  _verifySsl;
56
57
  _lastHealthy = null;
58
+ _logger;
57
59
  constructor(opts) {
58
60
  this._verifySsl = opts?.verifySsl ?? true;
61
+ this._logger = opts?.logger ?? _noopLogger;
59
62
  }
60
63
  /** 最近一次 health check 结果,null 表示尚未检查 */
61
64
  get lastHealthy() { return this._lastHealthy; }
@@ -64,14 +67,29 @@ export class GatewayDiscovery {
64
67
  * 结果缓存到 lastHealthy,同时返回检查结果。
65
68
  */
66
69
  async checkHealth(gatewayUrl, timeout = 5_000) {
70
+ const tStart = Date.now();
67
71
  const parsed = new URL(gatewayUrl);
68
72
  parsed.protocol = parsed.protocol === 'wss:' ? 'https:' : 'http:';
69
73
  parsed.pathname = '/health';
70
74
  parsed.search = '';
71
75
  parsed.hash = '';
72
76
  const healthUrl = parsed.toString();
73
- this._lastHealthy = await _httpGetOk(healthUrl, this._verifySsl, timeout);
74
- return this._lastHealthy;
77
+ this._logger.debug(`checkHealth enter: url=${healthUrl}`);
78
+ try {
79
+ this._lastHealthy = await _httpGetOk(healthUrl, this._verifySsl, timeout);
80
+ if (this._lastHealthy) {
81
+ this._logger.debug(`checkHealth exit: elapsed=${Date.now() - tStart}ms healthy=true url=${healthUrl}`);
82
+ }
83
+ else {
84
+ this._logger.warn(`health check failed: url=${healthUrl}`);
85
+ this._logger.debug(`checkHealth exit: elapsed=${Date.now() - tStart}ms healthy=false url=${healthUrl}`);
86
+ }
87
+ return this._lastHealthy;
88
+ }
89
+ catch (err) {
90
+ this._logger.debug(`checkHealth exit (error): elapsed=${Date.now() - tStart}ms err=${err instanceof Error ? err.message : String(err)}`);
91
+ throw err;
92
+ }
75
93
  }
76
94
  /**
77
95
  * 从 well-known URL 发现 Gateway。
@@ -81,6 +99,8 @@ export class GatewayDiscovery {
81
99
  * @returns Gateway WebSocket URL
82
100
  */
83
101
  async discover(wellKnownUrl, timeout = 5_000) {
102
+ const tStart = Date.now();
103
+ this._logger.debug(`discover enter: url=${wellKnownUrl}`);
84
104
  let payload;
85
105
  try {
86
106
  const rawPayload = await _httpGetJson(wellKnownUrl, this._verifySsl, timeout);
@@ -90,18 +110,25 @@ export class GatewayDiscovery {
90
110
  payload = rawPayload;
91
111
  }
92
112
  catch (err) {
113
+ this._logger.error(`gateway discover failed: url=${wellKnownUrl}, error=${err instanceof Error ? err.message : String(err)}`);
114
+ this._logger.debug(`discover exit (error): elapsed=${Date.now() - tStart}ms err=${err instanceof Error ? err.message : String(err)}`);
93
115
  throw new ConnectionError(`gateway discovery failed for ${wellKnownUrl}: ${err instanceof Error ? err.message : String(err)}`, { retryable: true });
94
116
  }
95
117
  const gateways = payload.gateways;
96
118
  if (!Array.isArray(gateways) || gateways.length === 0) {
119
+ this._logger.error(`gateway discover returned empty list: url=${wellKnownUrl}`);
120
+ this._logger.debug(`discover exit (error): elapsed=${Date.now() - tStart}ms err=empty_gateways`);
97
121
  throw new ValidationError('well-known returned empty gateways');
98
122
  }
99
123
  // 按 priority 排序(数值越小优先级越高)
100
124
  const sorted = [...gateways].sort((a, b) => (Number(a.priority ?? 999)) - (Number(b.priority ?? 999)));
101
125
  const url = sorted[0]?.url;
102
126
  if (!url || typeof url !== 'string') {
127
+ this._logger.error(`gateway discover missing url field: wellKnown=${wellKnownUrl}`);
128
+ this._logger.debug(`discover exit (error): elapsed=${Date.now() - tStart}ms err=missing_url`);
103
129
  throw new ValidationError('well-known missing gateway url');
104
130
  }
131
+ this._logger.debug(`discover exit: elapsed=${Date.now() - tStart}ms gateway=${url}, candidates=${gateways.length}`);
105
132
  // 发现后自动检查网关可用性(不阻塞,失败不影响返回)
106
133
  this.checkHealth(url, timeout).catch(() => { });
107
134
  return url;
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../src/discovery.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@
7
7
  import type { KeyStore } from './keystore/index.js';
8
8
  import type { ProtectedHeadersInput } from './e2ee.js';
9
9
  import { type IdentityRecord, type JsonObject, type Message } from './types.js';
10
+ import type { ModuleLogger } from './logger.js';
10
11
  export interface LoadedGroupSecret {
11
12
  epoch: number;
12
13
  secret: Buffer;
@@ -64,6 +65,7 @@ export declare function encryptGroupMessage(groupId: string, epoch: number, grou
64
65
  */
65
66
  export declare function decryptGroupMessage(message: Message, groupSecrets: Map<number, Buffer>, senderCertPem?: string | null, opts?: {
66
67
  requireSignature?: boolean;
68
+ logger?: ModuleLogger;
67
69
  }): Message | null;
68
70
  /**
69
71
  * 计算 Membership Commitment。
@@ -145,17 +147,18 @@ export declare function generateGroupSecret(): Buffer;
145
147
  /** 构建 group key 分发消息 payload */
146
148
  export declare function buildKeyDistribution(groupId: string, epoch: number, groupSecret: Buffer, memberAids: string[], distributedBy: string, manifest?: JsonObject | null, epochChain?: string): JsonObject;
147
149
  /** 处理收到的 group key 分发消息 */
148
- export declare function handleKeyDistribution(message: Message | JsonObject, keystore: KeyStore, aid: string, initiatorCertPem?: string | null): boolean;
150
+ export declare function handleKeyDistribution(message: Message | JsonObject, keystore: KeyStore, aid: string, initiatorCertPem?: string | null, logger?: ModuleLogger): boolean;
149
151
  /** 构建密钥请求 payload */
150
152
  export declare function buildKeyRequest(groupId: string, epoch: number, requesterAid: string, requestId?: string): JsonObject;
151
153
  /** 处理收到的密钥请求 */
152
- export declare function handleKeyRequest(request: Message | JsonObject, keystore: KeyStore, aid: string, currentMembers: string[], privateKeyPem?: string | null): JsonObject | null;
154
+ export declare function handleKeyRequest(request: Message | JsonObject, keystore: KeyStore, aid: string, currentMembers: string[], privateKeyPem?: string | null, logger?: ModuleLogger): JsonObject | null;
153
155
  /** 处理收到的密钥响应 */
154
156
  export declare function handleKeyResponse(response: Message | JsonObject, keystore: KeyStore, aid: string, opts?: {
155
157
  expectedRequest?: JsonObject | null;
156
158
  responderCertPem?: string | null;
157
159
  currentMembers?: string[];
158
160
  strict?: boolean;
161
+ logger?: ModuleLogger;
159
162
  }): boolean;
160
163
  export declare class GroupE2EEManager {
161
164
  private _identityFn;
@@ -166,6 +169,7 @@ export declare class GroupE2EEManager {
166
169
  private _senderCertResolver;
167
170
  private _initiatorCertResolver;
168
171
  private _pendingKeyRequests;
172
+ private _logger;
169
173
  constructor(opts: {
170
174
  identityFn: () => IdentityRecord;
171
175
  keystore: KeyStore;
@@ -173,6 +177,7 @@ export declare class GroupE2EEManager {
173
177
  responseCooldown?: number;
174
178
  senderCertResolver?: (aid: string) => string | null;
175
179
  initiatorCertResolver?: (aid: string) => string | null;
180
+ logger?: ModuleLogger;
176
181
  });
177
182
  /** 用当前身份私钥签名 manifest */
178
183
  private _signManifest;