@memnexus-ai/cli 1.7.236 → 1.7.238

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.
@@ -9,7 +9,23 @@ import { Memnexus } from '@memnexus-ai/typescript-sdk';
9
9
  */
10
10
  export declare function getSdk(): Memnexus;
11
11
  /**
12
- * Reset the cached SDK instance
12
+ * Get an SDK instance whose transport makes exactly ONE attempt per call.
13
+ *
14
+ * Used by `mx memories recall`/`digest`, which owns its retry policy in
15
+ * lib/retry.ts (withRecallRetry). The default SDK transport retries every
16
+ * failure up to 3 times, POST included, and each digest attempt runs a fresh
17
+ * server-side LLM synthesis (GH #5570).
18
+ *
19
+ * Why a separate instance rather than a per-request override: the SDK's
20
+ * RetryHandler is built once per service from `SdkConfig.retry` when the client
21
+ * is constructed. The per-operation `retry` block the generator writes onto
22
+ * each request (releases/sdk-generator/src/generators/typescript/
23
+ * service-generator.ts) is stored on the Request but never read by the
24
+ * RetryHandler, so the client config is the only lever the SDK honours.
25
+ */
26
+ export declare function getSingleAttemptSdk(): Memnexus;
27
+ /**
28
+ * Reset the cached SDK instances
13
29
  *
14
30
  * Useful for testing or when configuration changes
15
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAOvD;;;;;;;GAOG;AACH,wBAAgB,MAAM,IAAI,QAAQ,CAsBjC;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,IAAI,IAAI,CAE/B;AAGD,eAAO,MAAM,YAAY,eAAS,CAAC;AACnC,eAAO,MAAM,cAAc,iBAAW,CAAC;AAGvC,YAAY,EAAE,QAAQ,EAAE,CAAC;AAEzB;;GAEG;AACH,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACjC,CAAC;CACH;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,CAAC,GAAG,SAAS,CAwBrF"}
1
+ {"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAmBvD;;;;;;;GAOG;AACH,wBAAgB,MAAM,IAAI,QAAQ,CAYjC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,IAAI,QAAQ,CAY9C;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,IAAI,IAAI,CAG/B;AAGD,eAAO,MAAM,YAAY,eAAS,CAAC;AACnC,eAAO,MAAM,cAAc,iBAAW,CAAC;AAGvC,YAAY,EAAE,QAAQ,EAAE,CAAC;AAEzB;;GAEG;AACH,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACjC,CAAC;CACH;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,CAAC,GAAG,SAAS,CAwBrF"}
@@ -5,13 +5,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.resetApiClient = exports.getApiClient = void 0;
7
7
  exports.getSdk = getSdk;
8
+ exports.getSingleAttemptSdk = getSingleAttemptSdk;
8
9
  exports.resetSdk = resetSdk;
9
10
  exports.extractResponseData = extractResponseData;
10
11
  const typescript_sdk_1 = require("@memnexus-ai/typescript-sdk");
11
12
  const config_1 = require("./config");
12
13
  const chalk_1 = __importDefault(require("chalk"));
13
- // Cached SDK instance
14
+ // Cached SDK instances
14
15
  let cachedSdk = null;
16
+ let cachedSingleAttemptSdk = null;
17
+ /** Read the CLI's API URL and key, exiting with the login hint when no key is set. */
18
+ function sdkConfigFromCli() {
19
+ const apiKey = config_1.config.getApiKey();
20
+ if (!apiKey) {
21
+ console.error(chalk_1.default.red('Error: No API key configured.'));
22
+ console.log(chalk_1.default.yellow('Run: mx auth login --api-key <your-key>'));
23
+ process.exit(1);
24
+ }
25
+ return { baseUrl: config_1.config.getApiUrl(), token: apiKey };
26
+ }
15
27
  /**
16
28
  * Get the configured SDK instance
17
29
  *
@@ -24,28 +36,47 @@ function getSdk() {
24
36
  if (cachedSdk) {
25
37
  return cachedSdk;
26
38
  }
27
- const apiKey = config_1.config.getApiKey();
28
- if (!apiKey) {
29
- console.error(chalk_1.default.red('Error: No API key configured.'));
30
- console.log(chalk_1.default.yellow('Run: mx auth login --api-key <your-key>'));
31
- process.exit(1);
32
- }
33
- const apiUrl = config_1.config.getApiUrl();
34
39
  // Create SDK instance with configuration
35
40
  cachedSdk = new typescript_sdk_1.Memnexus({
36
- baseUrl: apiUrl,
37
- token: apiKey,
41
+ ...sdkConfigFromCli(),
38
42
  timeoutMs: 30000,
39
43
  });
40
44
  return cachedSdk;
41
45
  }
42
46
  /**
43
- * Reset the cached SDK instance
47
+ * Get an SDK instance whose transport makes exactly ONE attempt per call.
48
+ *
49
+ * Used by `mx memories recall`/`digest`, which owns its retry policy in
50
+ * lib/retry.ts (withRecallRetry). The default SDK transport retries every
51
+ * failure up to 3 times, POST included, and each digest attempt runs a fresh
52
+ * server-side LLM synthesis (GH #5570).
53
+ *
54
+ * Why a separate instance rather than a per-request override: the SDK's
55
+ * RetryHandler is built once per service from `SdkConfig.retry` when the client
56
+ * is constructed. The per-operation `retry` block the generator writes onto
57
+ * each request (releases/sdk-generator/src/generators/typescript/
58
+ * service-generator.ts) is stored on the Request but never read by the
59
+ * RetryHandler, so the client config is the only lever the SDK honours.
60
+ */
61
+ function getSingleAttemptSdk() {
62
+ if (cachedSingleAttemptSdk) {
63
+ return cachedSingleAttemptSdk;
64
+ }
65
+ cachedSingleAttemptSdk = new typescript_sdk_1.Memnexus({
66
+ ...sdkConfigFromCli(),
67
+ timeoutMs: 30000,
68
+ retry: { attempts: 1 },
69
+ });
70
+ return cachedSingleAttemptSdk;
71
+ }
72
+ /**
73
+ * Reset the cached SDK instances
44
74
  *
45
75
  * Useful for testing or when configuration changes
46
76
  */
47
77
  function resetSdk() {
48
78
  cachedSdk = null;
79
+ cachedSingleAttemptSdk = null;
49
80
  }
50
81
  // Legacy aliases for backwards compatibility during migration
51
82
  exports.getApiClient = getSdk;
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":";;;;;;AAeA,wBAsBC;AAOD,4BAEC;AAqCD,kDAwBC;AA3GD,gEAAuD;AACvD,qCAAkC;AAClC,kDAA0B;AAE1B,sBAAsB;AACtB,IAAI,SAAS,GAAoB,IAAI,CAAC;AAEtC;;;;;;;GAOG;AACH,SAAgB,MAAM;IACpB,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC;IAElC,yCAAyC;IACzC,SAAS,GAAG,IAAI,yBAAQ,CAAC;QACvB,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,SAAgB,QAAQ;IACtB,SAAS,GAAG,IAAI,CAAC;AACnB,CAAC;AAED,8DAA8D;AACjD,QAAA,YAAY,GAAG,MAAM,CAAC;AACtB,QAAA,cAAc,GAAG,QAAQ,CAAC;AAkBvC;;;;;;;;;;;;;;GAcG;AACH,SAAgB,mBAAmB,CAAc,QAAqB;IACpE,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,QAAQ,CAAC,IAAS,CAAC;IAC5B,CAAC;IAED,sCAAsC;IACtC,IAAI,QAAQ,CAAC,GAAG,YAAY,WAAW,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAM,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;YACtC,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,IAAI,QAAQ,CAAC,GAAG,IAAI,OAAO,QAAQ,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO,QAAQ,CAAC,GAAQ,CAAC;IAC3B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/lib/api-client.ts"],"names":[],"mappings":";;;;;;AA2BA,wBAYC;AAiBD,kDAYC;AAOD,4BAGC;AAqCD,kDAwBC;AA3ID,gEAAuD;AACvD,qCAAkC;AAClC,kDAA0B;AAE1B,uBAAuB;AACvB,IAAI,SAAS,GAAoB,IAAI,CAAC;AACtC,IAAI,sBAAsB,GAAoB,IAAI,CAAC;AAEnD,sFAAsF;AACtF,SAAS,gBAAgB;IACvB,MAAM,MAAM,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,eAAM,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,MAAM;IACpB,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,yCAAyC;IACzC,SAAS,GAAG,IAAI,yBAAQ,CAAC;QACvB,GAAG,gBAAgB,EAAE;QACrB,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,mBAAmB;IACjC,IAAI,sBAAsB,EAAE,CAAC;QAC3B,OAAO,sBAAsB,CAAC;IAChC,CAAC;IAED,sBAAsB,GAAG,IAAI,yBAAQ,CAAC;QACpC,GAAG,gBAAgB,EAAE;QACrB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;KACvB,CAAC,CAAC;IAEH,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,SAAgB,QAAQ;IACtB,SAAS,GAAG,IAAI,CAAC;IACjB,sBAAsB,GAAG,IAAI,CAAC;AAChC,CAAC;AAED,8DAA8D;AACjD,QAAA,YAAY,GAAG,MAAM,CAAC;AACtB,QAAA,cAAc,GAAG,QAAQ,CAAC;AAkBvC;;;;;;;;;;;;;;GAcG;AACH,SAAgB,mBAAmB,CAAc,QAAqB;IACpE,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,QAAQ,CAAC,IAAS,CAAC;IAC5B,CAAC;IAED,sCAAsC;IACtC,IAAI,QAAQ,CAAC,GAAG,YAAY,WAAW,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAM,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;YACtC,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,IAAI,QAAQ,CAAC,GAAG,IAAI,OAAO,QAAQ,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO,QAAQ,CAAC,GAAQ,CAAC;IAC3B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -177,4 +177,36 @@ export interface SingleShotRetryOptions {
177
177
  * exponential backoff with jitter; either way capped at `maxWaitMs`.
178
178
  */
179
179
  export declare function withSingleShotRetry<T>(fn: () => Promise<T>, opts: SingleShotRetryOptions): Promise<T>;
180
+ /** Maximum retries (beyond the first attempt) for one recall/digest call. */
181
+ export declare const RECALL_MAX_RETRIES = 1;
182
+ /** Largest server Retry-After the recall path will wait for before its one retry. */
183
+ export declare const RECALL_RETRY_AFTER_CAP_MS = 30000;
184
+ export interface RecallRetryOptions {
185
+ /** Sleep function (injectable for tests). Defaults to the real timer. */
186
+ sleep?: (ms: number) => Promise<void>;
187
+ /**
188
+ * Process retry budget (MX_CLI_MAX_RETRIES). The recall budget is
189
+ * min(this, RECALL_MAX_RETRIES), so 0 disables the recall retry too.
190
+ */
191
+ maxRetries?: number;
192
+ /** Base backoff for the 502/504/408 retry. */
193
+ baseBackoffMs?: number;
194
+ /** Cap on the honoured 429 Retry-After. */
195
+ retryAfterCapMs?: number;
196
+ /** [0,1) source for jitter — injectable for deterministic tests. */
197
+ random?: () => number;
198
+ /** Called before the sleep so the caller can print a STDERR-only notice. */
199
+ onRetry?: SingleShotRetryOptions['onRetry'];
200
+ }
201
+ /**
202
+ * How long to wait before retrying a failed recall/digest attempt, or null when
203
+ * the failure must not be retried. Pure — see the policy table above.
204
+ */
205
+ export declare function recallRetryWaitMs(error: any, opts?: Pick<RecallRetryOptions, 'baseBackoffMs' | 'retryAfterCapMs' | 'random'>): number | null;
206
+ /**
207
+ * Run a recall/digest call with the recall retry policy: at most one retry
208
+ * total, per {@link recallRetryWaitMs}. The final error propagates unchanged so
209
+ * the caller can report its cause.
210
+ */
211
+ export declare function withRecallRetry<T>(fn: () => Promise<T>, opts?: RecallRetryOptions): Promise<T>;
180
212
  //# sourceMappingURL=retry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"AAiBA,iFAAiF;AACjF,wBAAgB,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAEzD;AAED,wDAAwD;AACxD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAEpD;AAED,2EAA2E;AAC3E,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAE7D;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAGpD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAEzC;AA+BD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAUxD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAGhD;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,+FAI9B,CAAC;AAEX;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAQvD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI,CAoBzD;AAED,sEAAsE;AACtE,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAGD,mFAAmF;AACnF,eAAO,MAAM,+BAA+B,IAAI,CAAC;AACjD,6EAA6E;AAC7E,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,mFAAmF;AACnF,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,IAAI,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAA2C,GACjE,MAAM,CAiBR;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAoD,CAAC;AAEzF,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB,yEAAyE;IACzE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IACtB,6EAA6E;IAC7E,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,KAAK,IAAI,CAAC;CACZ;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,IAAI,EAAE,sBAAsB,GAC3B,OAAO,CAAC,CAAC,CAAC,CA8BZ"}
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"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"}
package/dist/lib/retry.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SINGLE_SHOT_MAX_RETRIES = exports.SINGLE_SHOT_MAX_WAIT_MS = exports.SINGLE_SHOT_BASE_BACKOFF_MS = exports.SINGLE_SHOT_MAX_RETRIES_MAX = exports.SINGLE_SHOT_MAX_RETRIES_MIN = exports.SINGLE_SHOT_DEFAULT_MAX_RETRIES = exports.NON_NAME_CONFLICT_409_CODES = void 0;
6
+ exports.RECALL_RETRY_AFTER_CAP_MS = exports.RECALL_MAX_RETRIES = exports.SINGLE_SHOT_MAX_RETRIES = exports.SINGLE_SHOT_MAX_WAIT_MS = exports.SINGLE_SHOT_BASE_BACKOFF_MS = exports.SINGLE_SHOT_MAX_RETRIES_MAX = exports.SINGLE_SHOT_MAX_RETRIES_MIN = exports.SINGLE_SHOT_DEFAULT_MAX_RETRIES = exports.NON_NAME_CONFLICT_409_CODES = void 0;
7
7
  exports.httpStatus = httpStatus;
8
8
  exports.isRateLimitError = isRateLimitError;
9
9
  exports.isServiceUnavailableError = isServiceUnavailableError;
@@ -16,6 +16,8 @@ exports.getRetryAfterMs = getRetryAfterMs;
16
16
  exports.sleep = sleep;
17
17
  exports.resolveMaxRetries = resolveMaxRetries;
18
18
  exports.withSingleShotRetry = withSingleShotRetry;
19
+ exports.recallRetryWaitMs = recallRetryWaitMs;
20
+ exports.withRecallRetry = withRecallRetry;
19
21
  const chalk_1 = __importDefault(require("chalk"));
20
22
  // ── Single-shot retry helper (PO CLI-latency directive, item 3) ──────────────
21
23
  // Scripted single-request commands (`mx memories search/get/recall/create/list/
@@ -204,8 +206,12 @@ function isNameConflictError(error) {
204
206
  function getRetryAfterMs(error) {
205
207
  const data = error?.data ?? error?.response?.data ?? {};
206
208
  const secs = data?.retryAfter ?? data?.retry_after;
207
- if (typeof secs === 'number' && Number.isFinite(secs) && secs >= 0) {
208
- return Math.round(secs * 1000);
209
+ if (typeof secs === 'number' && secs >= 0) {
210
+ // Check the CONVERTED value: a finite `secs` such as 1e308 overflows to
211
+ // Infinity when scaled to ms, and would then be printed as "Infinitys".
212
+ const ms = Math.round(secs * 1000);
213
+ if (Number.isFinite(ms))
214
+ return ms;
209
215
  }
210
216
  const headers = error?.headers ?? error?.response?.headers;
211
217
  let headerVal;
@@ -219,8 +225,9 @@ function getRetryAfterMs(error) {
219
225
  }
220
226
  if (headerVal !== undefined && headerVal !== null) {
221
227
  const n = parseInt(String(headerVal), 10);
222
- if (Number.isFinite(n) && n >= 0)
223
- return n * 1000;
228
+ const ms = n * 1000;
229
+ if (Number.isFinite(ms) && n >= 0)
230
+ return ms;
224
231
  }
225
232
  return null;
226
233
  }
@@ -320,4 +327,81 @@ async function withSingleShotRetry(fn, opts) {
320
327
  }
321
328
  }
322
329
  }
330
+ // ── Recall/digest retry policy (P0 recall fix, step 1 — GH #5570) ─────────────
331
+ // POST /api/memories/digest runs an LLM synthesis on the server for EVERY
332
+ // attempt, and that synthesis shares one Azure deployment with nothing else. The
333
+ // generic idempotent-read policy above (up to 3 retries on 429/502/503/504/408)
334
+ // stacked on the SDK transport's own 3 attempts turned one failing recall into
335
+ // 3-12 server digests, each burning tokens on the deployment that was already
336
+ // returning 429 — so the retries caused the next failures. Measured on dev
337
+ // 2026-10-14; see GH #5570 comment 6176381407.
338
+ //
339
+ // This policy replaces retryRead for the recall/digest call ONLY. The rule is
340
+ // "retry only when a retry cannot add synthesis load the server did not invite":
341
+ //
342
+ // 503 (any reason, incl. deadline_exceeded): NOT retried. deadline_exceeded
343
+ // means the server ran out of its 20s budget; the synthesis it started is
344
+ // not cancelled, so a retry doubles the load that caused the timeout.
345
+ // 500: NOT retried (unchanged at this layer; previously retried by the SDK).
346
+ // In the measured incident this is Azure returning 429 to core-api.
347
+ // 429: retried ONCE, and only when the server supplies a `retryAfter` hint in
348
+ // the response BODY no larger than RECALL_RETRY_AFTER_CAP_MS. A
349
+ // Retry-After HEADER is not honoured on this path: the SDK's SdkError keeps
350
+ // status and body but drops response headers, so a header-only hint never
351
+ // reaches the CLI and is treated as no hint (fail, do not retry).
352
+ // No hint → fail: retrying blind is what amplified the incident. A hint
353
+ // above the cap → fail, rather than retrying before the server asked.
354
+ // 502/504/408 (gateway/transport): retried ONCE with a short backoff.
355
+ // Anything else (aborts, 4xx): never retried.
356
+ //
357
+ // The retry budget is one retry TOTAL per invocation, across all statuses, so a
358
+ // recall makes at most 2 server attempts. MX_CLI_MAX_RETRIES=0 still disables it.
359
+ /** Maximum retries (beyond the first attempt) for one recall/digest call. */
360
+ exports.RECALL_MAX_RETRIES = 1;
361
+ /** Largest server Retry-After the recall path will wait for before its one retry. */
362
+ exports.RECALL_RETRY_AFTER_CAP_MS = 30_000;
363
+ /**
364
+ * How long to wait before retrying a failed recall/digest attempt, or null when
365
+ * the failure must not be retried. Pure — see the policy table above.
366
+ */
367
+ function recallRetryWaitMs(error, opts = {}) {
368
+ const status = httpStatus(error);
369
+ if (status === 429) {
370
+ const hinted = getRetryAfterMs(error);
371
+ const cap = opts.retryAfterCapMs ?? exports.RECALL_RETRY_AFTER_CAP_MS;
372
+ if (hinted === null || hinted > cap)
373
+ return null;
374
+ return hinted;
375
+ }
376
+ if (status === 502 || status === 504 || status === 408) {
377
+ const base = opts.baseBackoffMs ?? exports.SINGLE_SHOT_BASE_BACKOFF_MS;
378
+ const random = opts.random ?? Math.random;
379
+ return base + Math.floor(random() * 250);
380
+ }
381
+ return null;
382
+ }
383
+ /**
384
+ * Run a recall/digest call with the recall retry policy: at most one retry
385
+ * total, per {@link recallRetryWaitMs}. The final error propagates unchanged so
386
+ * the caller can report its cause.
387
+ */
388
+ async function withRecallRetry(fn, opts = {}) {
389
+ const maxRetries = Math.min(exports.RECALL_MAX_RETRIES, opts.maxRetries ?? exports.SINGLE_SHOT_MAX_RETRIES);
390
+ const doSleep = opts.sleep ?? sleep;
391
+ let attempt = 0;
392
+ for (;;) {
393
+ try {
394
+ return await fn();
395
+ }
396
+ catch (error) {
397
+ const waitMs = attempt < maxRetries ? recallRetryWaitMs(error, opts) : null;
398
+ if (waitMs === null) {
399
+ throw error;
400
+ }
401
+ attempt++;
402
+ opts.onRetry?.({ attempt, maxRetries, waitMs, status: httpStatus(error) });
403
+ await doSleep(waitMs);
404
+ }
405
+ }
406
+ }
323
407
  //# sourceMappingURL=retry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memnexus-ai/cli",
3
- "version": "1.7.236",
3
+ "version": "1.7.238",
4
4
  "description": "Command-line interface for MemNexus Core API",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -35,7 +35,7 @@
35
35
  "node": ">=18.0.0"
36
36
  },
37
37
  "dependencies": {
38
- "@memnexus-ai/typescript-sdk": "^1.77.4",
38
+ "@memnexus-ai/typescript-sdk": "^1.77.16",
39
39
  "@modelcontextprotocol/sdk": "^1.27.1",
40
40
  "axios": "^1.13.6",
41
41
  "chalk": "^5.3.0",