scoutline 0.2.0 → 0.6.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.
Files changed (110) hide show
  1. package/README.md +240 -18
  2. package/dist/capabilities/diagnostics.d.ts +70 -32
  3. package/dist/capabilities/diagnostics.d.ts.map +1 -1
  4. package/dist/capabilities/diagnostics.js +97 -46
  5. package/dist/capabilities/diagnostics.js.map +1 -1
  6. package/dist/capabilities/reader.d.ts +227 -0
  7. package/dist/capabilities/reader.d.ts.map +1 -0
  8. package/dist/capabilities/reader.js +100 -0
  9. package/dist/capabilities/reader.js.map +1 -0
  10. package/dist/capabilities/repository.d.ts +221 -0
  11. package/dist/capabilities/repository.d.ts.map +1 -0
  12. package/dist/capabilities/repository.js +172 -0
  13. package/dist/capabilities/repository.js.map +1 -0
  14. package/dist/commands/cache.d.ts +106 -0
  15. package/dist/commands/cache.d.ts.map +1 -0
  16. package/dist/commands/cache.js +203 -0
  17. package/dist/commands/cache.js.map +1 -0
  18. package/dist/commands/doctor.d.ts +17 -6
  19. package/dist/commands/doctor.d.ts.map +1 -1
  20. package/dist/commands/doctor.js +42 -17
  21. package/dist/commands/doctor.js.map +1 -1
  22. package/dist/commands/read.d.ts +74 -14
  23. package/dist/commands/read.d.ts.map +1 -1
  24. package/dist/commands/read.js +257 -117
  25. package/dist/commands/read.js.map +1 -1
  26. package/dist/commands/repo.d.ts +53 -7
  27. package/dist/commands/repo.d.ts.map +1 -1
  28. package/dist/commands/repo.js +104 -123
  29. package/dist/commands/repo.js.map +1 -1
  30. package/dist/commands/repository-explorer.d.ts +147 -0
  31. package/dist/commands/repository-explorer.d.ts.map +1 -0
  32. package/dist/commands/repository-explorer.js +550 -0
  33. package/dist/commands/repository-explorer.js.map +1 -0
  34. package/dist/index.d.ts +20 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +209 -34
  37. package/dist/index.js.map +1 -1
  38. package/dist/lib/cache.d.ts +123 -18
  39. package/dist/lib/cache.d.ts.map +1 -1
  40. package/dist/lib/cache.js +324 -49
  41. package/dist/lib/cache.js.map +1 -1
  42. package/dist/lib/errors.d.ts +24 -1
  43. package/dist/lib/errors.d.ts.map +1 -1
  44. package/dist/lib/errors.js +33 -2
  45. package/dist/lib/errors.js.map +1 -1
  46. package/dist/lib/execution.d.ts +119 -5
  47. package/dist/lib/execution.d.ts.map +1 -1
  48. package/dist/lib/execution.js +216 -10
  49. package/dist/lib/execution.js.map +1 -1
  50. package/dist/lib/index.d.ts +1 -1
  51. package/dist/lib/index.d.ts.map +1 -1
  52. package/dist/lib/index.js +1 -1
  53. package/dist/lib/index.js.map +1 -1
  54. package/dist/lib/mcp-client.d.ts +29 -5
  55. package/dist/lib/mcp-client.d.ts.map +1 -1
  56. package/dist/lib/mcp-client.js +88 -88
  57. package/dist/lib/mcp-client.js.map +1 -1
  58. package/dist/lib/tool-cache.d.ts +86 -0
  59. package/dist/lib/tool-cache.d.ts.map +1 -0
  60. package/dist/lib/tool-cache.js +123 -0
  61. package/dist/lib/tool-cache.js.map +1 -0
  62. package/dist/providers/minimax/adapter.d.ts +6 -4
  63. package/dist/providers/minimax/adapter.d.ts.map +1 -1
  64. package/dist/providers/minimax/adapter.js +64 -57
  65. package/dist/providers/minimax/adapter.js.map +1 -1
  66. package/dist/providers/minimax/coding-plan-client.d.ts +60 -0
  67. package/dist/providers/minimax/coding-plan-client.d.ts.map +1 -0
  68. package/dist/providers/minimax/coding-plan-client.js +204 -0
  69. package/dist/providers/minimax/coding-plan-client.js.map +1 -0
  70. package/dist/providers/minimax/media.d.ts +60 -6
  71. package/dist/providers/minimax/media.d.ts.map +1 -1
  72. package/dist/providers/minimax/media.js +147 -7
  73. package/dist/providers/minimax/media.js.map +1 -1
  74. package/dist/providers/minimax/quota-client.d.ts +13 -6
  75. package/dist/providers/minimax/quota-client.d.ts.map +1 -1
  76. package/dist/providers/minimax/quota-client.js +5 -0
  77. package/dist/providers/minimax/quota-client.js.map +1 -1
  78. package/dist/providers/minimax/vision-attestations.d.ts +23 -0
  79. package/dist/providers/minimax/vision-attestations.d.ts.map +1 -1
  80. package/dist/providers/minimax/vision-attestations.js +35 -10
  81. package/dist/providers/minimax/vision-attestations.js.map +1 -1
  82. package/dist/providers/minimax/vision-conformance.d.ts +8 -6
  83. package/dist/providers/minimax/vision-conformance.d.ts.map +1 -1
  84. package/dist/providers/minimax/vision-conformance.js +8 -6
  85. package/dist/providers/minimax/vision-conformance.js.map +1 -1
  86. package/dist/providers/minimax/vision-revisions.d.ts +8 -1
  87. package/dist/providers/minimax/vision-revisions.d.ts.map +1 -1
  88. package/dist/providers/minimax/vision-revisions.js +13 -6
  89. package/dist/providers/minimax/vision-revisions.js.map +1 -1
  90. package/dist/providers/selection.d.ts +3 -3
  91. package/dist/providers/selection.js +3 -3
  92. package/dist/providers/types.d.ts +66 -32
  93. package/dist/providers/types.d.ts.map +1 -1
  94. package/dist/providers/types.js.map +1 -1
  95. package/dist/providers/zai/adapter.d.ts.map +1 -1
  96. package/dist/providers/zai/adapter.js +71 -5
  97. package/dist/providers/zai/adapter.js.map +1 -1
  98. package/dist/providers/zai/encoded-error.d.ts +90 -0
  99. package/dist/providers/zai/encoded-error.d.ts.map +1 -0
  100. package/dist/providers/zai/encoded-error.js +169 -0
  101. package/dist/providers/zai/encoded-error.js.map +1 -0
  102. package/dist/providers/zai/reader.d.ts +82 -0
  103. package/dist/providers/zai/reader.d.ts.map +1 -0
  104. package/dist/providers/zai/reader.js +490 -0
  105. package/dist/providers/zai/reader.js.map +1 -0
  106. package/dist/providers/zai/repository.d.ts +76 -0
  107. package/dist/providers/zai/repository.d.ts.map +1 -0
  108. package/dist/providers/zai/repository.js +715 -0
  109. package/dist/providers/zai/repository.js.map +1 -0
  110. package/package.json +3 -3
@@ -26,12 +26,12 @@
26
26
  */
27
27
  import crypto from "node:crypto";
28
28
  import { visionOperationToCapability } from "../../capabilities/vision.js";
29
- import { ApiError, AuthError, ConfigurationError, NetworkError, TimeoutError, UnsupportedCapabilityError, ValidationError, UnsupportedOptionError, } from "../../lib/errors.js";
29
+ import { ApiError, AuthError, ConfigurationError, NetworkError, QuotaError, TimeoutError, UnsupportedCapabilityError, ValidationError, UnsupportedOptionError, } from "../../lib/errors.js";
30
30
  import { loadMiniMaxConfig } from "./config.js";
31
- import { createMiniMaxSdk } from "./sdk-client.js";
32
- import { resolveImageSource } from "./media.js";
31
+ import { resolveImageSource, convertToDataUri } from "./media.js";
33
32
  import { createMiniMaxQuotaCapability } from "./quota.js";
34
- import { fetchMiniMaxQuota, } from "./quota-client.js";
33
+ import { fetchMiniMaxQuota } from "./quota-client.js";
34
+ import { fetchMiniMaxSearch, fetchMiniMaxVlm, } from "./coding-plan-client.js";
35
35
  import { isMiniMaxVisionOperationSupported, SPECIALIZED_VISION_OPERATION_SET, SPECIALIZED_VISION_OPERATIONS, } from "./vision-conformance.js";
36
36
  import { MINIMAX_VISION_MAPPINGS } from "./vision-mappings.generated.js";
37
37
  // ---------------------------------------------------------------------------
@@ -101,10 +101,11 @@ function normalizeMiniMaxSearchResults(raw) {
101
101
  /**
102
102
  * Resolve a stable HTTP-style status code for retry classification.
103
103
  * Explicit terminal client errors (404, 400, 410, 422) map to their
104
- * real codes; retryable server errors (500, 502, 503, 504) map to
105
- * themselves. Unknown failures default to 500 (transient). When the
106
- * caller already carries a numeric status (a typed ApiError), that
107
- * status is honoured directly (DESIGN.md §10).
104
+ * real codes; transient failures map to a representative status in
105
+ * the retryable set (429 or any 5xx 500..599 inclusive, per DESIGN.md
106
+ * §18 / FR-090). Unknown failures default to 500 (transient). When
107
+ * the caller already carries a numeric status (a typed ApiError), that
108
+ * status is honoured directly.
108
109
  */
109
110
  function inferStatusCode(lower, known) {
110
111
  if (typeof known === "number" && Number.isFinite(known))
@@ -128,6 +129,9 @@ function inferStatusCode(lower, known) {
128
129
  return 500;
129
130
  }
130
131
  function normalizeMiniMaxError(error) {
132
+ // C1: QuotaError pass-through — terminal retry guarantee preserved.
133
+ if (error instanceof QuotaError)
134
+ return error;
131
135
  // Configuration/option/validation errors carry clean, human-authored
132
136
  // messages and are safe to surface verbatim.
133
137
  if (error instanceof ValidationError ||
@@ -139,7 +143,8 @@ function normalizeMiniMaxError(error) {
139
143
  // Provider response body embedded upstream never survives. Code +
140
144
  // statusCode (retry signal) are preserved.
141
145
  if (error instanceof AuthError) {
142
- return new AuthError("MiniMax authentication failed");
146
+ // C2: 2-arg form keeps MINIMAX_API_KEY in the rendered help text.
147
+ return new AuthError("MiniMax authentication failed", "MINIMAX_API_KEY");
143
148
  }
144
149
  if (error instanceof NetworkError) {
145
150
  return new NetworkError("MiniMax network error");
@@ -148,11 +153,14 @@ function normalizeMiniMaxError(error) {
148
153
  // Fixup D: preserve the original error's duration instead of
149
154
  // reconstructing it from an ambient process.env that may differ from
150
155
  // the injected env. The rewrapped error carries the same duration.
151
- return new TimeoutError(error.durationMs);
156
+ // G4: MINIMAX_TIMEOUT help text surfaces the right env var name.
157
+ return new TimeoutError(error.durationMs, "Try again or increase timeout with MINIMAX_TIMEOUT env var");
152
158
  }
153
159
  if (error instanceof ApiError) {
160
+ // C2: preserve the original message so embedded hints (e.g. the 2038
161
+ // verification URL) survive the rewrap.
154
162
  const statusCode = inferStatusCode("", error.statusCode);
155
- return new ApiError("MiniMax request failed", statusCode);
163
+ return new ApiError(error.message, statusCode);
156
164
  }
157
165
  const message = error instanceof Error ? error.message : String(error);
158
166
  const lower = message.toLowerCase();
@@ -178,7 +186,7 @@ function normalizeMiniMaxError(error) {
178
186
  return new ApiError("MiniMax search request failed", inferStatusCode(lower));
179
187
  }
180
188
  function createMiniMaxSearchCapability(options) {
181
- const { env, sdkConstructor } = options;
189
+ const { env, transport } = options;
182
190
  const capability = {
183
191
  validate(request) {
184
192
  if (!request || typeof request.query !== "string" || request.query.trim() === "") {
@@ -203,12 +211,11 @@ function createMiniMaxSearchCapability(options) {
203
211
  };
204
212
  },
205
213
  async invoke(request) {
206
- // Validate before any credential access or SDK construction.
214
+ // Validate before any credential access or transport call.
207
215
  capability.validate(request);
208
216
  const config = loadMiniMaxConfig(env);
209
217
  try {
210
- const sdk = createMiniMaxSdk(config, sdkConstructor);
211
- const raw = await sdk.search.query(request.query);
218
+ const raw = await fetchMiniMaxSearch(config, request.query, transport);
212
219
  return normalizeMiniMaxSearchResults(raw);
213
220
  }
214
221
  catch (error) {
@@ -251,10 +258,12 @@ function supportsMiniMaxVisionOperation(operation, isSpecialized) {
251
258
  return false;
252
259
  }
253
260
  /**
254
- * Build the MiniMax Vision Capability. Maps `interpret-image` to
255
- * `sdk.vision.describe`. The validated image source maps to `image`; the
256
- * instruction maps to the optional `prompt`. Only a nonempty text result
257
- * (extracted from the characterized `{ content }` envelope) is normalized.
261
+ * Build the MiniMax Vision Capability. Maps `interpret-image` to the
262
+ * MiniMax Coding Plan VLM endpoint. The validated image source is
263
+ * resolved and converted to a data URI before the transport call; the
264
+ * instruction maps to the optional `prompt`. Only a nonempty text
265
+ * result (extracted from the characterized `{ content }` envelope) is
266
+ * normalized.
258
267
  *
259
268
  * Specialized operations route through their operation-specific mapping
260
269
  * Module when the support check returns true. The support decision is
@@ -263,21 +272,21 @@ function supportsMiniMaxVisionOperation(operation, isSpecialized) {
263
272
  * so the routing branch can be exercised without flipping a compiled
264
273
  * attestation (DESIGN.md §15).
265
274
  *
266
- * Media is resolved after the configuration check; the SDK performs
267
- * data-URI conversion, so the media module never reads file content.
268
- * Vision never uses the response cache (FR-022); shared execution owns
269
- * the retry policy.
275
+ * Media is resolved after the configuration check; `convertToDataUri`
276
+ * performs the data-URI conversion (HTTP fetch + local read). Vision
277
+ * never uses the response cache (FR-022); shared execution owns the
278
+ * retry policy.
270
279
  */
271
280
  function createMiniMaxVisionCapability(options) {
272
- const { env, sdkConstructor, isSpecializedVisionOperationSupported } = options;
281
+ const { env, transport, isSpecializedVisionOperationSupported } = options;
273
282
  const isSpecialized = resolveSpecializedSupportCheck(isSpecializedVisionOperationSupported);
274
283
  const capability = {
275
284
  supports(operation) {
276
285
  return supportsMiniMaxVisionOperation(operation, isSpecialized);
277
286
  },
278
287
  async invoke(request) {
279
- // Fail closed BEFORE any credential, media, or SDK access. The
280
- // support decision is the single registry-driven gate; every
288
+ // Fail closed BEFORE any credential, media, or transport access.
289
+ // The support decision is the single registry-driven gate; every
281
290
  // specialized operation stays unsupported at P5-02 because every
282
291
  // registry entry is pending.
283
292
  if (!supportsMiniMaxVisionOperation(request.operation, isSpecialized)) {
@@ -299,25 +308,33 @@ function createMiniMaxVisionCapability(options) {
299
308
  }
300
309
  // Specialized requests always carry a `source`; the support gate
301
310
  // above excludes `diff` (no `source`) and `video` (unsupported).
302
- const image = resolveImageSource(request.source);
311
+ const resolved = resolveImageSource(request.source);
303
312
  const prompt = mapping.composePrompt(request);
304
313
  try {
305
- const sdk = createMiniMaxSdk(config, sdkConstructor);
306
- const raw = await sdk.vision.describe({ image, prompt });
314
+ // Cast safe: the global `fetch` (production default when
315
+ // `transport.fetch` is undefined) returns the full `Response`
316
+ // which satisfies both ProviderQuotaFetch and the wider
317
+ // ProviderImageFetch that `convertToDataUri` needs. Test
318
+ // fakes via makeResponse also provide `headers` + `arrayBuffer`
319
+ // by default. Widening `MiniMaxTransportDeps.fetch` instead
320
+ // would force quota tests' fakes to carry unused fields.
321
+ const dataUri = await convertToDataUri(resolved, transport);
322
+ const raw = await fetchMiniMaxVlm(config, dataUri, prompt, transport);
307
323
  return mapping.normalizeResult(raw);
308
324
  }
309
325
  catch (error) {
310
326
  throw normalizeMiniMaxError(error);
311
327
  }
312
328
  }
313
- const image = resolveImageSource(request.source);
329
+ const resolved = resolveImageSource(request.source);
330
+ const prompt = request.instruction && request.instruction.length > 0
331
+ ? request.instruction
332
+ : "Describe the image.";
314
333
  try {
315
- const sdk = createMiniMaxSdk(config, sdkConstructor);
316
- const describeRequest = { image };
317
- if (request.instruction && request.instruction.length > 0) {
318
- describeRequest.prompt = request.instruction;
319
- }
320
- const raw = await sdk.vision.describe(describeRequest);
334
+ // Cast safe — see the matching call site in the specialized
335
+ // branch above for the full rationale.
336
+ const dataUri = await convertToDataUri(resolved, transport);
337
+ const raw = await fetchMiniMaxVlm(config, dataUri, prompt, transport);
321
338
  return normalizeMiniMaxVisionResult(raw);
322
339
  }
323
340
  catch (error) {
@@ -371,26 +388,16 @@ function createMiniMaxDiagnosticsCapability(options) {
371
388
  /**
372
389
  * Build the MiniMax Provider Descriptor. The descriptor advertises the
373
390
  * Search Capability and constructs an Adapter whose `search` Capability
374
- * owns credentials, SDK lifecycle, Provider field mapping, and failure
375
- * normalization. Construction is side-effect-free; the SDK is built and
376
- * torn down per invocation. Tests pass `sdkConstructor`; production uses
377
- * the no-argument factory which binds the pinned `mmx-cli/sdk`.
391
+ * owns credentials, transport, Provider field mapping, and failure
392
+ * normalization. Construction is side-effect-free; the transport is
393
+ * invoked per Capability call. Tests pass `transport` (typically a
394
+ * fake-fetch wrapper); production uses the no-argument factory which
395
+ * resolves to the global `fetch` and timers inside each transport
396
+ * Module.
378
397
  */
379
398
  export function createMiniMaxDescriptor(dependencies) {
380
- const sdkConstructor = dependencies?.sdkConstructor;
399
+ const transport = dependencies?.transport;
381
400
  const isSpecializedVisionOperationSupported = dependencies?.isSpecializedVisionOperationSupported;
382
- // Direct quota transport injection (tests). Production uses the
383
- // global fetch and timers resolved inside the quota client.
384
- const quotaTransport = {};
385
- if (dependencies?.quotaFetch) {
386
- quotaTransport.fetch = dependencies.quotaFetch;
387
- }
388
- if (dependencies?.quotaSetTimeout) {
389
- quotaTransport.setTimeout = dependencies.quotaSetTimeout;
390
- }
391
- if (dependencies?.quotaClearTimeout) {
392
- quotaTransport.clearTimeout = dependencies.quotaClearTimeout;
393
- }
394
401
  return {
395
402
  id: "minimax",
396
403
  isConfigured(env) {
@@ -423,18 +430,18 @@ export function createMiniMaxDescriptor(dependencies) {
423
430
  create(context) {
424
431
  const search = createMiniMaxSearchCapability({
425
432
  env: context.env,
426
- sdkConstructor,
433
+ transport,
427
434
  });
428
435
  const vision = createMiniMaxVisionCapability({
429
436
  env: context.env,
430
- sdkConstructor,
437
+ transport,
431
438
  isSpecializedVisionOperationSupported,
432
439
  });
433
- const quotaOptions = { env: context.env, ...quotaTransport };
440
+ const quotaOptions = { env: context.env, ...transport };
434
441
  const quota = createMiniMaxQuotaCapability(quotaOptions);
435
442
  const diagnostics = createMiniMaxDiagnosticsCapability({
436
443
  env: context.env,
437
- ...quotaTransport,
444
+ ...transport,
438
445
  });
439
446
  return { id: "minimax", search, vision, quota, diagnostics };
440
447
  },
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/providers/minimax/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/providers/minimax/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * MiniMax Coding Plan direct transport (DESIGN.md §12, P4-02).
3
+ *
4
+ * The pinned `mmx-cli/sdk` 1.0.16 does not preserve an arbitrary
5
+ * configured host for the Coding Plan endpoints. This module performs
6
+ * direct POSTs against the two `/v1/coding_plan/*` endpoints with an
7
+ * `Authorization: Bearer <apiKey>` header so `MINIMAX_BASE_URL` is
8
+ * authoritative. There is NO internal retry — shared execution owns
9
+ * retry policy. Fetch and timer are injectable for tests.
10
+ *
11
+ * Mirrors `providers/minimax/quota-client.ts` line-for-line in
12
+ * structure; that module is the canon direct-transport pattern. The
13
+ * `MiniMaxTransportDeps` shape is the renamed `MiniMaxQuotaClientDeps`
14
+ * (same four fields — rename, not superset).
15
+ *
16
+ * Boundary rules (ARCHITECTURE.md §2):
17
+ * - May import Adapter-local config and normalized errors.
18
+ * - May import `ProviderQuotaFetch` from `providers/types.ts`.
19
+ * - Must NOT import `mmx-cli/sdk`, command presentation, or another
20
+ * Provider's Adapter.
21
+ * - Must NOT perform field normalization — the Adapter owns that.
22
+ */
23
+ import type { MiniMaxConfig } from "./config.js";
24
+ import type { ProviderQuotaFetch } from "../types.js";
25
+ /** Injectable transport dependencies (renamed from `MiniMaxQuotaClientDeps`). */
26
+ export interface MiniMaxTransportDeps {
27
+ readonly fetch?: ProviderQuotaFetch;
28
+ readonly setTimeout?: typeof setTimeout;
29
+ readonly clearTimeout?: typeof clearTimeout;
30
+ readonly env?: NodeJS.ProcessEnv;
31
+ }
32
+ /** Raw MiniMax search response shape (search endpoint). */
33
+ export interface MiniMaxRawSearchResponse {
34
+ organic?: unknown[];
35
+ related_searches?: unknown[];
36
+ base_resp?: unknown;
37
+ }
38
+ /** Raw MiniMax VLM response shape (vision-language endpoint). */
39
+ export interface MiniMaxRawVlmResponse {
40
+ content?: unknown;
41
+ base_resp?: unknown;
42
+ }
43
+ /**
44
+ * Perform ONE POST against the MiniMax Coding Plan search endpoint. No
45
+ * retry; no response body in public errors. Returns the parsed JSON
46
+ * body (raw; the Adapter post-processes into normalized search
47
+ * sources).
48
+ */
49
+ export declare function fetchMiniMaxSearch(config: MiniMaxConfig, query: string, deps?: MiniMaxTransportDeps): Promise<MiniMaxRawSearchResponse>;
50
+ /**
51
+ * Perform ONE POST against the MiniMax Coding Plan VLM endpoint. No
52
+ * retry; no response body in public errors. Returns the parsed JSON
53
+ * body (raw; the Adapter post-processes the content field).
54
+ *
55
+ * `image` is the pre-resolved data URI produced by the Adapter's
56
+ * `convertToDataUri` step. The transport does NOT perform any
57
+ * data-URI conversion.
58
+ */
59
+ export declare function fetchMiniMaxVlm(config: MiniMaxConfig, image: string, prompt: string, deps?: MiniMaxTransportDeps): Promise<MiniMaxRawVlmResponse>;
60
+ //# sourceMappingURL=coding-plan-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coding-plan-client.d.ts","sourceRoot":"","sources":["../../../src/providers/minimax/coding-plan-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAatD,iFAAiF;AACjF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,UAAU,CAAC;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,YAAY,CAAC;IAC5C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CAClC;AAED,2DAA2D;AAC3D,MAAM,WAAW,wBAAwB;IACvC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,iEAAiE;AACjE,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAoLD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC,wBAAwB,CAAC,CAQnC;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CAQhC"}
@@ -0,0 +1,204 @@
1
+ /**
2
+ * MiniMax Coding Plan direct transport (DESIGN.md §12, P4-02).
3
+ *
4
+ * The pinned `mmx-cli/sdk` 1.0.16 does not preserve an arbitrary
5
+ * configured host for the Coding Plan endpoints. This module performs
6
+ * direct POSTs against the two `/v1/coding_plan/*` endpoints with an
7
+ * `Authorization: Bearer <apiKey>` header so `MINIMAX_BASE_URL` is
8
+ * authoritative. There is NO internal retry — shared execution owns
9
+ * retry policy. Fetch and timer are injectable for tests.
10
+ *
11
+ * Mirrors `providers/minimax/quota-client.ts` line-for-line in
12
+ * structure; that module is the canon direct-transport pattern. The
13
+ * `MiniMaxTransportDeps` shape is the renamed `MiniMaxQuotaClientDeps`
14
+ * (same four fields — rename, not superset).
15
+ *
16
+ * Boundary rules (ARCHITECTURE.md §2):
17
+ * - May import Adapter-local config and normalized errors.
18
+ * - May import `ProviderQuotaFetch` from `providers/types.ts`.
19
+ * - Must NOT import `mmx-cli/sdk`, command presentation, or another
20
+ * Provider's Adapter.
21
+ * - Must NOT perform field normalization — the Adapter owns that.
22
+ */
23
+ import { createRequire } from "node:module";
24
+ import { ApiError, AuthError, NetworkError, QuotaError, TimeoutError, } from "../../lib/errors.js";
25
+ const require = createRequire(import.meta.url);
26
+ const { version: VERSION } = require("../../../package.json");
27
+ const SEARCH_PATH = "/v1/coding_plan/search";
28
+ const VLM_PATH = "/v1/coding_plan/vlm";
29
+ const DEFAULT_TIMEOUT_MS = 30000;
30
+ const MM_API_SOURCE = "Scoutline";
31
+ const USER_AGENT = `scoutline/${VERSION}`;
32
+ const TIMEOUT_HELP_TEXT = "Try again or increase timeout with MINIMAX_TIMEOUT env var";
33
+ function resolveTimeoutMs(env) {
34
+ const raw = parseInt(env.MINIMAX_TIMEOUT || String(DEFAULT_TIMEOUT_MS), 10);
35
+ return Number.isFinite(raw) && raw > 0 ? raw : DEFAULT_TIMEOUT_MS;
36
+ }
37
+ /**
38
+ * Layer 1 — HTTP-status mapping. Runs BEFORE the body is parsed; on a
39
+ * non-200 response we discard the body and throw a typed error.
40
+ *
41
+ * `timeoutMs` is forwarded so 408/504 can throw `TimeoutError`
42
+ * carrying the configured duration (and the `MINIMAX_TIMEOUT` help
43
+ * text). The transport never embeds credential material in any
44
+ * error message.
45
+ */
46
+ function mapStatusError(status, timeoutMs) {
47
+ if (status === 401 || status === 403) {
48
+ return new AuthError("MiniMax authentication failed", "MINIMAX_API_KEY");
49
+ }
50
+ if (status === 408 || status === 504) {
51
+ return new TimeoutError(timeoutMs, TIMEOUT_HELP_TEXT);
52
+ }
53
+ if (status === 429) {
54
+ return new ApiError("MiniMax rate limit exceeded", 429);
55
+ }
56
+ if (status === 400 || status === 404 || status === 410 || status === 422) {
57
+ return new ApiError("MiniMax request failed", status);
58
+ }
59
+ if (status >= 500) {
60
+ return new ApiError("MiniMax request failed", status);
61
+ }
62
+ return new ApiError("MiniMax request failed", status);
63
+ }
64
+ /**
65
+ * Layer 2 — `base_resp.status_code` mapping. Runs ONLY when HTTP 200
66
+ * AND body parses as JSON. If body is missing `base_resp`, the body
67
+ * is treated as malformed and a 500-status `ApiError` is thrown.
68
+ */
69
+ function mapBaseRespError(statusCode) {
70
+ if (statusCode === 0 || statusCode === undefined || statusCode === null) {
71
+ // status_code === 0 is success; undefined/null are also treated as
72
+ // "no business error" so a missing-but-present `base_resp` with no
73
+ // status_code field doesn't break the success path. The malformed
74
+ // branch handles the missing-`base_resp`-entirely case.
75
+ return null;
76
+ }
77
+ if (typeof statusCode !== "number" || !Number.isFinite(statusCode)) {
78
+ return new ApiError("MiniMax returned a malformed response", 500);
79
+ }
80
+ if (statusCode === 1002 || statusCode === 1039) {
81
+ return new ApiError("MiniMax content filter rejected the request", 400);
82
+ }
83
+ if (statusCode === 1004) {
84
+ return new AuthError("MiniMax authentication failed", "MINIMAX_API_KEY");
85
+ }
86
+ if (statusCode === 1028 || statusCode === 1030) {
87
+ return new QuotaError();
88
+ }
89
+ if (statusCode === 2038) {
90
+ return new ApiError("MiniMax account requires real-name verification. Visit https://platform.minimaxi.com/user-center/basic-information to resolve.", 403);
91
+ }
92
+ if (statusCode === 2061) {
93
+ return new ApiError("MiniMax model not available on current Token Plan", 403);
94
+ }
95
+ return new ApiError("MiniMax request failed", 500);
96
+ }
97
+ function isPlainObject(value) {
98
+ return typeof value === "object" && value !== null && !Array.isArray(value);
99
+ }
100
+ function getBaseRespStatusCode(body) {
101
+ if (!isPlainObject(body)) {
102
+ return { statusCode: undefined, malformed: true };
103
+ }
104
+ const baseResp = body.base_resp;
105
+ if (baseResp === undefined) {
106
+ return { statusCode: undefined, malformed: true };
107
+ }
108
+ if (!isPlainObject(baseResp)) {
109
+ return { statusCode: undefined, malformed: true };
110
+ }
111
+ return { statusCode: baseResp.status_code, malformed: false };
112
+ }
113
+ function normalizeTransportError(err, timeoutMs) {
114
+ if (err instanceof AuthError ||
115
+ err instanceof ApiError ||
116
+ err instanceof QuotaError ||
117
+ err instanceof TimeoutError) {
118
+ return err;
119
+ }
120
+ if (err instanceof Error) {
121
+ if (err.name === "AbortError") {
122
+ return new TimeoutError(timeoutMs, TIMEOUT_HELP_TEXT);
123
+ }
124
+ const lower = err.message.toLowerCase();
125
+ if (lower.includes("fetch") ||
126
+ lower.includes("econnrefused") ||
127
+ lower.includes("econnreset") ||
128
+ lower.includes("enotfound") ||
129
+ lower.includes("network")) {
130
+ return new NetworkError("MiniMax network error");
131
+ }
132
+ }
133
+ return new ApiError("MiniMax request failed", 500);
134
+ }
135
+ async function postCodingPlanJson(config, path, body, deps, endpointLabel) {
136
+ const f = deps.fetch ?? fetch;
137
+ const setT = deps.setTimeout ?? setTimeout;
138
+ const clearT = deps.clearTimeout ?? clearTimeout;
139
+ const env = deps.env ?? process.env;
140
+ const timeoutMs = resolveTimeoutMs(env);
141
+ const url = `${config.baseUrl}${path}`;
142
+ const controller = new AbortController();
143
+ const timeoutId = setT(() => controller.abort(), timeoutMs);
144
+ try {
145
+ const res = await f(url, {
146
+ method: "POST",
147
+ headers: {
148
+ Authorization: `Bearer ${config.apiKey}`,
149
+ "Content-Type": "application/json",
150
+ "MM-API-Source": MM_API_SOURCE,
151
+ "User-Agent": USER_AGENT,
152
+ },
153
+ body: JSON.stringify(body),
154
+ signal: controller.signal,
155
+ });
156
+ clearT(timeoutId);
157
+ if (!res.ok) {
158
+ await res.text().catch(() => { });
159
+ throw mapStatusError(res.status, timeoutMs);
160
+ }
161
+ let parsed;
162
+ try {
163
+ parsed = await res.json();
164
+ }
165
+ catch {
166
+ throw new ApiError(`MiniMax ${endpointLabel} returned a malformed response`, 500);
167
+ }
168
+ const { statusCode, malformed } = getBaseRespStatusCode(parsed);
169
+ if (malformed) {
170
+ throw new ApiError(`MiniMax ${endpointLabel} returned a malformed response`, 500);
171
+ }
172
+ const mapped = mapBaseRespError(statusCode);
173
+ if (mapped) {
174
+ throw mapped;
175
+ }
176
+ return parsed;
177
+ }
178
+ catch (err) {
179
+ clearT(timeoutId);
180
+ throw normalizeTransportError(err, timeoutMs);
181
+ }
182
+ }
183
+ /**
184
+ * Perform ONE POST against the MiniMax Coding Plan search endpoint. No
185
+ * retry; no response body in public errors. Returns the parsed JSON
186
+ * body (raw; the Adapter post-processes into normalized search
187
+ * sources).
188
+ */
189
+ export async function fetchMiniMaxSearch(config, query, deps = {}) {
190
+ return postCodingPlanJson(config, SEARCH_PATH, { q: query }, deps, "search");
191
+ }
192
+ /**
193
+ * Perform ONE POST against the MiniMax Coding Plan VLM endpoint. No
194
+ * retry; no response body in public errors. Returns the parsed JSON
195
+ * body (raw; the Adapter post-processes the content field).
196
+ *
197
+ * `image` is the pre-resolved data URI produced by the Adapter's
198
+ * `convertToDataUri` step. The transport does NOT perform any
199
+ * data-URI conversion.
200
+ */
201
+ export async function fetchMiniMaxVlm(config, image, prompt, deps = {}) {
202
+ return postCodingPlanJson(config, VLM_PATH, { prompt, image_url: image }, deps, "vlm");
203
+ }
204
+ //# sourceMappingURL=coding-plan-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coding-plan-client.js","sourceRoot":"","sources":["../../../src/providers/minimax/coding-plan-client.ts"],"names":[],"mappings":"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"}