@mxf-dev/core 3.2.1 → 3.2.2

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.
@@ -0,0 +1,18 @@
1
+ /** Overrides the bound on a memory operation or a live index request, in milliseconds. */
2
+ export declare const MEMORY_REQUEST_TIMEOUT_ENV = "MXF_MEMORY_REQUEST_TIMEOUT_MS";
3
+ /** Bound on a memory operation or a live index request when the variable is not set. */
4
+ export declare const DEFAULT_MEMORY_REQUEST_TIMEOUT_MS = 60000;
5
+ /** Overrides the bound on one backfill batch, in milliseconds. */
6
+ export declare const MEMORY_BACKFILL_TIMEOUT_ENV = "MXF_MEMORY_BACKFILL_TIMEOUT_MS";
7
+ /** Bound on one backfill batch when the variable is not set. */
8
+ export declare const DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS = 300000;
9
+ /**
10
+ * Reads the per-request bound. Read per request rather than once at load, so
11
+ * a bad value fails the first request loudly instead of being cached as a
12
+ * silent default. Throws when the variable is set to anything but a positive
13
+ * integer.
14
+ */
15
+ export declare const readMemoryRequestTimeoutMs: () => number;
16
+ /** Reads the per-batch backfill bound; same rules as readMemoryRequestTimeoutMs(). */
17
+ export declare const readMemoryBackfillTimeoutMs: () => number;
18
+ //# sourceMappingURL=MemoryRequestLimits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryRequestLimits.d.ts","sourceRoot":"","sources":["../../src/config/MemoryRequestLimits.ts"],"names":[],"mappings":"AAwBA,0FAA0F;AAC1F,eAAO,MAAM,0BAA0B,kCAAkC,CAAC;AAE1E,wFAAwF;AACxF,eAAO,MAAM,iCAAiC,QAAS,CAAC;AAExD,kEAAkE;AAClE,eAAO,MAAM,2BAA2B,mCAAmC,CAAC;AAE5E,gEAAgE;AAChE,eAAO,MAAM,kCAAkC,SAAU,CAAC;AAE1D;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,QAAO,MACuC,CAAC;AAEtF,sFAAsF;AACtF,eAAO,MAAM,2BAA2B,QAAO,MACwC,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Copyright 2024 Brad Anderson
3
+ * Licensed under the Apache License, Version 2.0
4
+ * See LICENSE file for details
5
+ * @author Brad Anderson <BradA1878@pm.me>
6
+ */
7
+ /**
8
+ * Bounds on how long an SDK memory or search-index request waits for the
9
+ * server's answer.
10
+ *
11
+ * Such a request settles when the server answers it, when the agent's socket
12
+ * drops, or when the SDK cancels it. While the socket stays up and the server
13
+ * stays silent, nothing else settles it — and disconnect() waits for queued
14
+ * saves and index requests before closing the socket, so a server that had
15
+ * stopped answering held disconnect() open for as long as the socket lived.
16
+ * Past its bound a request ends with an error that is reported like any other
17
+ * failed request; it is not retried.
18
+ *
19
+ * A backfill batch has a bound of its own: the server indexes a batch one
20
+ * message at a time, with an embedding call and a Meilisearch task wait for
21
+ * each, so a full batch legitimately takes far longer than one live request.
22
+ */
23
+ import { readPositiveIntEnv } from '../utils/env.js';
24
+ /** Overrides the bound on a memory operation or a live index request, in milliseconds. */
25
+ export const MEMORY_REQUEST_TIMEOUT_ENV = 'MXF_MEMORY_REQUEST_TIMEOUT_MS';
26
+ /** Bound on a memory operation or a live index request when the variable is not set. */
27
+ export const DEFAULT_MEMORY_REQUEST_TIMEOUT_MS = 60_000;
28
+ /** Overrides the bound on one backfill batch, in milliseconds. */
29
+ export const MEMORY_BACKFILL_TIMEOUT_ENV = 'MXF_MEMORY_BACKFILL_TIMEOUT_MS';
30
+ /** Bound on one backfill batch when the variable is not set. */
31
+ export const DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS = 300_000;
32
+ /**
33
+ * Reads the per-request bound. Read per request rather than once at load, so
34
+ * a bad value fails the first request loudly instead of being cached as a
35
+ * silent default. Throws when the variable is set to anything but a positive
36
+ * integer.
37
+ */
38
+ export const readMemoryRequestTimeoutMs = () => readPositiveIntEnv(MEMORY_REQUEST_TIMEOUT_ENV, DEFAULT_MEMORY_REQUEST_TIMEOUT_MS);
39
+ /** Reads the per-batch backfill bound; same rules as readMemoryRequestTimeoutMs(). */
40
+ export const readMemoryBackfillTimeoutMs = () => readPositiveIntEnv(MEMORY_BACKFILL_TIMEOUT_ENV, DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS);
41
+ //# sourceMappingURL=MemoryRequestLimits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryRequestLimits.js","sourceRoot":"","sources":["../../src/config/MemoryRequestLimits.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,0FAA0F;AAC1F,MAAM,CAAC,MAAM,0BAA0B,GAAG,+BAA+B,CAAC;AAE1E,wFAAwF;AACxF,MAAM,CAAC,MAAM,iCAAiC,GAAG,MAAM,CAAC;AAExD,kEAAkE;AAClE,MAAM,CAAC,MAAM,2BAA2B,GAAG,gCAAgC,CAAC;AAE5E,gEAAgE;AAChE,MAAM,CAAC,MAAM,kCAAkC,GAAG,OAAO,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAW,EAAE,CACnD,kBAAkB,CAAC,0BAA0B,EAAE,iCAAiC,CAAC,CAAC;AAEtF,sFAAsF;AACtF,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAW,EAAE,CACpD,kBAAkB,CAAC,2BAA2B,EAAE,kCAAkC,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -16,4 +16,5 @@ export type { IAgentMemory, IChannelMemory, IRelationshipMemory, MemoryData, } f
16
16
  export { DEFAULT_SERVER_CONFIG, getServerConfig, buildServerUrl, } from './config/ServerConfig.js';
17
17
  export type { ServerConfig } from './config/ServerConfig.js';
18
18
  export { MAX_MEILISEARCH_MESSAGE_BYTES, MAX_MEILISEARCH_BACKFILL_MESSAGES, MAX_MEILISEARCH_BACKFILL_CONTENT_BYTES, MAX_MEILISEARCH_BACKFILL_WIRE_BYTES, meilisearchContentBytes, } from './config/MeilisearchIngressLimits.js';
19
+ export { DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS, DEFAULT_MEMORY_REQUEST_TIMEOUT_MS, MEMORY_BACKFILL_TIMEOUT_ENV, MEMORY_REQUEST_TIMEOUT_ENV, readMemoryBackfillTimeoutMs, readMemoryRequestTimeoutMs } from './config/MemoryRequestLimits.js';
19
20
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EACH,cAAc,EACd,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACH,sBAAsB,EACtB,WAAW,GACd,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACR,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,UAAU,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,qBAAqB,EACrB,eAAe,EACf,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EACH,6BAA6B,EAC7B,iCAAiC,EACjC,sCAAsC,EACtC,mCAAmC,EACnC,uBAAuB,GAC1B,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EACH,cAAc,EACd,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACH,sBAAsB,EACtB,WAAW,GACd,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACR,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,UAAU,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,qBAAqB,EACrB,eAAe,EACf,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EACH,6BAA6B,EAC7B,iCAAiC,EACjC,sCAAsC,EACtC,mCAAmC,EACnC,uBAAuB,GAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACH,kCAAkC,EAClC,iCAAiC,EACjC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC7B,MAAM,iCAAiC,CAAC"}
package/dist/index.js CHANGED
@@ -12,4 +12,5 @@ export { CORE_MXF_TOOLS, isCoreToolName, } from './constants/CoreTools.js';
12
12
  export { MemoryPersistenceLevel, MemoryScope, } from './types/MemoryTypes.js';
13
13
  export { DEFAULT_SERVER_CONFIG, getServerConfig, buildServerUrl, } from './config/ServerConfig.js';
14
14
  export { MAX_MEILISEARCH_MESSAGE_BYTES, MAX_MEILISEARCH_BACKFILL_MESSAGES, MAX_MEILISEARCH_BACKFILL_CONTENT_BYTES, MAX_MEILISEARCH_BACKFILL_WIRE_BYTES, meilisearchContentBytes, } from './config/MeilisearchIngressLimits.js';
15
+ export { DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS, DEFAULT_MEMORY_REQUEST_TIMEOUT_MS, MEMORY_BACKFILL_TIMEOUT_ENV, MEMORY_REQUEST_TIMEOUT_ENV, readMemoryBackfillTimeoutMs, readMemoryRequestTimeoutMs } from './config/MemoryRequestLimits.js';
15
16
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EACH,cAAc,EACd,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACH,sBAAsB,EACtB,WAAW,GACd,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACH,qBAAqB,EACrB,eAAe,EACf,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACH,6BAA6B,EAC7B,iCAAiC,EACjC,sCAAsC,EACtC,mCAAmC,EACnC,uBAAuB,GAC1B,MAAM,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EACH,cAAc,EACd,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACH,sBAAsB,EACtB,WAAW,GACd,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACH,qBAAqB,EACrB,eAAe,EACf,cAAc,GACjB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACH,6BAA6B,EAC7B,iCAAiC,EACjC,sCAAsC,EACtC,mCAAmC,EACnC,uBAAuB,GAC1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACH,kCAAkC,EAClC,iCAAiC,EACjC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC7B,MAAM,iCAAiC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OpenRouterMcpClient.d.ts","sourceRoot":"","sources":["../../../../src/protocols/mcp/providers/OpenRouterMcpClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACH,UAAU,EACV,OAAO,EACP,cAAc,EAOjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAqGnE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,aAAa;IAElD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAG1D,OAAO,CAAC,MAAM,CAAwD;IAItE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAM7C;;IAOF;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAMhC;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IA6B1B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,sBAAsB;IAS9B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,mBAAmB;IAqB3B,OAAO,CAAC,YAAY,CAAiC;IACrD,OAAO,CAAC,iBAAiB,CAAS;IAGlC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAwE;IAGhH,OAAO,CAAC,eAAe,CAAuC;IAG9D,OAAO,CAAC,YAAY,CAAsB;IAK1C,OAAO,CAAC,gBAAgB,CAAU;IAKlC,OAAO,CAAC,mBAAmB,CAAU;IAIrC,OAAO,CAAC,iBAAiB,CAAS;IAElC;;OAEG;YACW,YAAY;IAwB1B;;OAEG;YACW,YAAY;IAgB1B;;;;;;;;;OASG;IACH,OAAO,CAAC,qBAAqB;IAoC7B;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;IAsBhC;;OAEG;cACa,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAsCnD;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IA8BvC;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAIhC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAkG5B;;;;;;;;;;;;;;;OAeG;IACI,eAAe,CAClB,OAAO,EAAE,YAAY,EACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,UAAU,CAAC,cAAc,CAAC;IAiC7B;;OAEG;YACW,mBAAmB;IAiDjC;;;;;;;;;;;;;;;OAeG;YACW,wBAAwB;IAuBtC;;;;OAIG;YACW,uBAAuB;IAiTrC;;;;OAIG;IACH,OAAO,CAAC,4BAA4B;IAkGpC;;;;;;;OAOG;cACa,mBAAmB,CAC/B,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,OAAO,CAAC,cAAc,CAAC;IAmC1B;;;OAGG;YACW,8BAA8B;IAqB5C;;OAEG;YACW,4BAA4B;CAgM7C"}
1
+ {"version":3,"file":"OpenRouterMcpClient.d.ts","sourceRoot":"","sources":["../../../../src/protocols/mcp/providers/OpenRouterMcpClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EACH,UAAU,EACV,OAAO,EACP,cAAc,EAOjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAoFnE;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,aAAa;IAElD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAG1D,OAAO,CAAC,MAAM,CAAwD;IAItE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAM7C;;IAOF;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAMhC;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IA6B1B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,sBAAsB;IAS9B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,mBAAmB;IAqB3B,OAAO,CAAC,YAAY,CAAiC;IACrD,OAAO,CAAC,iBAAiB,CAAS;IAGlC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAwE;IAGhH,OAAO,CAAC,eAAe,CAAuC;IAG9D,OAAO,CAAC,YAAY,CAAsB;IAK1C,OAAO,CAAC,gBAAgB,CAAU;IAKlC,OAAO,CAAC,mBAAmB,CAAU;IAIrC,OAAO,CAAC,iBAAiB,CAAS;IAElC;;OAEG;YACW,YAAY;IAwB1B;;OAEG;YACW,YAAY;IAgB1B;;;;;;;;;OASG;IACH,OAAO,CAAC,qBAAqB;IAoC7B;;;;;;;;OAQG;IACH,OAAO,CAAC,wBAAwB;IAsBhC;;OAEG;cACa,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAsCnD;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IA8BvC;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAIhC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAkG5B;;;;;;;;;;;;;;;OAeG;IACI,eAAe,CAClB,OAAO,EAAE,YAAY,EACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,UAAU,CAAC,cAAc,CAAC;IAiC7B;;OAEG;YACW,mBAAmB;IAiDjC;;;;;;;;;;;;;;;OAeG;YACW,wBAAwB;IAuBtC;;;;OAIG;YACW,uBAAuB;IAiTrC;;;;OAIG;IACH,OAAO,CAAC,4BAA4B;IAkGpC;;;;;;;OAOG;cACa,mBAAmB,CAC/B,QAAQ,EAAE,UAAU,EAAE,EACtB,KAAK,CAAC,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,OAAO,CAAC,cAAc,CAAC;IAmC1B;;;OAGG;YACW,8BAA8B;IAqB5C;;OAEG;YACW,4BAA4B;CAgM7C"}
@@ -27,6 +27,7 @@
27
27
  */
28
28
  import { Observable } from 'rxjs';
29
29
  import { BaseMcpClient } from './BaseMcpClient.js';
30
+ import { readPositiveIntEnv } from '../../../utils/env.js';
30
31
  import { McpContentType } from '../IMcpClient.js';
31
32
  import { Logger } from '../../../utils/Logger.js';
32
33
  import { DEFAULT_NETWORK_RECOVERY_CONFIG } from '../../../types/NetworkRecoveryTypes.js';
@@ -36,22 +37,6 @@ import { convertToolsToProviderFormat } from '../utils/ToolHandlers.js';
36
37
  import { getMessageConverter } from '../converters/UnifiedMessageConverter.js';
37
38
  import { MessageFormat } from '../converters/IFormatConverter.js';
38
39
  import { OpenRouterMessageAdapter } from '../converters/adapters/OpenRouterMessageAdapter.js';
39
- /**
40
- * Read a positive integer from the environment, failing fast on garbage.
41
- * These values bound how long a hung request can stay silent — a NaN or zero
42
- * from a typo'd env var must not silently disable that bound.
43
- */
44
- const parsePositiveIntEnv = (name, defaultValue) => {
45
- const raw = process.env[name];
46
- if (raw === undefined || raw === '') {
47
- return defaultValue;
48
- }
49
- const parsed = parseInt(raw, 10);
50
- if (!Number.isFinite(parsed) || parsed <= 0) {
51
- throw new Error(`${name} must be a positive integer, got "${raw}"`);
52
- }
53
- return parsed;
54
- };
55
40
  /**
56
41
  * True when an error came from an aborted fetch. AbortSignal.timeout() rejects
57
42
  * with a DOMException named 'TimeoutError' (Node and Bun); a manual
@@ -301,9 +286,9 @@ export class OpenRouterMcpClient extends BaseMcpClient {
301
286
  // for minutes on large contexts, so this is a hang detector, not a latency
302
287
  // budget. It is enforced twice: as an AbortSignal on the fetch itself and
303
288
  // as an operation bound inside NetworkRecoveryManager.executeWithRetry.
304
- this.requestTimeoutMs = parsePositiveIntEnv('OPENROUTER_REQUEST_TIMEOUT_MS', 300000);
305
- this.streamIdleTimeoutMs = parsePositiveIntEnv('OPENROUTER_STREAM_IDLE_TIMEOUT_MS', 120000);
306
- this.slowRequestWarnMs = parsePositiveIntEnv('OPENROUTER_SLOW_REQUEST_WARN_MS', 60000);
289
+ this.requestTimeoutMs = readPositiveIntEnv('OPENROUTER_REQUEST_TIMEOUT_MS', 300000);
290
+ this.streamIdleTimeoutMs = readPositiveIntEnv('OPENROUTER_STREAM_IDLE_TIMEOUT_MS', 120000);
291
+ this.slowRequestWarnMs = readPositiveIntEnv('OPENROUTER_SLOW_REQUEST_WARN_MS', 60000);
307
292
  // Initialize network recovery configuration from environment or defaults
308
293
  const networkRecoveryConfig = {
309
294
  ...DEFAULT_NETWORK_RECOVERY_CONFIG,
@@ -1 +1 @@
1
- {"version":3,"file":"OpenRouterMcpClient.js","sourceRoot":"","sources":["../../../../src/protocols/mcp/providers/OpenRouterMcpClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenRouterMcpClient.js","sourceRoot":"","sources":["../../../../src/protocols/mcp/providers/OpenRouterMcpClient.ts"],"names":[],"mappings":"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"}
@@ -16,4 +16,11 @@
16
16
  * actionable message when it is missing or blank.
17
17
  */
18
18
  export declare const requireEnv: (name: string, hint?: string) => string;
19
+ /**
20
+ * Reads a positive integer from the environment, failing fast on garbage.
21
+ * Used for the values that bound how long a silent request may stay pending:
22
+ * a NaN or zero from a typo'd variable must not quietly remove that bound.
23
+ * Missing or blank means the default.
24
+ */
25
+ export declare const readPositiveIntEnv: (name: string, defaultValue: number) => number;
19
26
  //# sourceMappingURL=env.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,KAAG,MAQxD,CAAC"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,KAAG,MAQxD,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,cAAc,MAAM,KAAG,MAUvE,CAAC"}
package/dist/utils/env.js CHANGED
@@ -22,4 +22,21 @@ export const requireEnv = (name, hint) => {
22
22
  }
23
23
  return value;
24
24
  };
25
+ /**
26
+ * Reads a positive integer from the environment, failing fast on garbage.
27
+ * Used for the values that bound how long a silent request may stay pending:
28
+ * a NaN or zero from a typo'd variable must not quietly remove that bound.
29
+ * Missing or blank means the default.
30
+ */
31
+ export const readPositiveIntEnv = (name, defaultValue) => {
32
+ const raw = process.env[name];
33
+ if (raw === undefined || raw === '') {
34
+ return defaultValue;
35
+ }
36
+ const parsed = parseInt(raw, 10);
37
+ if (!Number.isFinite(parsed) || parsed <= 0) {
38
+ throw new Error(`${name} must be a positive integer, got "${raw}"`);
39
+ }
40
+ return parsed;
41
+ };
25
42
  //# sourceMappingURL=env.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH;;;;;;GAMG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,IAAa,EAAU,EAAE;IAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACX,yCAAyC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5E,CAAC;IACN,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH;;;;;;GAMG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,IAAa,EAAU,EAAE;IAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACX,yCAAyC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5E,CAAC;IACN,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,YAAoB,EAAU,EAAE;IAC7E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;QAClC,OAAO,YAAY,CAAC;IACxB,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,qCAAqC,GAAG,GAAG,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mxf-dev/core",
3
- "version": "3.2.1",
3
+ "version": "3.2.2",
4
4
  "description": "Model Exchange Framework core: events, schemas, types, services, and protocol contracts",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Copyright 2024 Brad Anderson
3
+ * Licensed under the Apache License, Version 2.0
4
+ * See LICENSE file for details
5
+ * @author Brad Anderson <BradA1878@pm.me>
6
+ */
7
+ /**
8
+ * Bounds on how long an SDK memory or search-index request waits for the
9
+ * server's answer.
10
+ *
11
+ * Such a request settles when the server answers it, when the agent's socket
12
+ * drops, or when the SDK cancels it. While the socket stays up and the server
13
+ * stays silent, nothing else settles it — and disconnect() waits for queued
14
+ * saves and index requests before closing the socket, so a server that had
15
+ * stopped answering held disconnect() open for as long as the socket lived.
16
+ * Past its bound a request ends with an error that is reported like any other
17
+ * failed request; it is not retried.
18
+ *
19
+ * A backfill batch has a bound of its own: the server indexes a batch one
20
+ * message at a time, with an embedding call and a Meilisearch task wait for
21
+ * each, so a full batch legitimately takes far longer than one live request.
22
+ */
23
+ import { readPositiveIntEnv } from '../utils/env.js';
24
+
25
+ /** Overrides the bound on a memory operation or a live index request, in milliseconds. */
26
+ export const MEMORY_REQUEST_TIMEOUT_ENV = 'MXF_MEMORY_REQUEST_TIMEOUT_MS';
27
+
28
+ /** Bound on a memory operation or a live index request when the variable is not set. */
29
+ export const DEFAULT_MEMORY_REQUEST_TIMEOUT_MS = 60_000;
30
+
31
+ /** Overrides the bound on one backfill batch, in milliseconds. */
32
+ export const MEMORY_BACKFILL_TIMEOUT_ENV = 'MXF_MEMORY_BACKFILL_TIMEOUT_MS';
33
+
34
+ /** Bound on one backfill batch when the variable is not set. */
35
+ export const DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS = 300_000;
36
+
37
+ /**
38
+ * Reads the per-request bound. Read per request rather than once at load, so
39
+ * a bad value fails the first request loudly instead of being cached as a
40
+ * silent default. Throws when the variable is set to anything but a positive
41
+ * integer.
42
+ */
43
+ export const readMemoryRequestTimeoutMs = (): number =>
44
+ readPositiveIntEnv(MEMORY_REQUEST_TIMEOUT_ENV, DEFAULT_MEMORY_REQUEST_TIMEOUT_MS);
45
+
46
+ /** Reads the per-batch backfill bound; same rules as readMemoryRequestTimeoutMs(). */
47
+ export const readMemoryBackfillTimeoutMs = (): number =>
48
+ readPositiveIntEnv(MEMORY_BACKFILL_TIMEOUT_ENV, DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS);
package/src/index.ts CHANGED
@@ -37,3 +37,11 @@ export {
37
37
  MAX_MEILISEARCH_BACKFILL_WIRE_BYTES,
38
38
  meilisearchContentBytes,
39
39
  } from './config/MeilisearchIngressLimits.js';
40
+ export {
41
+ DEFAULT_MEMORY_BACKFILL_TIMEOUT_MS,
42
+ DEFAULT_MEMORY_REQUEST_TIMEOUT_MS,
43
+ MEMORY_BACKFILL_TIMEOUT_ENV,
44
+ MEMORY_REQUEST_TIMEOUT_ENV,
45
+ readMemoryBackfillTimeoutMs,
46
+ readMemoryRequestTimeoutMs
47
+ } from './config/MemoryRequestLimits.js';
@@ -30,6 +30,7 @@
30
30
  import { Observable } from 'rxjs';
31
31
  import { v4 as uuidv4 } from 'uuid';
32
32
  import { BaseMcpClient } from './BaseMcpClient.js';
33
+ import { readPositiveIntEnv } from '../../../utils/env.js';
33
34
  import {
34
35
  McpMessage,
35
36
  McpTool,
@@ -114,23 +115,6 @@ interface OpenRouterResponse {
114
115
  };
115
116
  }
116
117
 
117
- /**
118
- * Read a positive integer from the environment, failing fast on garbage.
119
- * These values bound how long a hung request can stay silent — a NaN or zero
120
- * from a typo'd env var must not silently disable that bound.
121
- */
122
- const parsePositiveIntEnv = (name: string, defaultValue: number): number => {
123
- const raw = process.env[name];
124
- if (raw === undefined || raw === '') {
125
- return defaultValue;
126
- }
127
- const parsed = parseInt(raw, 10);
128
- if (!Number.isFinite(parsed) || parsed <= 0) {
129
- throw new Error(`${name} must be a positive integer, got "${raw}"`);
130
- }
131
- return parsed;
132
- };
133
-
134
118
  /**
135
119
  * True when an error came from an aborted fetch. AbortSignal.timeout() rejects
136
120
  * with a DOMException named 'TimeoutError' (Node and Bun); a manual
@@ -428,9 +412,9 @@ export class OpenRouterMcpClient extends BaseMcpClient {
428
412
  // for minutes on large contexts, so this is a hang detector, not a latency
429
413
  // budget. It is enforced twice: as an AbortSignal on the fetch itself and
430
414
  // as an operation bound inside NetworkRecoveryManager.executeWithRetry.
431
- this.requestTimeoutMs = parsePositiveIntEnv('OPENROUTER_REQUEST_TIMEOUT_MS', 300000);
432
- this.streamIdleTimeoutMs = parsePositiveIntEnv('OPENROUTER_STREAM_IDLE_TIMEOUT_MS', 120000);
433
- this.slowRequestWarnMs = parsePositiveIntEnv('OPENROUTER_SLOW_REQUEST_WARN_MS', 60000);
415
+ this.requestTimeoutMs = readPositiveIntEnv('OPENROUTER_REQUEST_TIMEOUT_MS', 300000);
416
+ this.streamIdleTimeoutMs = readPositiveIntEnv('OPENROUTER_STREAM_IDLE_TIMEOUT_MS', 120000);
417
+ this.slowRequestWarnMs = readPositiveIntEnv('OPENROUTER_SLOW_REQUEST_WARN_MS', 60000);
434
418
 
435
419
  // Initialize network recovery configuration from environment or defaults
436
420
  const networkRecoveryConfig: NetworkRecoveryConfig = {
package/src/utils/env.ts CHANGED
@@ -25,3 +25,21 @@ export const requireEnv = (name: string, hint?: string): string => {
25
25
  }
26
26
  return value;
27
27
  };
28
+
29
+ /**
30
+ * Reads a positive integer from the environment, failing fast on garbage.
31
+ * Used for the values that bound how long a silent request may stay pending:
32
+ * a NaN or zero from a typo'd variable must not quietly remove that bound.
33
+ * Missing or blank means the default.
34
+ */
35
+ export const readPositiveIntEnv = (name: string, defaultValue: number): number => {
36
+ const raw = process.env[name];
37
+ if (raw === undefined || raw === '') {
38
+ return defaultValue;
39
+ }
40
+ const parsed = parseInt(raw, 10);
41
+ if (!Number.isFinite(parsed) || parsed <= 0) {
42
+ throw new Error(`${name} must be a positive integer, got "${raw}"`);
43
+ }
44
+ return parsed;
45
+ };