@odla-ai/cli 0.16.0 → 0.16.1

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/README.md CHANGED
@@ -29,8 +29,8 @@ For a project you keep working in, install it as a dev dependency so the
29
29
  shorter `npx odla-ai` form works and the version is pinned by your lockfile:
30
30
 
31
31
  ```bash
32
- npm view @odla-ai/cli@0.16.0 version
33
- npm i -D --save-exact @odla-ai/cli@0.16.0
32
+ npm view @odla-ai/cli@0.16.1 version
33
+ npm i -D --save-exact @odla-ai/cli@0.16.1
34
34
  ```
35
35
 
36
36
  ## Prerequisites
package/dist/bin.cjs CHANGED
@@ -2540,7 +2540,7 @@ async function stageWorkspacePair(baselineSource, workspaceSource, options = {})
2540
2540
  }
2541
2541
  }
2542
2542
 
2543
- // ../harness/dist/chunk-4EM6NMET.js
2543
+ // ../harness/dist/chunk-5E2R3LHE.js
2544
2544
  var import_crypto = require("crypto");
2545
2545
  var import_promises5 = require("fs/promises");
2546
2546
  var import_path5 = require("path");
@@ -2877,7 +2877,7 @@ function validateSnapshot(snapshot, limits) {
2877
2877
  }
2878
2878
  }
2879
2879
 
2880
- // ../harness/dist/chunk-4EM6NMET.js
2880
+ // ../harness/dist/chunk-5E2R3LHE.js
2881
2881
  var import_child_process4 = require("child_process");
2882
2882
  var import_promises6 = require("fs/promises");
2883
2883
  var import_path6 = require("path");
@@ -3170,7 +3170,7 @@ function looksLikeDestination(value) {
3170
3170
  return /^(?:[a-z][a-z0-9+.-]*:\/\/|\/|\\\\)/i.test(text) || /^[\w.-]+\.[a-z]{2,}(?:[/:]|$)/i.test(text);
3171
3171
  }
3172
3172
 
3173
- // ../harness/dist/chunk-4EM6NMET.js
3173
+ // ../harness/dist/chunk-5E2R3LHE.js
3174
3174
  var import_crypto4 = require("crypto");
3175
3175
  async function digestStagedWorkspace(root, limits) {
3176
3176
  const files = [];
@@ -3285,9 +3285,13 @@ function createCodeRuntimeControlClient(options) {
3285
3285
  if (!Number.isSafeInteger(requestTimeoutMs) || requestTimeoutMs < 1e3 || requestTimeoutMs > 12e4) {
3286
3286
  throw new TypeError("requestTimeoutMs must be an integer from 1000 to 120000");
3287
3287
  }
3288
+ const modelRequestTimeoutMs = options.modelRequestTimeoutMs ?? 15 * 6e4;
3289
+ if (!Number.isSafeInteger(modelRequestTimeoutMs) || modelRequestTimeoutMs < 3e4 || modelRequestTimeoutMs > 30 * 6e4) {
3290
+ throw new TypeError("modelRequestTimeoutMs must be an integer from 30000 to 1800000");
3291
+ }
3288
3292
  const request = options.fetch ?? fetch;
3289
- const call = async (path, body) => {
3290
- const timeout = AbortSignal.timeout(requestTimeoutMs);
3293
+ const call = async (path, body, timeoutMs = requestTimeoutMs) => {
3294
+ const timeout = AbortSignal.timeout(timeoutMs);
3291
3295
  const signal = options.signal ? AbortSignal.any([options.signal, timeout]) : timeout;
3292
3296
  let response2;
3293
3297
  try {
@@ -3326,14 +3330,18 @@ function createCodeRuntimeControlClient(options) {
3326
3330
  await call(`/registry/code/runtime/sessions/${validSessionId(sessionId)}/source`, {})
3327
3331
  ),
3328
3332
  infer: async (sessionId, inference) => {
3329
- const value = record3(await call(`/registry/code/runtime/sessions/${validSessionId(sessionId)}/inference`, inference));
3333
+ const value = record3(await call(
3334
+ `/registry/code/runtime/sessions/${validSessionId(sessionId)}/inference`,
3335
+ inference,
3336
+ modelRequestTimeoutMs
3337
+ ));
3330
3338
  if (!value || value.requestId !== inference.requestId || !record3(value.response) || !record3(value.receipt)) {
3331
3339
  throw new CodeRuntimeControlError("invalid Code inference response", 502, "invalid_response");
3332
3340
  }
3333
3341
  return value;
3334
3342
  },
3335
3343
  review: async (sessionId, review) => parseReview(
3336
- await call(`/registry/code/runtime/sessions/${validSessionId(sessionId)}/review`, review)
3344
+ await call(`/registry/code/runtime/sessions/${validSessionId(sessionId)}/review`, review, modelRequestTimeoutMs)
3337
3345
  ),
3338
3346
  submitCandidate: async (sessionId, checkpointId, verification) => {
3339
3347
  if (!/^cpoint_[0-9a-f]{32}$/.test(checkpointId)) throw new TypeError("invalid Code checkpoint id");