@mcpmesh/sdk 2.4.0 → 2.5.0
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.
- package/dist/__tests__/agent-single-instance.spec.d.ts +2 -0
- package/dist/__tests__/agent-single-instance.spec.d.ts.map +1 -0
- package/dist/__tests__/agent-single-instance.spec.js +80 -0
- package/dist/__tests__/agent-single-instance.spec.js.map +1 -0
- package/dist/__tests__/event-loop-resilience.spec.d.ts +2 -0
- package/dist/__tests__/event-loop-resilience.spec.d.ts.map +1 -0
- package/dist/__tests__/event-loop-resilience.spec.js +321 -0
- package/dist/__tests__/event-loop-resilience.spec.js.map +1 -0
- package/dist/__tests__/llm-max-iterations.test.js +10 -8
- package/dist/__tests__/llm-max-iterations.test.js.map +1 -1
- package/dist/__tests__/llm-provider-multistep.test.d.ts +20 -0
- package/dist/__tests__/llm-provider-multistep.test.d.ts.map +1 -0
- package/dist/__tests__/llm-provider-multistep.test.js +138 -0
- package/dist/__tests__/llm-provider-multistep.test.js.map +1 -0
- package/dist/__tests__/llm-provider-output-mode.test.js +1 -0
- package/dist/__tests__/llm-provider-output-mode.test.js.map +1 -1
- package/dist/__tests__/llm-provider-stopwhen.test.d.ts +22 -0
- package/dist/__tests__/llm-provider-stopwhen.test.d.ts.map +1 -0
- package/dist/__tests__/llm-provider-stopwhen.test.js +127 -0
- package/dist/__tests__/llm-provider-stopwhen.test.js.map +1 -0
- package/dist/__tests__/llm-provider-system-synthesis.test.js +1 -0
- package/dist/__tests__/llm-provider-system-synthesis.test.js.map +1 -1
- package/dist/__tests__/llm-provider-vertex-settings.test.d.ts +18 -0
- package/dist/__tests__/llm-provider-vertex-settings.test.d.ts.map +1 -0
- package/dist/__tests__/llm-provider-vertex-settings.test.js +128 -0
- package/dist/__tests__/llm-provider-vertex-settings.test.js.map +1 -0
- package/dist/__tests__/port-conflict-fallback.spec.d.ts +2 -0
- package/dist/__tests__/port-conflict-fallback.spec.d.ts.map +1 -0
- package/dist/__tests__/port-conflict-fallback.spec.js +123 -0
- package/dist/__tests__/port-conflict-fallback.spec.js.map +1 -0
- package/dist/__tests__/port-probe-errors.spec.d.ts +2 -0
- package/dist/__tests__/port-probe-errors.spec.d.ts.map +1 -0
- package/dist/__tests__/port-probe-errors.spec.js +100 -0
- package/dist/__tests__/port-probe-errors.spec.js.map +1 -0
- package/dist/__tests__/provider-handler-registry.test.d.ts +0 -1
- package/dist/__tests__/provider-handler-registry.test.d.ts.map +1 -1
- package/dist/__tests__/provider-handler-registry.test.js +23 -1
- package/dist/__tests__/provider-handler-registry.test.js.map +1 -1
- package/dist/__tests__/proxy-sse-no-data.test.d.ts +13 -0
- package/dist/__tests__/proxy-sse-no-data.test.d.ts.map +1 -0
- package/dist/__tests__/proxy-sse-no-data.test.js +147 -0
- package/dist/__tests__/proxy-sse-no-data.test.js.map +1 -0
- package/dist/__tests__/proxy-stream.test.js +26 -0
- package/dist/__tests__/proxy-stream.test.js.map +1 -1
- package/dist/__tests__/proxy-timer-leak.test.d.ts +16 -0
- package/dist/__tests__/proxy-timer-leak.test.d.ts.map +1 -0
- package/dist/__tests__/proxy-timer-leak.test.js +97 -0
- package/dist/__tests__/proxy-timer-leak.test.js.map +1 -0
- package/dist/__tests__/proxy-tool-error.test.d.ts +13 -0
- package/dist/__tests__/proxy-tool-error.test.d.ts.map +1 -0
- package/dist/__tests__/proxy-tool-error.test.js +313 -0
- package/dist/__tests__/proxy-tool-error.test.js.map +1 -0
- package/dist/__tests__/route.test.js +21 -1
- package/dist/__tests__/route.test.js.map +1 -1
- package/dist/__tests__/settle-window.spec.d.ts +2 -0
- package/dist/__tests__/settle-window.spec.d.ts.map +1 -0
- package/dist/__tests__/settle-window.spec.js +324 -0
- package/dist/__tests__/settle-window.spec.js.map +1 -0
- package/dist/__tests__/sse.test.js +12 -0
- package/dist/__tests__/sse.test.js.map +1 -1
- package/dist/__tests__/stop-dispatchers.spec.d.ts +2 -0
- package/dist/__tests__/stop-dispatchers.spec.d.ts.map +1 -0
- package/dist/__tests__/stop-dispatchers.spec.js +227 -0
- package/dist/__tests__/stop-dispatchers.spec.js.map +1 -0
- package/dist/agent.d.ts +65 -5
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +313 -78
- package/dist/agent.js.map +1 -1
- package/dist/api-runtime.d.ts +33 -3
- package/dist/api-runtime.d.ts.map +1 -1
- package/dist/api-runtime.js +125 -32
- package/dist/api-runtime.js.map +1 -1
- package/dist/claim-dispatcher.d.ts +25 -0
- package/dist/claim-dispatcher.d.ts.map +1 -1
- package/dist/claim-dispatcher.js +59 -1
- package/dist/claim-dispatcher.js.map +1 -1
- package/dist/config.d.ts +73 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +108 -2
- package/dist/config.js.map +1 -1
- package/dist/debug.d.ts +1 -1
- package/dist/debug.d.ts.map +1 -1
- package/dist/express.d.ts +33 -0
- package/dist/express.d.ts.map +1 -1
- package/dist/express.js +149 -31
- package/dist/express.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/llm-provider.d.ts +18 -0
- package/dist/llm-provider.d.ts.map +1 -1
- package/dist/llm-provider.js +86 -34
- package/dist/llm-provider.js.map +1 -1
- package/dist/provider-handlers/gemini-handler.js +6 -0
- package/dist/provider-handlers/gemini-handler.js.map +1 -1
- package/dist/provider-handlers/provider-handler-registry.d.ts +10 -1
- package/dist/provider-handlers/provider-handler-registry.d.ts.map +1 -1
- package/dist/provider-handlers/provider-handler-registry.js +4 -1
- package/dist/provider-handlers/provider-handler-registry.js.map +1 -1
- package/dist/proxy.d.ts.map +1 -1
- package/dist/proxy.js +178 -40
- package/dist/proxy.js.map +1 -1
- package/dist/route.d.ts.map +1 -1
- package/dist/route.js +38 -0
- package/dist/route.js.map +1 -1
- package/dist/settle.d.ts +129 -0
- package/dist/settle.d.ts.map +1 -0
- package/dist/settle.js +284 -0
- package/dist/settle.js.map +1 -0
- package/dist/sse.d.ts.map +1 -1
- package/dist/sse.js +5 -2
- package/dist/sse.js.map +1 -1
- package/dist/tracing.d.ts +1 -0
- package/dist/tracing.d.ts.map +1 -1
- package/dist/tracing.js +3 -0
- package/dist/tracing.js.map +1 -1
- package/package.json +2 -2
package/dist/proxy.js
CHANGED
|
@@ -10,6 +10,8 @@ import { isTimeoutError } from "./timeout-utils.js";
|
|
|
10
10
|
import { getDispatcher } from "./http-pool.js";
|
|
11
11
|
import { currentJob } from "./job-context.js";
|
|
12
12
|
import { awaitJobCancel } from "@mcpmesh/core";
|
|
13
|
+
import { createDebug } from "./debug.js";
|
|
14
|
+
const debugProxy = createDebug("proxy");
|
|
13
15
|
/** Default CallOptions for internal callers that don't go through createProxy. */
|
|
14
16
|
export const DEFAULT_CALL_OPTIONS = {
|
|
15
17
|
timeout: 30_000,
|
|
@@ -292,10 +294,22 @@ function wireJobCancel(controller) {
|
|
|
292
294
|
export async function callMcpTool(endpoint, toolName, args, options, capability, extraHeaders) {
|
|
293
295
|
const { mcpEndpoint, bodyStr, requestBytes, headers, effectiveTimeout, traceCtx, spanId, startTime, } = buildMcpRequest(endpoint, toolName, args, options, extraHeaders, DEFAULT_CALL_OPTIONS.timeout);
|
|
294
296
|
let lastError = null;
|
|
297
|
+
// Response size of the most recent attempt that got far enough to read a
|
|
298
|
+
// body — carried onto the post-loop aggregate error span so a failed call's
|
|
299
|
+
// span still reports payload size (per-attempt spans used to carry it).
|
|
300
|
+
let lastResponseBytes;
|
|
295
301
|
for (let attempt = 0; attempt < options.maxAttempts; attempt++) {
|
|
302
|
+
// Abort timer covers the WHOLE attempt — connect, headers, AND body
|
|
303
|
+
// read — and is cleared in `finally` (issue #1163 LOW-5). Previously
|
|
304
|
+
// it was cleared right after `fetch` resolved, so (a) a fetch
|
|
305
|
+
// rejection leaked one armed timer per retry for the rest of the
|
|
306
|
+
// timeout window, and (b) the body read (response.text() / SSE) was
|
|
307
|
+
// unbounded by the call timeout. Keeping the controller armed until
|
|
308
|
+
// the body is consumed makes an over-deadline body read abort and
|
|
309
|
+
// surface through the existing isTimeoutError path below.
|
|
310
|
+
const controller = new AbortController();
|
|
311
|
+
const timeoutId = setTimeout(() => controller.abort(), effectiveTimeout);
|
|
296
312
|
try {
|
|
297
|
-
const controller = new AbortController();
|
|
298
|
-
const timeoutId = setTimeout(() => controller.abort(), effectiveTimeout);
|
|
299
313
|
wireJobCancel(controller);
|
|
300
314
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
301
315
|
const fetchOptions = {
|
|
@@ -310,7 +324,6 @@ export async function callMcpTool(endpoint, toolName, args, options, capability,
|
|
|
310
324
|
fetchOptions.dispatcher = dispatcher;
|
|
311
325
|
}
|
|
312
326
|
const response = await fetch(mcpEndpoint, fetchOptions);
|
|
313
|
-
clearTimeout(timeoutId);
|
|
314
327
|
if (!response.ok) {
|
|
315
328
|
throw new Error(`MCP call failed: ${response.status} ${response.statusText}`);
|
|
316
329
|
}
|
|
@@ -320,58 +333,81 @@ export async function callMcpTool(endpoint, toolName, args, options, capability,
|
|
|
320
333
|
throw new Error(`Response size ${contentLength} bytes exceeds limit of ${options.maxResponseSize} bytes`);
|
|
321
334
|
}
|
|
322
335
|
const contentType = response.headers.get("content-type") ?? "";
|
|
323
|
-
// Handle SSE streaming response
|
|
336
|
+
// Handle SSE streaming response.
|
|
337
|
+
//
|
|
338
|
+
// Span accounting (#1202): spans are per-call, not per-attempt. Error
|
|
339
|
+
// paths in this loop body throw WITHOUT publishing — the outer catch
|
|
340
|
+
// owns the non-retryable single-span paths (abort/timeout,
|
|
341
|
+
// ProxyTimeoutError) and the post-loop aggregate owns retried-then-
|
|
342
|
+
// exhausted errors. Publishing here too would emit multiple spans
|
|
343
|
+
// sharing one spanId.
|
|
324
344
|
if (contentType.includes("text/event-stream")) {
|
|
325
|
-
const sseResult = await readSSEResponseToContent(response);
|
|
326
345
|
// Estimate response size from content-length header (exact size not available for SSE)
|
|
327
346
|
const sseResponseBytes = contentLength > 0 ? contentLength : undefined;
|
|
347
|
+
lastResponseBytes = sseResponseBytes;
|
|
348
|
+
const sseResult = await readSSEResponseToContent(response);
|
|
328
349
|
// Publish success span
|
|
329
|
-
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, true, null, typeof sseResult, requestBytes, sseResponseBytes);
|
|
350
|
+
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, true, null, typeof sseResult, requestBytes, sseResponseBytes, attempt + 1);
|
|
330
351
|
return sseResult;
|
|
331
352
|
}
|
|
332
353
|
// Handle JSON response — read as text to measure byte size
|
|
333
354
|
const responseText = await response.text();
|
|
334
355
|
const responseBytes = Buffer.byteLength(responseText, "utf8");
|
|
356
|
+
lastResponseBytes = responseBytes;
|
|
335
357
|
const result = JSON.parse(responseText);
|
|
336
358
|
if (result.error) {
|
|
337
359
|
const errorMsg = result.error.message ?? JSON.stringify(result.error);
|
|
338
|
-
// Publish error span
|
|
339
|
-
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, false, errorMsg, "error", requestBytes, responseBytes);
|
|
340
360
|
throw new Error(`MCP error: ${errorMsg}`);
|
|
341
361
|
}
|
|
342
362
|
// Surface tool-level errors. An MCP CallToolResult with isError === true
|
|
343
363
|
// carries the failure message in its content; the JSON-RPC envelope above
|
|
344
364
|
// is success in that case. Throw so callers (LLM provider, tool proxy)
|
|
345
365
|
// re-wrap it instead of returning the error text as a successful result.
|
|
346
|
-
const
|
|
347
|
-
if (
|
|
348
|
-
const toolErr = extractContent(innerResult);
|
|
349
|
-
const toolErrMsg = typeof toolErr === "string" ? toolErr : JSON.stringify(toolErr);
|
|
350
|
-
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, false, toolErrMsg, "error", requestBytes, responseBytes);
|
|
366
|
+
const toolErrMsg = toolErrorMessage(result.result);
|
|
367
|
+
if (toolErrMsg !== null) {
|
|
351
368
|
throw new Error(`MCP tool error: ${toolErrMsg}`);
|
|
352
369
|
}
|
|
353
370
|
// Extract content from result
|
|
354
371
|
const content = extractContent(result.result);
|
|
355
372
|
// Publish success span
|
|
356
|
-
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, true, null, typeof content, requestBytes, responseBytes);
|
|
373
|
+
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, true, null, typeof content, requestBytes, responseBytes, attempt + 1);
|
|
357
374
|
return content;
|
|
358
375
|
}
|
|
359
376
|
catch (err) {
|
|
360
377
|
lastError = err instanceof Error ? err : new Error(String(err));
|
|
361
378
|
// Don't retry on abort (timeout)
|
|
362
379
|
if (isTimeoutError(lastError)) {
|
|
363
|
-
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, false, "timeout", "error", requestBytes);
|
|
380
|
+
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, false, "timeout", "error", requestBytes, undefined, attempt + 1);
|
|
364
381
|
throw new Error(`MCP call timed out after ${effectiveTimeout}ms`);
|
|
365
382
|
}
|
|
366
|
-
//
|
|
383
|
+
// Don't retry on the proxy's in-band timeout marker either (#1201):
|
|
384
|
+
// the X-Mesh-Timeout budget is definitively spent, so a retry would
|
|
385
|
+
// burn another full budget against an exchange the proxy already cut.
|
|
386
|
+
// Same accounting as the local abort above: one error span, immediate
|
|
387
|
+
// throw — the message names the proxy budget, matching meshctl's
|
|
388
|
+
// report of the same cut.
|
|
389
|
+
if (lastError instanceof ProxyTimeoutError) {
|
|
390
|
+
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, false, lastError.message, "error", requestBytes, undefined, attempt + 1);
|
|
391
|
+
throw lastError;
|
|
392
|
+
}
|
|
393
|
+
// Retry everything else (network, HTTP, protocol, and tool-level
|
|
394
|
+
// errors) until attempts are exhausted; only the abort/timeout case
|
|
395
|
+
// above is non-retryable. No span here (#1202) — the post-loop
|
|
396
|
+
// aggregate publishes once for the whole call.
|
|
397
|
+
debugProxy(`attempt ${attempt + 1}/${options.maxAttempts} failed for ${toolName} at ${endpoint}: ${lastError.message}`);
|
|
367
398
|
if (attempt < options.maxAttempts - 1) {
|
|
368
399
|
await sleep(options.retryDelay * Math.pow(options.retryBackoff, attempt));
|
|
369
400
|
continue;
|
|
370
401
|
}
|
|
371
402
|
}
|
|
403
|
+
finally {
|
|
404
|
+
clearTimeout(timeoutId);
|
|
405
|
+
}
|
|
372
406
|
}
|
|
373
|
-
// All retries failed
|
|
374
|
-
|
|
407
|
+
// All retries failed — the single aggregate error span for this call
|
|
408
|
+
// (#1202): carries the last attempt's error and response size, plus the
|
|
409
|
+
// attempts count when retries were configured.
|
|
410
|
+
publishProxySpan(traceCtx, spanId, startTime, toolName, capability, endpoint, false, lastError?.message ?? "unknown", "error", requestBytes, lastResponseBytes, options.maxAttempts);
|
|
375
411
|
throw lastError ?? new Error("MCP call failed");
|
|
376
412
|
}
|
|
377
413
|
/**
|
|
@@ -473,6 +509,13 @@ export async function* streamMcpTool(endpoint, toolName, args, options, capabili
|
|
|
473
509
|
const em = msg.error.message ?? JSON.stringify(msg.error);
|
|
474
510
|
throw new Error(`MCP error: ${em}`);
|
|
475
511
|
}
|
|
512
|
+
// Surface tool-level errors on the final result (mirrors callMcpTool):
|
|
513
|
+
// a producer tool that throws mid-stream ends with isError === true
|
|
514
|
+
// and must not look like a clean end-of-stream.
|
|
515
|
+
const streamToolErrMsg = toolErrorMessage(msg.result);
|
|
516
|
+
if (streamToolErrMsg !== null) {
|
|
517
|
+
throw new Error(`MCP tool error: ${streamToolErrMsg}`);
|
|
518
|
+
}
|
|
476
519
|
// result arrived — done; do NOT yield the buffered final result
|
|
477
520
|
break;
|
|
478
521
|
}
|
|
@@ -528,8 +571,12 @@ function generateProgressToken() {
|
|
|
528
571
|
}
|
|
529
572
|
/**
|
|
530
573
|
* Helper to publish a proxy call span (fire and forget).
|
|
574
|
+
*
|
|
575
|
+
* `attempts` is the number of call attempts this span aggregates; it is
|
|
576
|
+
* recorded on the span only when greater than 1 (i.e. retries actually
|
|
577
|
+
* happened), keeping single-attempt spans unchanged.
|
|
531
578
|
*/
|
|
532
|
-
function publishProxySpan(traceCtx, spanId, startTime, _toolName, _capability, endpoint, success, error, resultType, requestBytes, responseBytes) {
|
|
579
|
+
function publishProxySpan(traceCtx, spanId, startTime, _toolName, _capability, endpoint, success, error, resultType, requestBytes, responseBytes, attempts) {
|
|
533
580
|
if (!traceCtx || !spanId)
|
|
534
581
|
return;
|
|
535
582
|
const endTime = Date.now() / 1000;
|
|
@@ -553,6 +600,7 @@ function publishProxySpan(traceCtx, spanId, startTime, _toolName, _capability, e
|
|
|
553
600
|
meshPositions: [],
|
|
554
601
|
requestBytes,
|
|
555
602
|
responseBytes,
|
|
603
|
+
...(attempts !== undefined && attempts > 1 ? { callAttempts: attempts } : {}),
|
|
556
604
|
}).catch(() => {
|
|
557
605
|
// Silently ignore publish errors
|
|
558
606
|
});
|
|
@@ -599,6 +647,48 @@ async function* iterateSSEEvents(reader) {
|
|
|
599
647
|
}
|
|
600
648
|
}
|
|
601
649
|
}
|
|
650
|
+
/**
|
|
651
|
+
* Extract the failure message from an MCP CallToolResult with
|
|
652
|
+
* ``isError === true``, or return null when the result is not a tool-level
|
|
653
|
+
* error. Shared by callMcpTool's JSON and SSE paths (and streamMcpTool's
|
|
654
|
+
* final-result handling) so every transport surfaces tool errors with the
|
|
655
|
+
* exact same `MCP tool error: …` shape — they can't drift apart.
|
|
656
|
+
*/
|
|
657
|
+
function toolErrorMessage(innerResult) {
|
|
658
|
+
if (innerResult && typeof innerResult === "object" && innerResult.isError === true) {
|
|
659
|
+
const toolErr = extractContent(innerResult);
|
|
660
|
+
return typeof toolErr === "string" ? toolErr : JSON.stringify(toolErr);
|
|
661
|
+
}
|
|
662
|
+
return null;
|
|
663
|
+
}
|
|
664
|
+
/**
|
|
665
|
+
* Terminal SSE comment frame the registry proxy appends when the upstream
|
|
666
|
+
* exchange is cut by the X-Mesh-Timeout budget mid-stream (#1201). Emitted as
|
|
667
|
+
* `: mesh-proxy-timeout budget=<N>s`. Comment frames are invisible to
|
|
668
|
+
* conforming SSE clients per the SSE spec, which makes this a spec-compliant
|
|
669
|
+
* in-band timeout signal.
|
|
670
|
+
* Keep in sync with proxyTimeoutCommentMarker in
|
|
671
|
+
* src/core/registry/ent_handlers.go and sseProxyTimeoutMarker in
|
|
672
|
+
* src/core/cli/call.go. The literal is pinned by
|
|
673
|
+
* src/core/registry/proxy_stream_test.go and the consumer tests in
|
|
674
|
+
* src/__tests__/proxy-sse-no-data.test.ts — a drift in either package breaks
|
|
675
|
+
* the partner's tests.
|
|
676
|
+
*/
|
|
677
|
+
const SSE_PROXY_TIMEOUT_MARKER = ": mesh-proxy-timeout";
|
|
678
|
+
/**
|
|
679
|
+
* Thrown when an SSE stream ends without a result frame AND the registry
|
|
680
|
+
* proxy's timeout marker was seen: the X-Mesh-Timeout budget is definitively
|
|
681
|
+
* spent. callMcpTool classifies this like its local abort-timeouts — NOT
|
|
682
|
+
* retried (a retry would burn another full budget against an exchange the
|
|
683
|
+
* proxy already cut) and exactly one error span via the timeout accounting
|
|
684
|
+
* path — so the runtime-side report agrees with meshctl's for the same cut.
|
|
685
|
+
*/
|
|
686
|
+
class ProxyTimeoutError extends Error {
|
|
687
|
+
constructor(message) {
|
|
688
|
+
super(message);
|
|
689
|
+
this.name = "ProxyTimeoutError";
|
|
690
|
+
}
|
|
691
|
+
}
|
|
602
692
|
/**
|
|
603
693
|
* Read an SSE response from the MCP HTTP Streamable transport down to its
|
|
604
694
|
* final content (the JSON-RPC `result`).
|
|
@@ -614,6 +704,56 @@ async function readSSEResponseToContent(response) {
|
|
|
614
704
|
const decoder = new TextDecoder();
|
|
615
705
|
let buffer = "";
|
|
616
706
|
let result = "";
|
|
707
|
+
let sawResult = false;
|
|
708
|
+
let proxyTimeoutBudget = null;
|
|
709
|
+
let proxyTimeoutSignaled = false;
|
|
710
|
+
// Handle a single SSE line. Comment frames (":"-prefixed, e.g.
|
|
711
|
+
// sse-starlette's `: ping - <ts>` keepalives) and other non-data lines are
|
|
712
|
+
// ignored per the SSE spec — only `data:` frames carry payload (#1201) —
|
|
713
|
+
// except the proxy's terminal timeout marker, which is tracked so a
|
|
714
|
+
// result-less stream end can be reported as a definitive timeout.
|
|
715
|
+
const handleLine = (line) => {
|
|
716
|
+
if (line.startsWith(SSE_PROXY_TIMEOUT_MARKER)) {
|
|
717
|
+
proxyTimeoutSignaled = true;
|
|
718
|
+
proxyTimeoutBudget = /budget=([0-9.]+s)/.exec(line)?.[1] ?? null;
|
|
719
|
+
return;
|
|
720
|
+
}
|
|
721
|
+
if (!line.startsWith("data:"))
|
|
722
|
+
return;
|
|
723
|
+
// Per the SSE spec the colon may be followed by zero or one space:
|
|
724
|
+
// strip the field name, then at most one leading space.
|
|
725
|
+
let data = line.slice(5);
|
|
726
|
+
if (data.startsWith(" "))
|
|
727
|
+
data = data.slice(1);
|
|
728
|
+
if (data === "[DONE]")
|
|
729
|
+
return;
|
|
730
|
+
let event;
|
|
731
|
+
try {
|
|
732
|
+
event = JSON.parse(data);
|
|
733
|
+
}
|
|
734
|
+
catch {
|
|
735
|
+
// Ignore parse errors for non-JSON data events
|
|
736
|
+
return;
|
|
737
|
+
}
|
|
738
|
+
// Handle JSON-RPC response — mirror callMcpTool's JSON path exactly so
|
|
739
|
+
// callers can't distinguish transports: protocol-level error first,
|
|
740
|
+
// then tool-level isError, then content extraction.
|
|
741
|
+
const jsonRpcEvent = event;
|
|
742
|
+
if (jsonRpcEvent.error) {
|
|
743
|
+
throw new Error(`MCP error: ${jsonRpcEvent.error.message ?? JSON.stringify(jsonRpcEvent.error)}`);
|
|
744
|
+
}
|
|
745
|
+
// Key-presence (not truthiness) so legitimately falsy results
|
|
746
|
+
// (null, "", 0) are extracted just like the JSON path does. Events
|
|
747
|
+
// without a `result` key (e.g. notifications) are skipped.
|
|
748
|
+
if (event && typeof event === "object" && "result" in event) {
|
|
749
|
+
const toolErrMsg = toolErrorMessage(jsonRpcEvent.result);
|
|
750
|
+
if (toolErrMsg !== null) {
|
|
751
|
+
throw new Error(`MCP tool error: ${toolErrMsg}`);
|
|
752
|
+
}
|
|
753
|
+
sawResult = true;
|
|
754
|
+
result = extractContent(jsonRpcEvent.result);
|
|
755
|
+
}
|
|
756
|
+
};
|
|
617
757
|
while (true) {
|
|
618
758
|
const { done, value } = await reader.read();
|
|
619
759
|
if (done)
|
|
@@ -623,28 +763,26 @@ async function readSSEResponseToContent(response) {
|
|
|
623
763
|
const lines = buffer.split("\n");
|
|
624
764
|
buffer = lines.pop() ?? ""; // Keep incomplete line
|
|
625
765
|
for (const line of lines) {
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
throw e;
|
|
645
|
-
}
|
|
646
|
-
}
|
|
766
|
+
handleLine(line);
|
|
767
|
+
}
|
|
768
|
+
}
|
|
769
|
+
// Drain anything left in the decoder and buffer: a stream that ends
|
|
770
|
+
// without a trailing newline still has its last line pending here.
|
|
771
|
+
buffer += decoder.decode();
|
|
772
|
+
for (const line of buffer.split("\n")) {
|
|
773
|
+
handleLine(line);
|
|
774
|
+
}
|
|
775
|
+
// A stream that ended without ANY result frame is a cut exchange — e.g.
|
|
776
|
+
// the registry proxy's X-Mesh-Timeout budget expired mid-stream and only
|
|
777
|
+
// keepalive comment frames arrived (#1201). That must surface as an error,
|
|
778
|
+
// never as an empty-string success. When the proxy's terminal marker was
|
|
779
|
+
// seen, the cut is a definitive timeout (non-retryable); without it, the
|
|
780
|
+
// generic protocol error below stays retryable.
|
|
781
|
+
if (!sawResult) {
|
|
782
|
+
if (proxyTimeoutSignaled) {
|
|
783
|
+
throw new ProxyTimeoutError(`MCP call timed out: registry proxy X-Mesh-Timeout budget${proxyTimeoutBudget ? ` (${proxyTimeoutBudget})` : ""} expired before the agent sent a response`);
|
|
647
784
|
}
|
|
785
|
+
throw new Error("MCP SSE stream ended without a result frame (connection closed or proxy timeout before the agent responded)");
|
|
648
786
|
}
|
|
649
787
|
return result;
|
|
650
788
|
}
|
package/dist/proxy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;AAaxC,kFAAkF;AAClF,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,OAAO,EAAE,MAAM;IACf,WAAW,EAAE,CAAC;IACd,aAAa,EAAE,OAAO;IACtB,UAAU,EAAE,GAAG;IACf,YAAY,EAAE,GAAG;IACjB,eAAe,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;CAClC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AAElF;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,IAAI,iBAAiB,EAAgB,CAAC;AAElE;;GAEG;AACH,MAAM,wBAAwB,GAAG,IAAI,iBAAiB,EAA0B,CAAC;AAEjF;;GAEG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAA+B,EAC/B,EAAwB;IAExB,OAAO,wBAAwB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B;IACzC,OAAO,wBAAwB,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAiB,EACjB,EAAwB;IAExB,OAAO,mBAAmB,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,mBAAmB,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC;AAChD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAyB;IAC9D,4CAA4C;IAC5C,iEAAiE;AACnE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CACzB,QAAgB,EAChB,UAAkB,EAClB,YAAoB,EACpB,MAAyB;IAEzB,MAAM,OAAO,GAAgB;QAC3B,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,GAAG,IAAI;QACvC,WAAW,EAAE,MAAM,EAAE,WAAW,IAAI,CAAC;QACrC,aAAa,EAAE,CAAC,MAAM,EAAE,aAAa,IAAI,GAAG,CAAC,GAAG,IAAI;QACpD,aAAa,EAAE,MAAM,EAAE,aAAa;QACpC,UAAU,EAAE,CAAC,MAAM,EAAE,UAAU,IAAI,GAAG,CAAC,GAAG,IAAI;QAC9C,YAAY,EAAE,MAAM,EAAE,YAAY,IAAI,GAAG;QACzC,eAAe,EAAE,MAAM,EAAE,eAAe,IAAI,EAAE,GAAG,IAAI,GAAG,IAAI;KAC7D,CAAC;IACF,8CAA8C;IAC9C,IAAI,MAAM,EAAE,SAAS,EAAE,CAAC;QACtB,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAC1C,CAAC;IAED,+CAA+C;IAC/C,gEAAgE;IAChE,wEAAwE;IACxE,MAAM,OAAO,GAAG,KAAK,EACnB,IAA8B,EAC9B,UAAiD,EAC/B,EAAE;QACpB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACzG,2DAA2D;QAC3D,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,gFAAgF;QAChF,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC,CAAC;IAEF,2EAA2E;IAC3E,mEAAmE;IACnE,uEAAuE;IACvE,+DAA+D;IAC/D,MAAM,aAAa,GAAgB,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;IAElF,yEAAyE;IACzE,0EAA0E;IAC1E,4DAA4D;IAC5D,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE;QAC/B,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC9C,UAAU,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE;QAClD,YAAY,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE;QACtD,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC1C,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC7C,QAAQ,EAAE;YACR,KAAK,EAAE,KAAK,EACV,QAAgB,EAChB,IAA8B,EAC9B,UAAiD,EAC/B,EAAE;gBACpB,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;gBACrG,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC/B,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,IAAI,CAAC;oBACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;YACD,QAAQ,EAAE,KAAK;SAChB;QACD,MAAM,EAAE;YACN,KAAK,EAAE,CACL,IAA8B,EAC9B,UAAiD,EAC1B,EAAE;gBACzB,OAAO,aAAa,CAClB,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,aAAa,EACb,UAAU,EACV,UAAU,EAAE,OAAO,CACpB,CAAC;YACJ,CAAC;YACD,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,KAAK;SAClB;KACF,CAAC,CAAC;IAEH,yEAAyE;IACzE,qEAAqE;IACrE,yEAAyE;IACzE,iBAAiB;IACjB,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE;QAClD,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE;QACrD,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,YAAY,EAAE,KAAK;KACpB,CAAC,CAAC;IAEH,OAAO,OAAsB,CAAC;AAChC,CAAC;AAkBD;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,eAAe,CACtB,QAAgB,EAChB,QAAgB,EAChB,IAAyC,EACzC,OAAoB,EACpB,YAAgD,EAChD,cAAsB,EACtB,IAAiC;IAEjC,iCAAiC;IACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC3C,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC;IAEzC,qDAAqD;IACrD,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAEpC,6FAA6F;IAC7F,MAAM,iBAAiB,GAAG,2BAA2B,EAAE,CAAC;IACxD,MAAM,aAAa,GAA2B,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACvE,IAAI,YAAY,EAAE,CAAC;QACjB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YACxD,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,MAAM,aAAa,GAAG,qBAAqB,CAAC,IAAI,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;IAEzF,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,iBAAiB,EAAE;QACvB,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,aAAa;YACxB,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjF;KACF,CAAC;IAEF,gFAAgF;IAChF,4EAA4E;IAC5E,wCAAwC;IACxC,IAAI,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IACvC,MAAM,cAAc,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAC;IACvD,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YAC/C,gBAAgB,GAAG,aAAa,CAAC;QACnC,CAAC;IACH,CAAC;IACD,+EAA+E;IAC/E,8EAA8E;IAC9E,2EAA2E;IAC3E,IAAI,OAAO,gBAAgB,KAAK,QAAQ,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QAClE,gBAAgB,GAAG,cAAc,CAAC;IACpC,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAExD,gFAAgF;IAChF,+EAA+E;IAC/E,gFAAgF;IAChF,MAAM,OAAO,GAA2B;QACtC,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;QAChC,cAAc,EAAE,kBAAkB;QAClC,MAAM,EAAE,qCAAqC;KAC9C,CAAC;IACF,4CAA4C;IAC5C,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,2CAA2C;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,gFAAgF;IAChF,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC7D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC;QACpG,OAAO,CAAC,gBAAgB,CAAC,GAAG,WAAW,CAAC;IAC1C,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/H,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,aAAa,CAAC,UAA2B;IAChD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC;aAC1B,IAAI,CAAC,GAAG,EAAE;YACT,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC/B,UAAU,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,4DAA4D;YAC5D,yDAAyD;YACzD,0DAA0D;YAC1D,8DAA8D;YAC9D,4DAA4D;YAC5D,iBAAiB;QACnB,CAAC,CAAC,CAAC;IACP,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,QAAgB,EAChB,IAAyC,EACzC,OAAoB,EACpB,UAAkB,EAClB,YAAqC;IAErC,MAAM,EACJ,WAAW,EACX,OAAO,EACP,YAAY,EACZ,OAAO,EACP,gBAAgB,EAChB,QAAQ,EACR,MAAM,EACN,SAAS,GACV,GAAG,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAEnG,IAAI,SAAS,GAAiB,IAAI,CAAC;IACnC,yEAAyE;IACzE,4EAA4E;IAC5E,wEAAwE;IACxE,IAAI,iBAAqC,CAAC;IAE1C,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;QAC/D,oEAAoE;QACpE,qEAAqE;QACrE,8DAA8D;QAC9D,iEAAiE;QACjE,oEAAoE;QACpE,oEAAoE;QACpE,kEAAkE;QAClE,0DAA0D;QAC1D,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC;QACzE,IAAI,CAAC;YACH,aAAa,CAAC,UAAU,CAAC,CAAC;YAE1B,8DAA8D;YAC9D,MAAM,YAAY,GAAwB;gBACxC,MAAM,EAAE,MAAM;gBACd,OAAO;gBACP,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC;YAEF,6CAA6C;YAC7C,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;YAC9C,IAAI,UAAU,EAAE,CAAC;gBACf,YAAY,CAAC,UAAU,GAAG,UAAU,CAAC;YACvC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,YAA2B,CAAC,CAAC;YAEvE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CACb,oBAAoB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAC7D,CAAC;YACJ,CAAC;YAED,oCAAoC;YACpC,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;YAClF,IAAI,aAAa,GAAG,CAAC,IAAI,aAAa,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;gBACjE,MAAM,IAAI,KAAK,CACb,iBAAiB,aAAa,2BAA2B,OAAO,CAAC,eAAe,QAAQ,CACzF,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAE/D,iCAAiC;YACjC,EAAE;YACF,sEAAsE;YACtE,qEAAqE;YACrE,2DAA2D;YAC3D,oEAAoE;YACpE,kEAAkE;YAClE,sBAAsB;YACtB,IAAI,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC9C,uFAAuF;gBACvF,MAAM,gBAAgB,GAAG,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;gBACvE,iBAAiB,GAAG,gBAAgB,CAAC;gBACrC,MAAM,SAAS,GAAG,MAAM,wBAAwB,CAAC,QAAQ,CAAC,CAAC;gBAC3D,uBAAuB;gBACvB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;gBACzJ,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,2DAA2D;YAC3D,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YAC9D,iBAAiB,GAAG,aAAa,CAAC;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAGrC,CAAC;YAEF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtE,MAAM,IAAI,KAAK,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;YAC5C,CAAC;YAED,yEAAyE;YACzE,0EAA0E;YAC1E,uEAAuE;YACvE,yEAAyE;YACzE,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;YACnD,CAAC;YAED,8BAA8B;YAC9B,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9C,uBAAuB;YACvB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;YACpJ,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAEhE,iCAAiC;YACjC,IAAI,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;gBAC/I,MAAM,IAAI,KAAK,CAAC,4BAA4B,gBAAgB,IAAI,CAAC,CAAC;YACpE,CAAC;YAED,oEAAoE;YACpE,oEAAoE;YACpE,sEAAsE;YACtE,sEAAsE;YACtE,iEAAiE;YACjE,0BAA0B;YAC1B,IAAI,SAAS,YAAY,iBAAiB,EAAE,CAAC;gBAC3C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;gBACvJ,MAAM,SAAS,CAAC;YAClB,CAAC;YAED,iEAAiE;YACjE,oEAAoE;YACpE,+DAA+D;YAC/D,+CAA+C;YAC/C,UAAU,CACR,WAAW,OAAO,GAAG,CAAC,IAAI,OAAO,CAAC,WAAW,eAAe,QAAQ,OAAO,QAAQ,KAAK,SAAS,CAAC,OAAO,EAAE,CAC5G,CAAC;YACF,IAAI,OAAO,GAAG,OAAO,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC1E,SAAS;YACX,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,+CAA+C;IAC/C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,IAAI,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACrL,MAAM,SAAS,IAAI,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,aAAa,CAClC,QAAgB,EAChB,QAAgB,EAChB,IAAyC,EACzC,OAAoB,EACpB,UAAkB,EAClB,YAAqC;IAErC,qEAAqE;IACrE,+EAA+E;IAC/E,8DAA8D;IAC9D,MAAM,aAAa,GAAG,qBAAqB,EAAE,CAAC;IAE9C,MAAM,EACJ,WAAW,EACX,OAAO,EACP,SAAS,EACT,YAAY,EACZ,OAAO,EACP,gBAAgB,EAChB,QAAQ,EACR,MAAM,EACN,SAAS,GACV,GAAG,eAAe,CACjB,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,YAAY,EACZ,oBAAoB,CAAC,aAAa,EAClC,EAAE,aAAa,EAAE,CAClB,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC;IAEzE,4EAA4E;IAC5E,8EAA8E;IAC9E,6CAA6C;IAC7C,aAAa,CAAC,UAAU,CAAC,CAAC;IAE1B,8DAA8D;IAC9D,MAAM,YAAY,GAAwB;QACxC,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,UAAU,CAAC,MAAM;KAC1B,CAAC;IACF,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,UAAU,EAAE,CAAC;QACf,YAAY,CAAC,UAAU,GAAG,UAAU,CAAC;IACvC,CAAC;IAED,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,MAA2D,CAAC;IAEhE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,YAA2B,CAAC,CAAC;QACvE,YAAY,CAAC,SAAS,CAAC,CAAC;QAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,2BAA2B,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CACpE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,wEAAwE;QACxE,oEAAoE;QACpE,wEAAwE;QACxE,uDAAuD;QACvD,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAClE,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CACb,8DACE,cAAc,IAAI,0BACpB,EAAE,CACH,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAEnC,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,6BAA6B;YAC7B,IAAI,GAOH,CAAC;YACF,IAAI,CAAC;gBACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;gBAC1C,SAAS;YACX,CAAC;YAED,+DAA+D;YAC/D,IAAI,GAAG,CAAC,MAAM,KAAK,wBAAwB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC1D,IAAI,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,aAAa,EAAE,CAAC;oBAC/C,oEAAoE;oBACpE,MAAM,KAAK,GACT,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,QAAQ;wBACpC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO;wBACpB,CAAC,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;4BACnC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI;4BACjB,CAAC,CAAC,IAAI,CAAC;oBACb,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;wBACnB,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,SAAS;YACX,CAAC;YAED,iDAAiD;YACjD,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;gBACjD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;oBACd,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAC1D,MAAM,IAAI,KAAK,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;gBACtC,CAAC;gBACD,uEAAuE;gBACvE,oEAAoE;gBACpE,gDAAgD;gBAChD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACtD,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,mBAAmB,gBAAgB,EAAE,CAAC,CAAC;gBACzD,CAAC;gBACD,gEAAgE;gBAChE,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,GAAG,KAAK,CAAC;QAChB,QAAQ,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,mCAAmC,gBAAgB,IAAI,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,SAAS,CAAC,CAAC;QACxB,0EAA0E;QAC1E,uEAAuE;QACvE,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;YACxB,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;QACD,0DAA0D;QAC1D,IAAI,CAAC;YACH,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,gBAAgB,CACd,QAAQ,EACR,MAAM,EACN,SAAS,EACT,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,YAAY,CACb,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB;IAC5B,6EAA6E;IAC7E,wEAAwE;IACxE,IAAI,CAAC;QACH,MAAM,SAAS,GAAI,UAAyD,CAAC,MAAM,CAAC;QACpF,IAAI,SAAS,IAAI,OAAO,SAAS,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YAC5D,OAAO,SAAS,CAAC,UAAU,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IACD,OAAO,MAAM,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CACvB,QAA6B,EAC7B,MAAqB,EACrB,SAAiB,EACjB,SAAiB,EACjB,WAAmB,EACnB,QAAgB,EAChB,OAAgB,EAChB,KAAoB,EACpB,UAAkB,EAClB,YAAqB,EACrB,aAAsB,EACtB,QAAiB;IAEjB,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM;QAAE,OAAO;IAEjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAClC,MAAM,UAAU,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;IAEhD,gCAAgC;IAChC,gBAAgB,CAAC;QACf,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,MAAM;QACN,UAAU,EAAE,QAAQ,CAAC,YAAY;QACjC,YAAY,EAAE,oBAAoB;QAClC,SAAS;QACT,OAAO;QACP,UAAU;QACV,OAAO;QACP,KAAK;QACL,UAAU;QACV,SAAS,EAAE,CAAC;QACZ,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC,QAAQ,CAAC;QACxB,oBAAoB,EAAE,CAAC;QACvB,aAAa,EAAE,EAAE;QACjB,YAAY;QACZ,aAAa;QACb,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9E,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACZ,iCAAiC;IACnC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,SAAS,CAAC,CAAC,gBAAgB,CAC9B,MAA+C;IAE/C,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI;YAAE,MAAM;QAEhB,qEAAqE;QACrE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEzE,iDAAiD;QACjD,IAAI,GAAW,CAAC;QAChB,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACtC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAE/B,+EAA+E;YAC/E,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,CAAC;qBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACpC,0CAA0C;oBAC1C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACrC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI;gBAAE,SAAS;YACpB,MAAM,IAAI,CAAC;QACb,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,WAAoB;IAC5C,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAK,WAAuC,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAChH,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAExD;;;;;;;GAOG;AACH,MAAM,iBAAkB,SAAQ,KAAK;IACnC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED;;;;;;GAMG;AACH,KAAK,UAAU,wBAAwB,CAAC,QAAkB;IACxD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,GAAgC,EAAE,CAAC;IAC7C,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,kBAAkB,GAAkB,IAAI,CAAC;IAC7C,IAAI,oBAAoB,GAAG,KAAK,CAAC;IAEjC,+DAA+D;IAC/D,2EAA2E;IAC3E,yEAAyE;IACzE,oEAAoE;IACpE,kEAAkE;IAClE,MAAM,UAAU,GAAG,CAAC,IAAY,EAAQ,EAAE;QACxC,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC9C,oBAAoB,GAAG,IAAI,CAAC;YAC5B,kBAAkB,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;YACjE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO;QACtC,mEAAmE;QACnE,wDAAwD;QACxD,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,IAAI,KAAK,QAAQ;YAAE,OAAO;QAE9B,IAAI,KAAc,CAAC;QACnB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;YAC/C,OAAO;QACT,CAAC;QAED,uEAAuE;QACvE,oEAAoE;QACpE,oDAAoD;QACpD,MAAM,YAAY,GAAG,KAA2D,CAAC;QACjF,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,cAAc,YAAY,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CACjF,CAAC;QACJ,CAAC;QACD,8DAA8D;QAC9D,mEAAmE;QACnE,2DAA2D;QAC3D,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC5D,MAAM,UAAU,GAAG,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACzD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,SAAS,GAAG,IAAI,CAAC;YACjB,MAAM,GAAG,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI;YAAE,MAAM;QAEhB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAElD,mBAAmB;QACnB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,uBAAuB;QAEnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,UAAU,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,mEAAmE;IACnE,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,UAAU,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE,gDAAgD;IAChD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,IAAI,oBAAoB,EAAE,CAAC;YACzB,MAAM,IAAI,iBAAiB,CACzB,2DAA2D,kBAAkB,CAAC,CAAC,CAAC,KAAK,kBAAkB,GAAG,CAAC,CAAC,CAAC,EAAE,2CAA2C,CAC3J,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CACb,6GAA6G,CAC9G,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAWD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAAC,MAAe;IAC5C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAiC,CAAC;QAE9C,mCAAmC;QACnC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,kEAAkE;YAClE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAC/B,CAAC,IAAa,EAAE,EAAE,CAChB,OAAO,IAAI,KAAK,QAAQ;gBACxB,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAK,IAAgC,CAAC,IAAI,KAAK,MAAM,CAAC,CAC1F,CAAC;YAEF,IAAI,OAAO,EAAE,CAAC;gBACZ,4DAA4D;gBAC5D,MAAM,SAAS,GAAa,EAAE,CAAC;gBAC/B,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBAC/B,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;wBACvD,SAAS,CAAC,IAAI,CAAC,MAAM,CAAE,IAA0B,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC3D,CAAC;yBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACpC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC;gBACD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEhC,6CAA6C;gBAC7C,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACjD,IAAI,CAAC;wBACH,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1C,CAAC;oBAAC,MAAM,CAAC;wBACP,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,uDAAuD;YACvD,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,EAAE;oBACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;oBACtC,CAAC;oBACD,OAAO,IAA+B,CAAC;gBACzC,CAAC,CAAC;aACH,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,GAAG,CAAC,OAAO,CAAC;QACrB,CAAC;QAED,0BAA0B;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB;IACxB,OAAO,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAmB;IACrD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACvC,CAAC;IACD,MAAM,MAAM,GAAyB;QACnC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC;IAEF,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,GAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,uEAAuE;YACvE,+CAA+C;YAC/C,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAW,CAAC;QAChF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CACV,sBAAsB,GAAG,CAAC,UAAU,uDAClC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,CAAC,iBAAiB,GAAG,GAAG,CAAC;YAC/B,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,QAAQ,CAAC;QAC/C,CAAC;IACH,CAAC;SAAM,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CACV,sBAAsB,GAAG,CAAC,UAAU,sEAAsE,CAC3G,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/route.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"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"}
|
package/dist/route.js
CHANGED
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
*/
|
|
31
31
|
import { normalizeDependency, runWithPropagatedHeaders, runWithTraceContext } from "./proxy.js";
|
|
32
32
|
import { getApiRuntime, introspectExpressRoutes } from "./api-runtime.js";
|
|
33
|
+
import { getSettleState } from "./settle.js";
|
|
33
34
|
import { PROPAGATE_HEADERS, matchesPropagateHeader, parseTraceContext, generateSpanId, generateTraceId, publishTraceSpan, } from "./tracing.js";
|
|
34
35
|
/**
|
|
35
36
|
* Global flag to track if Express auto-detection has been performed.
|
|
@@ -74,6 +75,14 @@ export class RouteRegistry {
|
|
|
74
75
|
dependencies: normalizedDeps,
|
|
75
76
|
dependencyKwargs,
|
|
76
77
|
});
|
|
78
|
+
// Settling-window grace (#1193): declare this route's deps with the
|
|
79
|
+
// process-wide settle state so the agent-level "all declared deps
|
|
80
|
+
// resolved" latch can flip eagerly. Keys are renamed alongside the
|
|
81
|
+
// route ID in updateRouteInfo().
|
|
82
|
+
const settleState = getSettleState();
|
|
83
|
+
normalizedDeps.forEach((_dep, depIndex) => {
|
|
84
|
+
settleState.registerDeclared(`${routeId}:dep_${depIndex}`);
|
|
85
|
+
});
|
|
77
86
|
return routeId;
|
|
78
87
|
}
|
|
79
88
|
/**
|
|
@@ -106,6 +115,11 @@ export class RouteRegistry {
|
|
|
106
115
|
const actualId = this.routeIdMapping.get(routeId) || routeId;
|
|
107
116
|
const depKey = `${actualId}:dep_${depIndex}`;
|
|
108
117
|
this.resolvedDeps.set(depKey, proxy);
|
|
118
|
+
// Settling-window grace (#1193): wake any settling request waiting on
|
|
119
|
+
// this dependency AFTER the proxy is stored so the woken request
|
|
120
|
+
// re-reads a real proxy. This is the single funnel for route deps —
|
|
121
|
+
// both the express runtime and the API runtime land here.
|
|
122
|
+
getSettleState().markResolved(depKey);
|
|
109
123
|
}
|
|
110
124
|
/**
|
|
111
125
|
* Remove resolved dependency for a route.
|
|
@@ -178,6 +192,9 @@ export class RouteRegistry {
|
|
|
178
192
|
this.resolvedDeps.set(newKey, dep);
|
|
179
193
|
this.resolvedDeps.delete(oldKey);
|
|
180
194
|
}
|
|
195
|
+
// Settling-window grace (#1193): keep the settle state's declared/
|
|
196
|
+
// resolved/waiter keys aligned with the remapped route ID.
|
|
197
|
+
getSettleState().renameDeclared(oldKey, newKey);
|
|
181
198
|
}
|
|
182
199
|
}
|
|
183
200
|
}
|
|
@@ -261,6 +278,27 @@ export function route(dependencies, handler, options) {
|
|
|
261
278
|
expressAutoDetected = true;
|
|
262
279
|
performExpressAutoDetection(req);
|
|
263
280
|
}
|
|
281
|
+
// Settling-window grace (#1193): while the agent is still settling,
|
|
282
|
+
// wait — bounded by the remaining settle budget — for any declared
|
|
283
|
+
// dep this request would inject that is still unresolved. No-op
|
|
284
|
+
// (single latch check) once settled; deps are read AFTER the wait so
|
|
285
|
+
// they reflect the resolution state.
|
|
286
|
+
const settleState = getSettleState();
|
|
287
|
+
if (normalizedDeps.length > 0 && !settleState.isSettled()) {
|
|
288
|
+
const currentId = registry.resolveRouteId(routeRef.id);
|
|
289
|
+
const pendingSettle = [];
|
|
290
|
+
normalizedDeps.forEach((dep, depIndex) => {
|
|
291
|
+
if (registry.getDependency(currentId, depIndex) === null) {
|
|
292
|
+
pendingSettle.push({
|
|
293
|
+
depKey: `${currentId}:dep_${depIndex}`,
|
|
294
|
+
capability: dep.capability,
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
});
|
|
298
|
+
if (pendingSettle.length > 0) {
|
|
299
|
+
await settleState.awaitPending(pendingSettle);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
264
302
|
// Get resolved dependencies as object (use ref to get current ID after introspection)
|
|
265
303
|
const deps = registry.getDependenciesForRoute(routeRef.id);
|
|
266
304
|
// Also try to resolve by capability name if route-specific resolution isn't available yet
|
package/dist/route.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.js","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB;;;GAGG;AACH,IAAI,mBAAmB,GAAG,KAAK,CAAC;AAiEhC;;;GAGG;AACH,MAAM,OAAO,aAAa;IAChB,MAAM,CAAC,QAAQ,GAAyB,IAAI,CAAC;IAC7C,MAAM,GAA+B,IAAI,GAAG,EAAE,CAAC;IAC/C,YAAY,GAA6B,IAAI,GAAG,EAAE,CAAC;IACnD,cAAc,GAAwB,IAAI,GAAG,EAAE,CAAC,CAAC,kBAAkB;IACnE,YAAY,GAAG,CAAC,CAAC;IAEzB,gBAAuB,CAAC;IAExB,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC5B,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK;QACV,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,aAAa,CACX,MAAc,EACd,IAAY,EACZ,YAA8B,EAC9B,gBAAqC;QAErC,2BAA2B;QAC3B,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,YAAY,EAAE,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QAEjE,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAE7D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE;YACvB,OAAO;YACP,MAAM;YACN,IAAI;YACJ,YAAY,EAAE,cAAc;YAC5B,gBAAgB;SACjB,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,OAAe;QACtB,kDAAkD;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;QAC7D,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,OAAe;QAC5B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,OAAe,EAAE,QAAgB,EAAE,KAAkB;QACjE,uEAAuE;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;QAC7D,MAAM,MAAM,GAAG,GAAG,QAAQ,QAAQ,QAAQ,EAAE,CAAC;QAC7C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"route.js","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"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"}
|