agentfootprint 11.1.1 → 11.2.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/CAPABILITIES.md +1 -0
- package/dist/adapters/mcp/agentcoreRuntime/sessionBusy.js +35 -4
- package/dist/adapters/mcp/agentcoreRuntime/sessionBusy.js.map +1 -1
- package/dist/adapters/mcp/agentcoreRuntime/transport.js +48 -22
- package/dist/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
- package/dist/core/RunnerBase.js +20 -1
- package/dist/core/RunnerBase.js.map +1 -1
- package/dist/esm/adapters/mcp/agentcoreRuntime/sessionBusy.d.ts +6 -2
- package/dist/esm/adapters/mcp/agentcoreRuntime/sessionBusy.js +35 -4
- package/dist/esm/adapters/mcp/agentcoreRuntime/sessionBusy.js.map +1 -1
- package/dist/esm/adapters/mcp/agentcoreRuntime/transport.d.ts +38 -12
- package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js +47 -21
- package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
- package/dist/esm/core/RunnerBase.d.ts +18 -0
- package/dist/esm/core/RunnerBase.js +20 -1
- package/dist/esm/core/RunnerBase.js.map +1 -1
- package/dist/esm/core/runner.d.ts +1 -0
- package/dist/esm/lib/longTimeout.d.ts +34 -0
- package/dist/esm/lib/longTimeout.js +56 -0
- package/dist/esm/lib/longTimeout.js.map +1 -0
- package/dist/esm/lib/sleep.d.ts +2 -0
- package/dist/esm/lib/sleep.js +2 -0
- package/dist/esm/lib/sleep.js.map +1 -1
- package/dist/esm/mcp/backoff.d.ts +81 -0
- package/dist/esm/mcp/backoff.js +158 -0
- package/dist/esm/mcp/backoff.js.map +1 -0
- package/dist/esm/mcp/mcpClient.js +3 -1
- package/dist/esm/mcp/mcpClient.js.map +1 -1
- package/dist/esm/mcp/throttleRetry.d.ts +198 -28
- package/dist/esm/mcp/throttleRetry.js +428 -83
- package/dist/esm/mcp/throttleRetry.js.map +1 -1
- package/dist/esm/mcp/types.d.ts +16 -7
- package/dist/esm/strategies/attach.js +3 -0
- package/dist/esm/strategies/attach.js.map +1 -1
- package/dist/esm/strategies/flushDeadline.d.ts +47 -0
- package/dist/esm/strategies/flushDeadline.js +96 -0
- package/dist/esm/strategies/flushDeadline.js.map +1 -0
- package/dist/lib/longTimeout.js +60 -0
- package/dist/lib/longTimeout.js.map +1 -0
- package/dist/lib/sleep.js +2 -0
- package/dist/lib/sleep.js.map +1 -1
- package/dist/mcp/backoff.js +163 -0
- package/dist/mcp/backoff.js.map +1 -0
- package/dist/mcp/mcpClient.js +3 -1
- package/dist/mcp/mcpClient.js.map +1 -1
- package/dist/mcp/throttleRetry.js +432 -85
- package/dist/mcp/throttleRetry.js.map +1 -1
- package/dist/strategies/attach.js +3 -0
- package/dist/strategies/attach.js.map +1 -1
- package/dist/strategies/flushDeadline.js +102 -0
- package/dist/strategies/flushDeadline.js.map +1 -0
- package/dist/types/adapters/mcp/agentcoreRuntime/sessionBusy.d.ts +6 -2
- package/dist/types/adapters/mcp/agentcoreRuntime/sessionBusy.d.ts.map +1 -1
- package/dist/types/adapters/mcp/agentcoreRuntime/transport.d.ts +38 -12
- package/dist/types/adapters/mcp/agentcoreRuntime/transport.d.ts.map +1 -1
- package/dist/types/core/RunnerBase.d.ts +18 -0
- package/dist/types/core/RunnerBase.d.ts.map +1 -1
- package/dist/types/core/runner.d.ts +1 -0
- package/dist/types/core/runner.d.ts.map +1 -1
- package/dist/types/lib/longTimeout.d.ts +35 -0
- package/dist/types/lib/longTimeout.d.ts.map +1 -0
- package/dist/types/lib/sleep.d.ts +2 -0
- package/dist/types/lib/sleep.d.ts.map +1 -1
- package/dist/types/mcp/backoff.d.ts +82 -0
- package/dist/types/mcp/backoff.d.ts.map +1 -0
- package/dist/types/mcp/throttleRetry.d.ts +198 -28
- package/dist/types/mcp/throttleRetry.d.ts.map +1 -1
- package/dist/types/mcp/types.d.ts +16 -7
- package/dist/types/mcp/types.d.ts.map +1 -1
- package/dist/types/strategies/attach.d.ts.map +1 -1
- package/dist/types/strategies/flushDeadline.d.ts +48 -0
- package/dist/types/strategies/flushDeadline.d.ts.map +1 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attach.js","sourceRoot":"","sources":["../../src/strategies/attach.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"attach.js","sourceRoot":"","sources":["../../src/strategies/attach.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* strategies/flushDeadline — flush a handle, stop waiting at a deadline, and
|
|
4
|
+
* name the strategy that did not finish.
|
|
5
|
+
*
|
|
6
|
+
* A sink's `flush()` waits for its own in-flight delivery. One that never
|
|
7
|
+
* settles — a hung network mount under `appendFile`, a network call with no
|
|
8
|
+
* timeout — would hold a shutdown forever, and a slow one for as long as it is
|
|
9
|
+
* slow. The deadline belongs to the caller that must finish,
|
|
10
|
+
* `RunnerBase · shutdown`, never to the sink: nothing can cancel an in-flight
|
|
11
|
+
* write, and pretending otherwise would be worse than saying we stopped
|
|
12
|
+
* waiting (the `withinBound` law in hosting/standingAgent.ts).
|
|
13
|
+
*
|
|
14
|
+
* A missed deadline is REPORTED, through the stuck strategy's own `_onError`
|
|
15
|
+
* (the console when it has none), and names it — the same rule as every
|
|
16
|
+
* delivery failure: telemetry that fails invisibly is indistinguishable from
|
|
17
|
+
* telemetry that works. A deadline cannot tell a slow delivery from a stuck
|
|
18
|
+
* one, so the report says both.
|
|
19
|
+
*/
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.flushWithinDeadline = exports.shutdownTimeoutOf = exports.rememberStrategyOf = exports.DEFAULT_SHUTDOWN_TIMEOUT_MS = void 0;
|
|
22
|
+
const longTimeout_js_1 = require("../lib/longTimeout.js");
|
|
23
|
+
/** How long `shutdown()` waits for each handle's flush unless told otherwise:
|
|
24
|
+
* 30 s, the same number footprintjs's `drainObservers` uses as its default. */
|
|
25
|
+
exports.DEFAULT_SHUTDOWN_TIMEOUT_MS = 30_000;
|
|
26
|
+
/** Which strategy a handle flushes — so a missed deadline can name it. Weak,
|
|
27
|
+
* so a released handle is not retained. */
|
|
28
|
+
const STRATEGY_OF_HANDLE = new WeakMap();
|
|
29
|
+
/** Remember the strategy behind a handle. Called once, where the handle is
|
|
30
|
+
* built (`strategies/attach.ts · makeStrategyHandle`). */
|
|
31
|
+
function rememberStrategyOf(handle, strategy) {
|
|
32
|
+
STRATEGY_OF_HANDLE.set(handle, strategy);
|
|
33
|
+
}
|
|
34
|
+
exports.rememberStrategyOf = rememberStrategyOf;
|
|
35
|
+
/** The deadline a `shutdown({ timeoutMs })` asked for. Throws a `TypeError`
|
|
36
|
+
* when it is not a positive number of milliseconds — called from the async
|
|
37
|
+
* `shutdown()`, so its caller sees a REJECTED promise, never a sync throw.
|
|
38
|
+
*
|
|
39
|
+
* The refusal names the field and the shape it takes, NEVER the value: a
|
|
40
|
+
* value of the wrong type can be anything a caller had at hand, and an error
|
|
41
|
+
* message is copied into logs, reports and traces. */
|
|
42
|
+
function shutdownTimeoutOf(timeoutMs) {
|
|
43
|
+
if (timeoutMs === undefined)
|
|
44
|
+
return exports.DEFAULT_SHUTDOWN_TIMEOUT_MS;
|
|
45
|
+
// `> 0` is false for NaN, so NaN is refused here too.
|
|
46
|
+
if (typeof timeoutMs === 'number' && timeoutMs > 0)
|
|
47
|
+
return timeoutMs;
|
|
48
|
+
throw new TypeError('shutdown({ timeoutMs }) must be a positive number of milliseconds, ' +
|
|
49
|
+
'or Infinity to wait for every flush without a deadline.');
|
|
50
|
+
}
|
|
51
|
+
exports.shutdownTimeoutOf = shutdownTimeoutOf;
|
|
52
|
+
/**
|
|
53
|
+
* Flush one handle, but wait no longer than `timeoutMs`. On a missed deadline
|
|
54
|
+
* the strategy is reported by name and this resolves `'stuck'`; its flush
|
|
55
|
+
* keeps running — it is not, and cannot be, cancelled.
|
|
56
|
+
*
|
|
57
|
+
* The deadline is armed by `lib/longTimeout.ts · setLongTimeout`: `Infinity`
|
|
58
|
+
* arms no timer at all, and a finite deadline of ANY length fires when asked —
|
|
59
|
+
* past the ~24.8 days one host timer holds, it is waited in chained chunks,
|
|
60
|
+
* never dropped and never fired after 1 ms. Whatever is armed is cleared as
|
|
61
|
+
* soon as the flush settles, so a healthy shutdown leaves no timer behind.
|
|
62
|
+
* It is NOT unref'd: it is bounded, and it is what lets the code after
|
|
63
|
+
* `await agent.shutdown()` run when the stuck write holds nothing else open.
|
|
64
|
+
*/
|
|
65
|
+
async function flushWithinDeadline(handle, timeoutMs) {
|
|
66
|
+
const flushing = handle.flush().then(() => 'flushed');
|
|
67
|
+
let cancelDeadline = () => undefined;
|
|
68
|
+
const deadline = new Promise((resolve) => {
|
|
69
|
+
cancelDeadline = (0, longTimeout_js_1.setLongTimeout)(() => resolve('stuck'), timeoutMs);
|
|
70
|
+
});
|
|
71
|
+
try {
|
|
72
|
+
const outcome = await Promise.race([flushing, deadline]);
|
|
73
|
+
if (outcome === 'stuck')
|
|
74
|
+
reportStillFlushing(handle, timeoutMs);
|
|
75
|
+
return outcome;
|
|
76
|
+
}
|
|
77
|
+
finally {
|
|
78
|
+
cancelDeadline();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
exports.flushWithinDeadline = flushWithinDeadline;
|
|
82
|
+
function reportStillFlushing(handle, timeoutMs) {
|
|
83
|
+
const strategy = STRATEGY_OF_HANDLE.get(handle);
|
|
84
|
+
if (strategy === undefined)
|
|
85
|
+
return;
|
|
86
|
+
const error = new Error(`[${strategy.name}] flush did not finish within ${timeoutMs} ms of shutdown: a ` +
|
|
87
|
+
`delivery it started is still in flight — still delivering, or stuck. ` +
|
|
88
|
+
`Shutdown went on without it; what this sink still holds may not be delivered.`);
|
|
89
|
+
try {
|
|
90
|
+
if (strategy._onError) {
|
|
91
|
+
strategy._onError(error);
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
catch {
|
|
96
|
+
// The sink's own error hook threw. Shutdown never inherits a sink's
|
|
97
|
+
// exception; the console below still says it.
|
|
98
|
+
}
|
|
99
|
+
// eslint-disable-next-line no-console
|
|
100
|
+
console.error(error.message);
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=flushDeadline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flushDeadline.js","sourceRoot":"","sources":["../../src/strategies/flushDeadline.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AAEH,0DAAuD;AAIvD;gFACgF;AACnE,QAAA,2BAA2B,GAAG,MAAM,CAAC;AAElD;4CAC4C;AAC5C,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAwB,CAAC;AAE/D;2DAC2D;AAC3D,SAAgB,kBAAkB,CAAC,MAAc,EAAE,QAAsB;IACvE,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAFD,gDAEC;AAED;;;;;;uDAMuD;AACvD,SAAgB,iBAAiB,CAAC,SAA6B;IAC7D,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,mCAA2B,CAAC;IAChE,sDAAsD;IACtD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACrE,MAAM,IAAI,SAAS,CACjB,qEAAqE;QACnE,yDAAyD,CAC5D,CAAC;AACJ,CAAC;AARD,8CAQC;AAED;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAAsB,EACtB,SAAiB;IAEjB,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAkB,CAAC,CAAC;IAC/D,IAAI,cAAc,GAAe,GAAG,EAAE,CAAC,SAAS,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;QAChD,cAAc,GAAG,IAAA,+BAAc,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IACH,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzD,IAAI,OAAO,KAAK,OAAO;YAAE,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAChE,OAAO,OAAO,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,cAAc,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAhBD,kDAgBC;AAED,SAAS,mBAAmB,CAAC,MAAsB,EAAE,SAAiB;IACpE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO;IACnC,MAAM,KAAK,GAAG,IAAI,KAAK,CACrB,IAAI,QAAQ,CAAC,IAAI,iCAAiC,SAAS,qBAAqB;QAC9E,uEAAuE;QACvE,+EAA+E,CAClF,CAAC;IACF,IAAI,CAAC;QACH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO;QACT,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oEAAoE;QACpE,8CAA8C;IAChD,CAAC;IACD,sCAAsC;IACtC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
* ── Why asking again is safe ─────────────────────────────────────────────────
|
|
21
21
|
* The refusal is the PLATFORM's, about the session, made before the request
|
|
22
22
|
* reached the MCP server: nothing ran. That is the license a 429 holds, and the
|
|
23
|
-
* only one
|
|
23
|
+
* only one the retry series accepts (see `mcp/throttleRetry.ts` ·
|
|
24
24
|
* `RetryDecision`).
|
|
25
25
|
*
|
|
26
26
|
* ── What it must NOT match ───────────────────────────────────────────────────
|
|
@@ -51,8 +51,12 @@ export declare const SESSION_BUSY_CODE = -32005;
|
|
|
51
51
|
* Reads a CLONE of the body, so the response is delivered intact either way.
|
|
52
52
|
* Answers `{}` (wait the loop's own backoff, then send the same request again)
|
|
53
53
|
* or `undefined` (deliver it).
|
|
54
|
+
*
|
|
55
|
+
* `signal` is the request's: when it fires mid-read (the call's deadline, the
|
|
56
|
+
* caller's cancellation), the clone's read is cancelled and released, and this
|
|
57
|
+
* rejects with the abort — a stalled body never leaves a reader behind.
|
|
54
58
|
*/
|
|
55
|
-
export declare function sessionBusy(response: Response): Promise<RetryVerdict | undefined>;
|
|
59
|
+
export declare function sessionBusy(response: Response, signal?: AbortSignal): Promise<RetryVerdict | undefined>;
|
|
56
60
|
/**
|
|
57
61
|
* The match itself, over a parsed body: ONE JSON-RPC reply whose error carries
|
|
58
62
|
* the contract's code and message. A batch is never retried whole — some of
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionBusy.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/sessionBusy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;
|
|
1
|
+
{"version":3,"file":"sessionBusy.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/sessionBusy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGlE,+EAA+E;AAC/E,eAAO,MAAM,iBAAiB,SAAS,CAAC;AAYxC;;;;;;;;;;;;GAYG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAwBnC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAQzD"}
|
|
@@ -30,7 +30,8 @@
|
|
|
30
30
|
* a handle the transport issues)
|
|
31
31
|
* retry (`sessionBusy.ts`) the session-busy refusal, retried with bounded
|
|
32
32
|
* backoff by the SAME loop `mcpClient` uses for a
|
|
33
|
-
* 429 (`mcp/throttleRetry.ts` · `
|
|
33
|
+
* 429 (`mcp/throttleRetry.ts` · `retryingFetchFor`,
|
|
34
|
+
* one footprintjs `attempt()` series per request)
|
|
34
35
|
* auth (`invoke.ts`) 'sigv4' through the AWS SDK's InvokeAgentRuntime,
|
|
35
36
|
* or a bearer token over the documented HTTPS
|
|
36
37
|
* endpoint — the SDK has no bearer scheme, and the
|
|
@@ -41,7 +42,12 @@
|
|
|
41
42
|
* signed (or vended) afresh, the ordering `mcp/throttleRetry.ts` requires.
|
|
42
43
|
* What the MCP client reads of a failure is rewritten from the library's own
|
|
43
44
|
* fixed sentences and safe ids (`safeAnswer.ts`), never the service's text.
|
|
44
|
-
*
|
|
45
|
+
*
|
|
46
|
+
* `mcpClient`'s own 429 retry does not wrap this fetch: the fetch is joinable
|
|
47
|
+
* (`joinableRetry`), so the 429 rule joins the transport's series INSIDE the
|
|
48
|
+
* session and the rewrite. One request is one series — one attempt count, one
|
|
49
|
+
* waiting total, one deadline — so the two retries can never multiply requests,
|
|
50
|
+
* and every attempt, a 429's included, lands in the same runtime session.
|
|
45
51
|
*
|
|
46
52
|
* ── What it does NOT do ──────────────────────────────────────────────────────
|
|
47
53
|
* Deploy or manage a runtime (a control-plane job), or host one (that is
|
|
@@ -51,7 +57,7 @@
|
|
|
51
57
|
* Pattern: Facade over three Strategies. Role: outer ring, vendor adapter.
|
|
52
58
|
*/
|
|
53
59
|
import { type FetchLike } from '../../../mcp/gatewayTransport.js';
|
|
54
|
-
import { type ThrottleRetryOptions } from '../../../mcp/throttleRetry.js';
|
|
60
|
+
import { type RetryDefaults, type ThrottleRetryOptions } from '../../../mcp/throttleRetry.js';
|
|
55
61
|
import type { McpHttpTransport } from '../../../mcp/types.js';
|
|
56
62
|
import type { CredentialProvider } from '../../../identity/types.js';
|
|
57
63
|
import { type AgentCoreRuntimeSdkClient, type BedrockAgentCoreRuntimeSdkModule } from './invoke.js';
|
|
@@ -92,8 +98,9 @@ export interface AgentCoreRuntimeBearerAuth {
|
|
|
92
98
|
*/
|
|
93
99
|
export type AgentCoreRuntimeAuth = 'sigv4' | AgentCoreRuntimeBearerAuth;
|
|
94
100
|
/**
|
|
95
|
-
* The session-busy retry: the same
|
|
96
|
-
* `mcpClient`'s `retryOnThrottle`, applied to AgentCore's own refusal
|
|
101
|
+
* The session-busy retry: the same options and the same `onRetry` report as
|
|
102
|
+
* `mcpClient`'s `retryOnThrottle`, applied to AgentCore's own refusal — with
|
|
103
|
+
* this transport's defaults (see {@link AgentCoreRuntimeMcpTransportOptions.retry}).
|
|
97
104
|
*/
|
|
98
105
|
export type AgentCoreRuntimeRetryOptions = ThrottleRetryOptions;
|
|
99
106
|
/** Options for {@link agentCoreRuntimeMcpTransport}. */
|
|
@@ -126,14 +133,23 @@ export interface AgentCoreRuntimeMcpTransportOptions {
|
|
|
126
133
|
/**
|
|
127
134
|
* Retry AgentCore's "session operation in progress" refusal — the MCP
|
|
128
135
|
* contract's HTTP 200 with JSON-RPC -32005, or the API's 409
|
|
129
|
-
* `RetryableConflictException`.
|
|
130
|
-
*
|
|
131
|
-
*
|
|
136
|
+
* `RetryableConflictException`. `false` lets the refusal through on the
|
|
137
|
+
* first attempt.
|
|
138
|
+
*
|
|
139
|
+
* On by default, set by its MINIMUM total wait: AgentCore can take about
|
|
140
|
+
* 2.5 s, and up to about 3.4 s, to bring a runtime session up, and refuses
|
|
141
|
+
* every request until it has. Up to 5 attempts, waiting 500 ms doubling with
|
|
142
|
+
* equal jitter — 250–500 ms, 500–1000 ms, 1–2 s, 2–4 s — is 3.75 s of waiting
|
|
143
|
+
* at the shortest draw and 7.5 s at the longest, inside the 10 s ceiling on
|
|
144
|
+
* waiting (`maxWaitMs`). No deadline (`maxElapsedMs`) and no cap on the
|
|
145
|
+
* scheduled wait (`maxDelayMs`) unless you set them.
|
|
132
146
|
*
|
|
133
|
-
*
|
|
134
|
-
* retry
|
|
135
|
-
*
|
|
136
|
-
*
|
|
147
|
+
* These are the call's overall limits. Under `mcpClient`, its 429 retry
|
|
148
|
+
* joins this retry's series rather than wrapping it, so a call makes at most
|
|
149
|
+
* `maxAttempts` requests whichever refusals it meets, and `retryOnThrottle`'s
|
|
150
|
+
* own values limit only the 429 retries inside that. A 5xx, a dropped
|
|
151
|
+
* connection or any other JSON-RPC error (throttling's -32003 included) is
|
|
152
|
+
* delivered as it is — it may be the record of work that ran.
|
|
137
153
|
*/
|
|
138
154
|
readonly retry?: boolean | AgentCoreRuntimeRetryOptions;
|
|
139
155
|
/**
|
|
@@ -170,6 +186,16 @@ export interface AgentCoreRuntimeMcpTransportOptions {
|
|
|
170
186
|
*/
|
|
171
187
|
readonly _sdk?: BedrockAgentCoreRuntimeSdkModule;
|
|
172
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* The session-busy retry's defaults, chosen by their MINIMUM total wait.
|
|
191
|
+
* AgentCore can take about 2.5 s, and up to about 3.4 s, to bring a runtime
|
|
192
|
+
* session up. 500 ms doubling with equal jitter over 5 attempts waits
|
|
193
|
+
* 250 + 500 + 1000 + 2000 = 3750 ms at the shortest draw and
|
|
194
|
+
* 500 + 1000 + 2000 + 4000 = 7500 ms at the longest: the slowest start is
|
|
195
|
+
* covered on every draw, and the longest stays inside the 10 s ceiling on
|
|
196
|
+
* waiting, so the ceiling never cuts the schedule short.
|
|
197
|
+
*/
|
|
198
|
+
export declare const SESSION_BUSY_RETRY_DEFAULTS: RetryDefaults;
|
|
173
199
|
/**
|
|
174
200
|
* An MCP transport for a server hosted on AgentCore Runtime.
|
|
175
201
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/transport.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAEH,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAIL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAGL,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACtC,MAAM,aAAa,CAAC;AAErB,OAAO,EAAmB,KAAK,uBAAuB,EAAwB,MAAM,cAAc,CAAC;AAGnG;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,0BAA0B,CAAC;AAExE;;;;GAIG;AACH,MAAM,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AAEhE,wDAAwD;AACxD,MAAM,WAAW,mCAAmC;IAClD;;;OAGG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,iDAAiD;IACjD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qFAAqF;IACrF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,8FAA8F;IAC9F,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,yDAAyD;IACzD,QAAQ,CAAC,IAAI,CAAC,EAAE,oBAAoB,CAAC;IACrC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAC3C;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,4BAA4B,CAAC;IACxD;;;;;;;;OAQG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,yBAAyB,CAAC;IAC5C;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,gCAAgC,CAAC;IAChD;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,gCAAgC,CAAC;CAClD;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B,EAAE,aAQxC,CAAC;AAQH;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,mCAAmC,GAC3C,gBAAgB,CAgBlB;AA8BD,kFAAkF;AAClF,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,MAAM,CAuB/E"}
|
|
@@ -414,9 +414,26 @@ export declare abstract class RunnerBase<TIn = unknown, TOut = unknown> implemen
|
|
|
414
414
|
* 3. a strategy is stopped only once nothing is still subscribed to it,
|
|
415
415
|
* and at most once ever (see `strategies/lifecycle.ts`).
|
|
416
416
|
*
|
|
417
|
+
* Each flush waits under ONE deadline, `timeoutMs`. A sink still flushing at
|
|
418
|
+
* the deadline — still delivering, or stuck on a hung disk, mount or network
|
|
419
|
+
* call — cannot hold the shutdown: it is reported by name through that
|
|
420
|
+
* sink's own `onError` (the console when it has none), and the shutdown goes
|
|
421
|
+
* on. Its write is not cancelled; nothing can cancel it.
|
|
422
|
+
*
|
|
423
|
+
* A call made while a shutdown is in flight joins it: its own `timeoutMs`
|
|
424
|
+
* is still checked, but the first call's deadline governs, as its `stop`
|
|
425
|
+
* does.
|
|
426
|
+
*
|
|
417
427
|
* @param options.stop - Default `true`. Pass `false` to drain WITHOUT
|
|
418
428
|
* releasing — what a host does when it is shutting down but does not own
|
|
419
429
|
* the agent it was handed (`standingAgent`'s default `shutdown: 'flush'`).
|
|
430
|
+
* @param options.timeoutMs - How long to wait for each sink's flush, in ms.
|
|
431
|
+
* Default 30 000 (the same number footprintjs's `drainObservers` uses).
|
|
432
|
+
* `Infinity` waits without a deadline — how `shutdown()` behaved before
|
|
433
|
+
* this option existed — and arms no timer. A finite value of any size is
|
|
434
|
+
* honoured, even past the ~24.8 days one host timer can hold. A value that
|
|
435
|
+
* is not a positive number makes the returned promise reject with a
|
|
436
|
+
* `TypeError`; nothing throws synchronously.
|
|
420
437
|
*
|
|
421
438
|
* @example Graceful exit for a script
|
|
422
439
|
* const telemetry = agent.enable.observability({ strategy: cloudwatch });
|
|
@@ -425,6 +442,7 @@ export declare abstract class RunnerBase<TIn = unknown, TOut = unknown> implemen
|
|
|
425
442
|
*/
|
|
426
443
|
shutdown(options?: {
|
|
427
444
|
readonly stop?: boolean;
|
|
445
|
+
readonly timeoutMs?: number;
|
|
428
446
|
}): Promise<void>;
|
|
429
447
|
/**
|
|
430
448
|
* The teardown tier for tools that hold sessions, built on FIRST
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RunnerBase.d.ts","sourceRoot":"","sources":["../../../src/core/RunnerBase.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EAChB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAU,MAAM,yBAAyB,CAAC;AAKlE,OAAO,EAQL,KAAK,YAAY,EAClB,MAAM,8BAA8B,CAAC;AAUtC,OAAO,KAAK,EAAiB,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEpE,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAGV,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"RunnerBase.d.ts","sourceRoot":"","sources":["../../../src/core/RunnerBase.ts"],"names":[],"mappings":"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"}
|
|
@@ -247,6 +247,7 @@ export interface Runner<TIn = unknown, TOut = unknown> {
|
|
|
247
247
|
*/
|
|
248
248
|
shutdown?(options?: {
|
|
249
249
|
readonly stop?: boolean;
|
|
250
|
+
readonly timeoutMs?: number;
|
|
250
251
|
}): Promise<void>;
|
|
251
252
|
/**
|
|
252
253
|
* Emit a consumer-defined custom event through the same dispatcher.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/core/runner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/core/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* longTimeout — arm a host timer for a limit of any length.
|
|
3
|
+
*
|
|
4
|
+
* A host timer holds at most 2^31 − 1 ms (about 24.8 days). Node turns a longer
|
|
5
|
+
* delay — `Infinity` included — into 1 ms, with a `TimeoutOverflowWarning`, so
|
|
6
|
+
* a raw `setTimeout(fn, limit)` gives up at once exactly when the caller asked
|
|
7
|
+
* to wait longest. The law, by the limit:
|
|
8
|
+
*
|
|
9
|
+
* - `Infinity` — no limit: NO timer is armed and `fn` never runs, so nothing
|
|
10
|
+
* keeps the process alive on its account.
|
|
11
|
+
* - a finite delay past 2^31 − 1 ms — waited in chained chunks of at most
|
|
12
|
+
* 2^31 − 1 ms, so it never fires early and never after 1 ms.
|
|
13
|
+
* - anything else that is not a number > 0 (`0`, a negative, `NaN`) — already
|
|
14
|
+
* due: `fn` runs on the next timer turn, as `setTimeout(fn, 0)` does.
|
|
15
|
+
*
|
|
16
|
+
* `{ unref: true }` unrefs every chunk, for a timer that only bounds a wait.
|
|
17
|
+
* The returned function cancels whichever chunk is armed; it is a no-op when
|
|
18
|
+
* nothing was armed.
|
|
19
|
+
*
|
|
20
|
+
* A COPY, ON PURPOSE: footprintjs has the same helper (`setLongTimeout`,
|
|
21
|
+
* footprintjs#136) but keeps it private — it is not part of footprintjs's
|
|
22
|
+
* public exports. agentfootprint keeps this copy, with the same signature and
|
|
23
|
+
* the same law, until footprintjs exports a supported long-timer helper.
|
|
24
|
+
*
|
|
25
|
+
* A leaf: imports nothing.
|
|
26
|
+
*/
|
|
27
|
+
/** How a long timer is armed. */
|
|
28
|
+
export interface LongTimeoutOptions {
|
|
29
|
+
/** Unref every host timer it arms (where the host has `unref`). */
|
|
30
|
+
readonly unref?: boolean;
|
|
31
|
+
}
|
|
32
|
+
/** `setTimeout` for a limit of any length, by the law above. Returns its
|
|
33
|
+
* cancel. */
|
|
34
|
+
export declare function setLongTimeout(fn: () => void, ms: number, options?: LongTimeoutOptions): () => void;
|
|
35
|
+
//# sourceMappingURL=longTimeout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"longTimeout.d.ts","sourceRoot":"","sources":["../../../src/lib/longTimeout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAKH,iCAAiC;AACjC,MAAM,WAAW,kBAAkB;IACjC,mEAAmE;IACnE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;cACc;AACd,wBAAgB,cAAc,CAC5B,EAAE,EAAE,MAAM,IAAI,EACd,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM,IAAI,CAkBZ"}
|
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
* `retryingFetch`, `typesafe`), the device-flow poll, the mock
|
|
9
9
|
* provider's thinking time and the sign-in door's minimum answer
|
|
10
10
|
* time. Every one promised "at least `ms`", and none kept it.
|
|
11
|
+
* (`retryingFetch` has since moved onto footprintjs's `attempt()`
|
|
12
|
+
* runner, which waits on its own timer.)
|
|
11
13
|
* Emits: N/A.
|
|
12
14
|
*
|
|
13
15
|
* ── WHY A BARE `setTimeout` IS NOT A MINIMUM ─────────────────────────────
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sleep.d.ts","sourceRoot":"","sources":["../../../src/lib/sleep.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"sleep.d.ts","sourceRoot":"","sources":["../../../src/lib/sleep.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AAEH,mFAAmF;AACnF,MAAM,WAAW,UAAU;IACzB,iDAAiD;IACjD,GAAG,IAAI,MAAM,CAAC;IACd,gDAAgD;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;IAChD,2CAA2C;IAC3C,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CACnC;AAED,0EAA0E;AAC1E,MAAM,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC;AAE5D,qFAAqF;AACrF,MAAM,MAAM,KAAK,GAAG,CAClB,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,EAC3B,UAAU,CAAC,EAAE,YAAY,KACtB,OAAO,CAAC,IAAI,CAAC,CAAC;AAcnB,kGAAkG;AAClG,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAgClD;AAOD,4EAA4E;AAC5E,eAAO,MAAM,KAAK,EAAE,KAAiC,CAAC"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* backoff — builders of a `RetryPolicy.backoffMs` function: an exponential
|
|
3
|
+
* schedule, and a wait the server stated winning over it.
|
|
4
|
+
*
|
|
5
|
+
* STAND-IN, TO BE DELETED. footprintjs is adding these two helpers to its
|
|
6
|
+
* attempt runner (`attempt/backoff.ts`): `exponentialBackoff({ baseDelayMs,
|
|
7
|
+
* multiplier, jitter, maxDelayMs, random })` and
|
|
8
|
+
* `statedWaitFirst(readStatedWaitMs, inner)`, with these names, signatures and
|
|
9
|
+
* laws. Once a footprintjs release
|
|
10
|
+
* ships them, import them in `throttleRetry.ts` and delete this file; nothing
|
|
11
|
+
* else changes.
|
|
12
|
+
*
|
|
13
|
+
* Pattern: Two pure builders. Each returns `(attempt, error?) => ms`.
|
|
14
|
+
* Role: The wait `throttleRetry.ts` plans for each retry.
|
|
15
|
+
* Emits: N/A.
|
|
16
|
+
*
|
|
17
|
+
* ── THE LAW ──────────────────────────────────────────────────────────────
|
|
18
|
+
* `exponentialBackoff`: after failed attempt `n` (1-based) the ceiling is
|
|
19
|
+
*
|
|
20
|
+
* c = min(maxDelayMs, baseDelayMs × multiplier^(n − 1))
|
|
21
|
+
* (saturating at MAX_SAFE_INTEGER)
|
|
22
|
+
*
|
|
23
|
+
* and, for `r = random()` in [0, 1]:
|
|
24
|
+
*
|
|
25
|
+
* 'none' c `random` is never called
|
|
26
|
+
* 'equal' min(c, c/2 + r × c/2) never below half the ceiling
|
|
27
|
+
* 'full' r × c anywhere from 0 up to it
|
|
28
|
+
*
|
|
29
|
+
* Waits are exact milliseconds — nothing is rounded. `random` defaults to
|
|
30
|
+
* `Math.random`, taken when the function is BUILT; a fixed source makes a test
|
|
31
|
+
* exact. A `random()` answering outside [0, 1] throws when asked.
|
|
32
|
+
*
|
|
33
|
+
* `statedWaitFirst`: when `readStatedWaitMs(error)` answers a finite number
|
|
34
|
+
* ≥ 0, that is the wait; otherwise `inner` decides. A reader that throws or
|
|
35
|
+
* answers anything else states nothing, so a malformed `Retry-After` falls back
|
|
36
|
+
* to the schedule rather than to a wrong wait.
|
|
37
|
+
*
|
|
38
|
+
* `maxDelayMs` caps the CEILING, before the draw, so capped waits keep their
|
|
39
|
+
* jitter: at the cap, equal jitter still spreads between c/2 and c. Capped
|
|
40
|
+
* after the draw instead, every wait past twice the cap would BE the cap, and
|
|
41
|
+
* clients refused together would retry in lockstep. A stated wait is never
|
|
42
|
+
* capped: `statedWaitFirst` hands it back whole.
|
|
43
|
+
*/
|
|
44
|
+
/** How much of an exponential wait is random: none of it, half of it, or all of it. */
|
|
45
|
+
export type BackoffJitter = 'none' | 'equal' | 'full';
|
|
46
|
+
/** The schedule {@link exponentialBackoff} builds a backoff function from. */
|
|
47
|
+
export interface BackoffSpec {
|
|
48
|
+
/** The ceiling of the first wait (after attempt 1), in milliseconds — a finite number ≥ 0. */
|
|
49
|
+
readonly baseDelayMs: number;
|
|
50
|
+
/** How much each ceiling grows over the one before — a finite number ≥ 1. Default `2`. */
|
|
51
|
+
readonly multiplier?: number;
|
|
52
|
+
/** How much of each wait is random. Default `'none'`: the wait IS the ceiling. */
|
|
53
|
+
readonly jitter?: BackoffJitter;
|
|
54
|
+
/**
|
|
55
|
+
* The cap on every ceiling, in milliseconds — a number ≥ 0, applied BEFORE
|
|
56
|
+
* the draw, so capped waits keep their jitter. Default: none.
|
|
57
|
+
*/
|
|
58
|
+
readonly maxDelayMs?: number;
|
|
59
|
+
/** The jitter's random source, answering in [0, 1]. Default `Math.random`, taken when built. */
|
|
60
|
+
readonly random?: () => number;
|
|
61
|
+
}
|
|
62
|
+
/** A `RetryPolicy.backoffMs` function: the wait in milliseconds after failed attempt `attempt` (1-based). */
|
|
63
|
+
export type BackoffFunction = (attempt: number, error?: unknown) => number;
|
|
64
|
+
/** Reads the wait an error states (a parsed `Retry-After`), in milliseconds, or `undefined` when it states none. */
|
|
65
|
+
export type StatedWaitReader = (error: unknown) => number | undefined;
|
|
66
|
+
/**
|
|
67
|
+
* An exponential schedule: the wait after failed attempt `n` is drawn under
|
|
68
|
+
* `baseDelayMs × multiplier^(n − 1)` by the declared jitter.
|
|
69
|
+
*
|
|
70
|
+
* @throws when built: a `TypeError` for an option of the wrong type, a
|
|
71
|
+
* `RangeError` for one out of range — each naming the option.
|
|
72
|
+
*/
|
|
73
|
+
export declare function exponentialBackoff(spec: BackoffSpec): BackoffFunction;
|
|
74
|
+
/**
|
|
75
|
+
* A wait the outside system stated wins; otherwise `inner` — a backoff
|
|
76
|
+
* function, or a fixed number of milliseconds — decides.
|
|
77
|
+
*
|
|
78
|
+
* @throws when built: a `TypeError` for a reader that is not a function, or an
|
|
79
|
+
* `inner` that is neither a function nor a finite number ≥ 0.
|
|
80
|
+
*/
|
|
81
|
+
export declare function statedWaitFirst(readStatedWaitMs: StatedWaitReader, inner: BackoffFunction | number): BackoffFunction;
|
|
82
|
+
//# sourceMappingURL=backoff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backoff.d.ts","sourceRoot":"","sources":["../../../src/mcp/backoff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,uFAAuF;AACvF,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAEtD,8EAA8E;AAC9E,MAAM,WAAW,WAAW;IAC1B,8FAA8F;IAC9F,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,0FAA0F;IAC1F,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,kFAAkF;IAClF,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,gGAAgG;IAChG,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;CAChC;AAED,6GAA6G;AAC7G,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;AAE3E,oHAAoH;AACpH,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;AAOtE;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,GAAG,eAAe,CAUrE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,eAAe,GAAG,MAAM,GAC9B,eAAe,CAcjB"}
|