@defai.digital/ax-cli 3.10.0 → 3.10.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 (44) hide show
  1. package/README.md +12 -1
  2. package/config-defaults/settings.yaml +6 -0
  3. package/dist/agent/llm-agent.d.ts +2 -0
  4. package/dist/agent/llm-agent.js +26 -5
  5. package/dist/agent/llm-agent.js.map +1 -1
  6. package/dist/agent/streaming/stream-handler.js +6 -3
  7. package/dist/agent/streaming/stream-handler.js.map +1 -1
  8. package/dist/analyzers/dependency/circular-detector.js +7 -5
  9. package/dist/analyzers/dependency/circular-detector.js.map +1 -1
  10. package/dist/commands/cache.js +7 -0
  11. package/dist/commands/cache.js.map +1 -1
  12. package/dist/ipc/vscode-client.d.ts +5 -0
  13. package/dist/ipc/vscode-client.js +55 -12
  14. package/dist/ipc/vscode-client.js.map +1 -1
  15. package/dist/llm/client.js +29 -6
  16. package/dist/llm/client.js.map +1 -1
  17. package/dist/llm/tools.d.ts +3 -0
  18. package/dist/llm/tools.js +51 -12
  19. package/dist/llm/tools.js.map +1 -1
  20. package/dist/mcp/content-length-transport.d.ts +2 -0
  21. package/dist/mcp/content-length-transport.js +11 -5
  22. package/dist/mcp/content-length-transport.js.map +1 -1
  23. package/dist/mcp/health.d.ts +1 -1
  24. package/dist/mcp/health.js +5 -4
  25. package/dist/mcp/health.js.map +1 -1
  26. package/dist/tools/confirmation-tool.js +4 -1
  27. package/dist/tools/confirmation-tool.js.map +1 -1
  28. package/dist/tools/text-editor.js +13 -0
  29. package/dist/tools/text-editor.js.map +1 -1
  30. package/dist/ui/components/chat-history.js +53 -5
  31. package/dist/ui/components/chat-history.js.map +1 -1
  32. package/dist/ui/components/chat-interface.js +1 -0
  33. package/dist/ui/components/chat-interface.js.map +1 -1
  34. package/dist/ui/hooks/use-enhanced-input.js +46 -23
  35. package/dist/ui/hooks/use-enhanced-input.js.map +1 -1
  36. package/dist/ui/hooks/use-input-handler.js +2 -0
  37. package/dist/ui/hooks/use-input-handler.js.map +1 -1
  38. package/dist/ui/hooks/use-input-history.js +10 -3
  39. package/dist/ui/hooks/use-input-history.js.map +1 -1
  40. package/dist/utils/command-security.js +10 -0
  41. package/dist/utils/command-security.js.map +1 -1
  42. package/dist/utils/file-cache.js +12 -3
  43. package/dist/utils/file-cache.js.map +1 -1
  44. package/package.json +1 -1
@@ -22,6 +22,7 @@ export class VSCodeIPCClient extends EventEmitter {
22
22
  port = 0;
23
23
  connected = false;
24
24
  connecting = false;
25
+ disconnecting = false; // BUG FIX: Prevent race between disconnect() and handleDisconnect()
25
26
  pendingRequests = new Map();
26
27
  requestCounter = 0;
27
28
  constructor() {
@@ -110,17 +111,26 @@ export class VSCodeIPCClient extends EventEmitter {
110
111
  }
111
112
  /**
112
113
  * Handle disconnection
114
+ * BUG FIX: Added guard against concurrent execution with disconnect()
113
115
  */
114
116
  handleDisconnect() {
117
+ // Prevent race condition with disconnect() method
118
+ if (this.disconnecting)
119
+ return;
115
120
  const wasConnected = this.connected;
116
121
  this.connected = false;
117
122
  this.ws = null;
118
- // Reject all pending requests
119
- for (const [, pending] of this.pendingRequests) {
123
+ // Reject all pending requests - make a copy to avoid mutation during iteration
124
+ const pendingCopy = Array.from(this.pendingRequests.entries());
125
+ this.pendingRequests.clear();
126
+ for (const [, pending] of pendingCopy) {
120
127
  clearTimeout(pending.timeout);
121
- pending.reject(new Error('Connection closed'));
128
+ // BUG FIX: Check if already resolved before rejecting
129
+ if (!pending.resolved) {
130
+ pending.resolved = true;
131
+ pending.reject(new Error('Connection closed'));
132
+ }
122
133
  }
123
- this.pendingRequests.clear();
124
134
  if (wasConnected) {
125
135
  // Don't log to console - would interfere with TUI
126
136
  this.emit('disconnected');
@@ -128,13 +138,18 @@ export class VSCodeIPCClient extends EventEmitter {
128
138
  }
129
139
  /**
130
140
  * Handle incoming response
141
+ * BUG FIX: Check if already resolved to prevent double-resolution race condition
131
142
  */
132
143
  handleResponse(response) {
133
144
  const pending = this.pendingRequests.get(response.requestId);
134
145
  if (pending) {
135
146
  clearTimeout(pending.timeout);
136
147
  this.pendingRequests.delete(response.requestId);
137
- pending.resolve(response);
148
+ // BUG FIX: Only resolve if not already resolved (e.g., by timeout)
149
+ if (!pending.resolved) {
150
+ pending.resolved = true;
151
+ pending.resolve(response);
152
+ }
138
153
  }
139
154
  }
140
155
  /**
@@ -222,6 +237,7 @@ export class VSCodeIPCClient extends EventEmitter {
222
237
  }
223
238
  /**
224
239
  * Send request and wait for response
240
+ * BUG FIX: Use resolved flag to prevent race condition between timeout and actual response
225
241
  */
226
242
  sendRequest(message) {
227
243
  return new Promise((resolve, reject) => {
@@ -229,12 +245,24 @@ export class VSCodeIPCClient extends EventEmitter {
229
245
  reject(new Error('Not connected'));
230
246
  return;
231
247
  }
248
+ // BUG FIX: Create pending request object with resolved flag
249
+ const pendingRequest = {
250
+ resolve,
251
+ reject,
252
+ timeout: null, // Will be set below
253
+ resolved: false
254
+ };
232
255
  const timeout = setTimeout(() => {
233
256
  this.pendingRequests.delete(message.requestId);
234
- // On timeout, auto-approve to not block forever
235
- resolve({ type: 'approved', requestId: message.requestId });
257
+ // BUG FIX: Only resolve if not already resolved by actual response
258
+ if (!pendingRequest.resolved) {
259
+ pendingRequest.resolved = true;
260
+ // On timeout, auto-approve to not block forever
261
+ resolve({ type: 'approved', requestId: message.requestId });
262
+ }
236
263
  }, REQUEST_TIMEOUT);
237
- this.pendingRequests.set(message.requestId, { resolve, reject, timeout });
264
+ pendingRequest.timeout = timeout;
265
+ this.pendingRequests.set(message.requestId, pendingRequest);
238
266
  try {
239
267
  this.ws.send(JSON.stringify(message));
240
268
  }
@@ -242,7 +270,11 @@ export class VSCodeIPCClient extends EventEmitter {
242
270
  // Send failed - clean up and reject
243
271
  clearTimeout(timeout);
244
272
  this.pendingRequests.delete(message.requestId);
245
- reject(new Error('Failed to send message'));
273
+ // BUG FIX: Check resolved flag before rejecting
274
+ if (!pendingRequest.resolved) {
275
+ pendingRequest.resolved = true;
276
+ reject(new Error('Failed to send message'));
277
+ }
246
278
  }
247
279
  });
248
280
  }
@@ -290,8 +322,11 @@ export class VSCodeIPCClient extends EventEmitter {
290
322
  }
291
323
  /**
292
324
  * Disconnect from server
325
+ * BUG FIX: Use disconnecting flag to prevent race with handleDisconnect()
293
326
  */
294
327
  disconnect() {
328
+ // Set flag to prevent handleDisconnect from running concurrently
329
+ this.disconnecting = true;
295
330
  if (this.ws) {
296
331
  // BUG FIX: Remove all listeners before closing to prevent memory leak
297
332
  this.ws.removeAllListeners('open');
@@ -303,11 +338,19 @@ export class VSCodeIPCClient extends EventEmitter {
303
338
  }
304
339
  this.connected = false;
305
340
  this.connecting = false;
306
- // Clear pending request timeouts to prevent memory leaks
307
- for (const [, pending] of this.pendingRequests) {
341
+ // Clear pending request timeouts and reject - make copy to avoid mutation during iteration
342
+ const pendingCopy = Array.from(this.pendingRequests.entries());
343
+ this.pendingRequests.clear();
344
+ for (const [, pending] of pendingCopy) {
308
345
  clearTimeout(pending.timeout);
346
+ // BUG FIX: Check resolved flag before rejecting
347
+ if (!pending.resolved) {
348
+ pending.resolved = true;
349
+ pending.reject(new Error('Disconnected'));
350
+ }
309
351
  }
310
- this.pendingRequests.clear();
352
+ // Reset flag after cleanup
353
+ this.disconnecting = false;
311
354
  }
312
355
  /**
313
356
  * Ping server to check connection
@@ -1 +1 @@
1
- {"version":3,"file":"vscode-client.js","sourceRoot":"","sources":["../../src/ipc/vscode-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vscode-client.js","sourceRoot":"","sources":["../../src/ipc/vscode-client.ts"],"names":[],"mappings":"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"}
@@ -418,12 +418,18 @@ export class LLMClient {
418
418
  const statsCollector = getStatsCollector();
419
419
  statsCollector.recordResponse(promptTokens, cachedTokens);
420
420
  }
421
- catch {
422
- // Silently ignore stats recording errors
421
+ catch (err) {
422
+ // BUG FIX: Log error instead of silently ignoring for debuggability
423
+ if (process.env.DEBUG) {
424
+ console.warn('Failed to record memory stats:', err);
425
+ }
423
426
  }
424
427
  })
425
- .catch(() => {
426
- // Silently ignore if memory module not available
428
+ .catch((err) => {
429
+ // BUG FIX: Log error instead of silently ignoring for debuggability
430
+ if (process.env.DEBUG) {
431
+ console.warn('Memory module not available:', err);
432
+ }
427
433
  });
428
434
  }
429
435
  }
@@ -536,13 +542,23 @@ export class LLMClient {
536
542
  const streamGenerator = () => {
537
543
  const attemptController = new AbortController();
538
544
  const onMasterAbort = () => attemptController.abort(masterController.signal.reason);
545
+ // BUG FIX: Track listener state to ensure cleanup even if generator is never consumed
546
+ let listenerAttached = false;
539
547
  if (masterController.signal.aborted) {
540
548
  attemptController.abort(masterController.signal.reason);
541
549
  }
542
550
  else {
543
551
  masterController.signal.addEventListener('abort', onMasterAbort, { once: true });
552
+ listenerAttached = true;
544
553
  }
545
- return (async function* () {
554
+ // BUG FIX: Helper to safely remove listener
555
+ const cleanupListener = () => {
556
+ if (listenerAttached) {
557
+ masterController.signal.removeEventListener('abort', onMasterAbort);
558
+ listenerAttached = false;
559
+ }
560
+ };
561
+ const generator = (async function* () {
546
562
  let firstChunkTimer;
547
563
  let idleTimer;
548
564
  let chunksProcessed = 0;
@@ -592,9 +608,16 @@ export class LLMClient {
592
608
  if (idleTimer) {
593
609
  clearTimeout(idleTimer);
594
610
  }
595
- masterController.signal.removeEventListener('abort', onMasterAbort);
611
+ cleanupListener();
596
612
  }
597
613
  })();
614
+ // BUG FIX: Use FinalizationRegistry to clean up listener if generator is GC'd without being consumed
615
+ // This is a safety net - proper usage should always iterate the generator
616
+ if (typeof FinalizationRegistry !== 'undefined') {
617
+ const registry = new FinalizationRegistry(cleanupListener);
618
+ registry.register(generator, undefined);
619
+ }
620
+ return generator;
598
621
  };
599
622
  for await (const chunk of retryStreamWithBackoff(streamGenerator, {
600
623
  onRetry: (attempt, error, delayMs) => {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/llm/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/llm/client.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ export declare const GROK_TOOLS: LLMTool[];
8
8
  export declare const LLM_TOOLS: LLMTool[];
9
9
  /**
10
10
  * Get or create the MCP manager singleton
11
+ * BUG FIX: Added initializing flag to prevent duplicate instance creation
12
+ * during concurrent access
11
13
  */
12
14
  export declare function getMCPManager(): MCPManager;
13
15
  /**
@@ -17,6 +19,7 @@ export declare function getMCPManager(): MCPManager;
17
19
  export declare function getMcpConnectionCount(): number;
18
20
  /**
19
21
  * Initialize MCP servers from config
22
+ * BUG FIX: Use reference-counted stderr suppression to handle concurrent calls
20
23
  */
21
24
  export declare function initializeMCPServers(): Promise<void>;
22
25
  /**
package/dist/llm/tools.js CHANGED
@@ -377,13 +377,33 @@ const BASE_LLM_TOOLS = [
377
377
  export const GROK_TOOLS = [...BASE_LLM_TOOLS];
378
378
  export const LLM_TOOLS = GROK_TOOLS; // Preferred name
379
379
  // Global MCP manager instance (singleton pattern)
380
+ // BUG FIX: Use synchronous initialization flag to prevent race condition
380
381
  let mcpManager = null;
382
+ let mcpManagerInitializing = false;
381
383
  /**
382
384
  * Get or create the MCP manager singleton
385
+ * BUG FIX: Added initializing flag to prevent duplicate instance creation
386
+ * during concurrent access
383
387
  */
384
388
  export function getMCPManager() {
385
389
  if (!mcpManager) {
386
- mcpManager = new MCPManager();
390
+ // Double-check with initializing flag to prevent race condition
391
+ if (mcpManagerInitializing) {
392
+ // Another call is initializing, spin-wait (rare in practice)
393
+ // This is acceptable since MCPManager construction is synchronous and fast
394
+ while (mcpManagerInitializing && !mcpManager) {
395
+ // Busy wait - this should be extremely rare and brief
396
+ }
397
+ if (mcpManager)
398
+ return mcpManager;
399
+ }
400
+ mcpManagerInitializing = true;
401
+ try {
402
+ mcpManager = new MCPManager();
403
+ }
404
+ finally {
405
+ mcpManagerInitializing = false;
406
+ }
387
407
  }
388
408
  return mcpManager;
389
409
  }
@@ -402,22 +422,41 @@ function shouldSuppressMcpLog(message) {
402
422
  return false;
403
423
  return MCP_SUPPRESSED_LOG_PATTERNS.some(pattern => message.includes(pattern));
404
424
  }
425
+ // BUG FIX: Use reference counting for stderr suppression to handle concurrent calls
426
+ let stderrSuppressionCount = 0;
427
+ let originalStderrWrite = null;
428
+ function enableStderrSuppression() {
429
+ stderrSuppressionCount++;
430
+ if (stderrSuppressionCount === 1) {
431
+ // First caller - install the suppression
432
+ originalStderrWrite = process.stderr.write.bind(process.stderr);
433
+ process.stderr.write = function (chunk, encoding, callback) {
434
+ if (shouldSuppressMcpLog(chunk.toString())) {
435
+ if (callback)
436
+ callback();
437
+ return true;
438
+ }
439
+ return originalStderrWrite.call(this, chunk, encoding, callback);
440
+ };
441
+ }
442
+ }
443
+ function disableStderrSuppression() {
444
+ stderrSuppressionCount--;
445
+ if (stderrSuppressionCount === 0 && originalStderrWrite) {
446
+ // Last caller - restore original
447
+ process.stderr.write = originalStderrWrite;
448
+ originalStderrWrite = null;
449
+ }
450
+ }
405
451
  /**
406
452
  * Initialize MCP servers from config
453
+ * BUG FIX: Use reference-counted stderr suppression to handle concurrent calls
407
454
  */
408
455
  export async function initializeMCPServers() {
409
456
  const manager = getMCPManager();
410
457
  const config = loadMCPConfig();
411
- // Temporarily suppress verbose MCP connection logs
412
- const originalStderrWrite = process.stderr.write;
413
- process.stderr.write = function (chunk, encoding, callback) {
414
- if (shouldSuppressMcpLog(chunk.toString())) {
415
- if (callback)
416
- callback();
417
- return true;
418
- }
419
- return originalStderrWrite.call(this, chunk, encoding, callback);
420
- };
458
+ // Temporarily suppress verbose MCP connection logs (reference counted)
459
+ enableStderrSuppression();
421
460
  try {
422
461
  for (const serverConfig of config.servers) {
423
462
  try {
@@ -429,7 +468,7 @@ export async function initializeMCPServers() {
429
468
  }
430
469
  }
431
470
  finally {
432
- process.stderr.write = originalStderrWrite;
471
+ disableStderrSuppression();
433
472
  }
434
473
  }
435
474
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/llm/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/llm/tools.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,8 @@ export declare class ContentLengthStdioTransport extends EventEmitter implements
54
54
  private readMessage;
55
55
  /**
56
56
  * Send a message with Content-Length framing
57
+ * BUG FIX: Only resolve when write callback completes, not when write() returns true
58
+ * This ensures the message was actually transmitted, not just buffered
57
59
  */
58
60
  send(message: JSONRPCMessage): Promise<void>;
59
61
  /**
@@ -137,6 +137,8 @@ export class ContentLengthStdioTransport extends EventEmitter {
137
137
  }
138
138
  /**
139
139
  * Send a message with Content-Length framing
140
+ * BUG FIX: Only resolve when write callback completes, not when write() returns true
141
+ * This ensures the message was actually transmitted, not just buffered
140
142
  */
141
143
  send(message) {
142
144
  return new Promise((resolve, reject) => {
@@ -149,8 +151,13 @@ export class ContentLengthStdioTransport extends EventEmitter {
149
151
  const contentLength = Buffer.byteLength(body, "utf8");
150
152
  // Format with Content-Length header
151
153
  const framed = `Content-Length: ${contentLength}\r\n\r\n${body}`;
152
- // Write to stdin
153
- const success = this.process.stdin.write(framed, (error) => {
154
+ // BUG FIX: Track if already resolved to prevent double-resolution
155
+ let resolved = false;
156
+ // Write to stdin - only resolve on callback completion
157
+ this.process.stdin.write(framed, (error) => {
158
+ if (resolved)
159
+ return; // Prevent double-resolution
160
+ resolved = true;
154
161
  if (error) {
155
162
  reject(error);
156
163
  }
@@ -158,9 +165,8 @@ export class ContentLengthStdioTransport extends EventEmitter {
158
165
  resolve();
159
166
  }
160
167
  });
161
- if (success) {
162
- resolve();
163
- }
168
+ // BUG FIX: Removed early resolve on success=true
169
+ // The callback ensures the write completed, not just that it was buffered
164
170
  });
165
171
  }
166
172
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"content-length-transport.js","sourceRoot":"","sources":["../../src/mcp/content-length-transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,EAAgB,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAkB,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAYtC;;;;;;;;;GASG;AACH,MAAM,OAAO,2BAA4B,SAAQ,YAAY;IACnD,OAAO,CAAgB;IACvB,MAAM,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,CAA2B;IACjC,QAAQ,GAAG,KAAK,CAAC;IAEzB,wDAAwD;IACxD,SAAS,CAAqC;IAC9C,OAAO,CAA0B;IACjC,OAAO,CAAc;IAErB,YAAY,MAAgC;QAC1C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QAErB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC;gBACH,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,EAAE;oBAChE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,+BAA+B;oBACnE,GAAG,EAAE;wBACH,GAAG,OAAO,CAAC,GAAG;wBACd,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG;qBACnB;oBACD,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;iBACrB,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;oBACtB,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBAC5B,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;oBAChC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;oBACjB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC3B,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;oBAChD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBACzB,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACzC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACxC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC,CAAC,CAAC;YAEL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,KAAa;QAC9B,mBAAmB;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAElD,0CAA0C;QAC1C,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO;gBAAE,MAAM;YAEpB,IAAI,CAAC;gBACH,4BAA4B;gBAC5B,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACnD,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,WAAW;QACjB,iCAAiC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,SAAS,KAAK,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAElC,gBAAgB;QAChB,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QACjE,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAE3E,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,4CAA4C;YAC5C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAClD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,aAAa,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,YAAY,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,gBAAgB;QACpD,MAAM,UAAU,GAAG,YAAY,GAAG,aAAa,CAAC;QAEhD,wCAAwC;QACxC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,CAAC,qBAAqB;QACpC,CAAC;QAED,kBAAkB;QAClB,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAElD,oCAAoC;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAE/C,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,OAAuB;QAC1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;gBACnC,OAAO;YACT,CAAC;YAED,oBAAoB;YACpB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAEtD,oCAAoC;YACpC,MAAM,MAAM,GAAG,mBAAmB,aAAa,WAAW,IAAI,EAAE,CAAC;YAEjE,iBAAiB;YACjB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzD,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC;IAC3B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAgC;IAC3E,OAAO,IAAI,2BAA2B,CAAC,MAAM,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"content-length-transport.js","sourceRoot":"","sources":["../../src/mcp/content-length-transport.ts"],"names":[],"mappings":"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"}
@@ -99,7 +99,7 @@ export declare class MCPHealthMonitor extends EventEmitter {
99
99
  getReconnectionManager(): ReconnectionManager;
100
100
  /**
101
101
  * Calculate percentile from array of values
102
- * Returns undefined for empty arrays to distinguish from actual 0 values
102
+ * Returns 0 for empty arrays to distinguish from actual values
103
103
  */
104
104
  private calculatePercentile;
105
105
  /**
@@ -207,7 +207,7 @@ export class MCPHealthMonitor extends EventEmitter {
207
207
  }
208
208
  /**
209
209
  * Calculate percentile from array of values
210
- * Returns undefined for empty arrays to distinguish from actual 0 values
210
+ * Returns 0 for empty arrays to distinguish from actual values
211
211
  */
212
212
  calculatePercentile(values, percentile) {
213
213
  // EDGE CASE FIX: Handle empty array explicitly
@@ -215,9 +215,10 @@ export class MCPHealthMonitor extends EventEmitter {
215
215
  return 0; // Return 0 for empty metrics (no data available)
216
216
  }
217
217
  const sorted = [...values].sort((a, b) => a - b);
218
- // EDGE CASE FIX: Ensure index is never negative
219
- const index = Math.max(0, Math.ceil(sorted.length * percentile) - 1);
220
- // EDGE CASE FIX: Remove || 0 fallback to preserve actual 0 values
218
+ // BUG FIX: Ensure index is within bounds [0, length-1]
219
+ // Math.ceil could produce length when percentile=1.0, causing out-of-bounds access
220
+ const rawIndex = Math.ceil(sorted.length * percentile) - 1;
221
+ const index = Math.min(sorted.length - 1, Math.max(0, rawIndex));
221
222
  return sorted[index];
222
223
  }
223
224
  /**