@the-open-engine/zeroshot 6.35.3 → 6.37.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 (68) hide show
  1. package/cli/index.js +99 -29
  2. package/lib/agent-cli-provider/adapters/omp.js +1 -1
  3. package/lib/agent-cli-provider/adapters/omp.js.map +1 -1
  4. package/lib/hosted-target/adapter-types.d.cts +0 -8
  5. package/lib/hosted-target/adapter-types.d.mts +0 -8
  6. package/lib/hosted-target/adapter-types.d.ts +0 -8
  7. package/lib/hosted-target/index.d.cts +1 -1
  8. package/lib/hosted-target/index.d.mts +1 -1
  9. package/lib/hosted-target/index.d.ts +1 -1
  10. package/lib/hosted-target/retry-executor.d.cts +1 -1
  11. package/lib/hosted-target/retry-executor.d.mts +1 -1
  12. package/lib/hosted-target/retry-executor.d.ts +1 -1
  13. package/lib/hosted-target/target-adapter.d.cts +1 -1
  14. package/lib/hosted-target/target-adapter.d.mts +1 -1
  15. package/lib/hosted-target/target-adapter.d.ts +1 -1
  16. package/lib/hosted-target/zero-cloud-v1-adapter.cjs +0 -29
  17. package/lib/hosted-target/zero-cloud-v1-adapter.d.cts +0 -2
  18. package/lib/hosted-target/zero-cloud-v1-adapter.d.mts +0 -2
  19. package/lib/hosted-target/zero-cloud-v1-adapter.d.ts +0 -2
  20. package/lib/hosted-target/zero-cloud-v1-adapter.mjs +0 -29
  21. package/lib/target/discovery-sections.cjs +2 -21
  22. package/lib/target/discovery-sections.d.cts +0 -2
  23. package/lib/target/discovery-sections.d.mts +0 -2
  24. package/lib/target/discovery-sections.d.ts +0 -2
  25. package/lib/target/discovery-sections.js +2 -21
  26. package/lib/target/discovery-sections.mjs +3 -22
  27. package/lib/target/discovery-validation.cjs +4 -28
  28. package/lib/target/discovery-validation.d.cts +0 -10
  29. package/lib/target/discovery-validation.d.mts +0 -10
  30. package/lib/target/discovery-validation.d.ts +0 -10
  31. package/lib/target/discovery-validation.js +4 -28
  32. package/lib/target/discovery-validation.mjs +4 -27
  33. package/lib/target/discovery.cjs +0 -1
  34. package/lib/target/discovery.d.cts +0 -3
  35. package/lib/target/discovery.d.mts +0 -3
  36. package/lib/target/discovery.d.ts +0 -3
  37. package/lib/target/discovery.js +0 -1
  38. package/lib/target/discovery.mjs +1 -2
  39. package/lib/target/index.d.ts +1 -1
  40. package/lib/target/run-intent-discovery.cjs +3 -1
  41. package/lib/target/run-intent-discovery.js +3 -1
  42. package/lib/target/run-intent-discovery.mjs +4 -2
  43. package/npm-shrinkwrap.json +2 -2
  44. package/package.json +1 -1
  45. package/src/agent/agent-lifecycle.js +25 -76
  46. package/src/agent/agent-liveness-poll.js +93 -0
  47. package/src/agent/agent-task-executor.js +19 -3
  48. package/src/agent-cli-provider/adapters/omp.ts +1 -1
  49. package/src/foreground-benchmark-files.js +81 -0
  50. package/src/foreground-benchmark-result.js +233 -0
  51. package/src/foreground-benchmark-run.js +72 -0
  52. package/src/hosted-target/adapter-types.ts +0 -14
  53. package/src/hosted-target/index.ts +0 -1
  54. package/src/hosted-target/retry-executor.ts +12 -14
  55. package/src/hosted-target/target-adapter.ts +1 -5
  56. package/src/hosted-target/zero-cloud-v1-adapter.ts +0 -37
  57. package/src/target/discovery-sections.ts +3 -28
  58. package/src/target/discovery-validation.ts +15 -61
  59. package/src/target/discovery.ts +1 -9
  60. package/src/target/index.ts +0 -1
  61. package/src/target/run-intent-discovery.ts +3 -2
  62. package/task-lib/runner.js +7 -0
  63. package/lib/hosted-target/runtime-install.cjs +0 -45
  64. package/lib/hosted-target/runtime-install.d.cts +0 -14
  65. package/lib/hosted-target/runtime-install.d.mts +0 -14
  66. package/lib/hosted-target/runtime-install.d.ts +0 -14
  67. package/lib/hosted-target/runtime-install.mjs +0 -42
  68. package/src/hosted-target/runtime-install.ts +0 -83
package/cli/index.js CHANGED
@@ -73,6 +73,11 @@ const {
73
73
  resolveEffectiveRunPlan,
74
74
  } = require('../lib/start-cluster');
75
75
  const { requirePreflight } = require('../src/preflight');
76
+ const {
77
+ exitCodeForResult,
78
+ isForegroundStatusSettled,
79
+ writeForegroundResult,
80
+ } = require('../src/foreground-benchmark-run');
76
81
  const {
77
82
  createUnsupportedProviderCapabilityError,
78
83
  serializeTaskStartupError,
@@ -251,6 +256,17 @@ function shouldRunDetached(options) {
251
256
  return options.detach && !process.env.ZEROSHOT_DAEMON;
252
257
  }
253
258
 
259
+ function requireForegroundResultMode(options) {
260
+ if (!options.resultFile) return;
261
+ if (shouldRunDetached(options) || process.env.ZEROSHOT_DAEMON) {
262
+ throw new Error('--result-file requires foreground execution without --detach');
263
+ }
264
+ if (options.pr || options.ship) {
265
+ throw new Error('--result-file is incompatible with --pr and --ship delivery');
266
+ }
267
+ process.env.ZEROSHOT_TASK_EXECUTION_CONTEXT = 'benchmark';
268
+ }
269
+
254
270
  function printDetachedClusterStart(plan, clusterId, logPath) {
255
271
  const runMode = runModeFromPlan(plan);
256
272
  console.log(runMode ? `Started ${clusterId} (${runMode})` : `Started ${clusterId}`);
@@ -605,65 +621,83 @@ function createForegroundCleanup({
605
621
  return { stop, stopWithFlush };
606
622
  }
607
623
 
608
- function setupForegroundSigintHandler({ orchestrator, clusterId, cleanup, stopChecking }) {
609
- const handler = async () => {
624
+ function setupForegroundSignalHandler({ orchestrator, clusterId, cleanup, settle, handleSigterm }) {
625
+ let handling = false;
626
+ const handler = async (signal) => {
627
+ if (handling) return;
628
+ handling = true;
610
629
  cleanup.stop();
611
- stopChecking();
612
- console.log(chalk.dim('\n\n--- Interrupted ---'));
630
+ console.log(chalk.dim(`\n\n--- Interrupted (${signal}) ---`));
613
631
 
614
632
  try {
615
633
  console.log(chalk.dim(`Stopping cluster ${clusterId}...`));
616
634
  await orchestrator.stop(clusterId);
617
635
  console.log(chalk.dim(`Cluster ${clusterId} stopped.`));
636
+ settle({ cancelled: true });
618
637
  } catch (stopErr) {
619
- console.error(chalk.red(`Failed to stop cluster: ${stopErr.message}`));
638
+ settle(null, stopErr);
620
639
  }
621
-
622
- process.exit(0);
623
640
  };
624
641
 
625
- process.on('SIGINT', handler);
642
+ const onSigint = () => handler('SIGINT');
643
+ const onSigterm = () => handler('SIGTERM');
644
+ process.on('SIGINT', onSigint);
645
+ if (handleSigterm) process.on('SIGTERM', onSigterm);
626
646
  return () => {
627
- process.off('SIGINT', handler);
647
+ process.off('SIGINT', onSigint);
648
+ if (handleSigterm) process.off('SIGTERM', onSigterm);
628
649
  };
629
650
  }
630
651
 
631
- function waitForClusterCompletion(orchestrator, clusterId, cleanup) {
632
- return new Promise((resolve) => {
652
+ function waitForClusterCompletion(orchestrator, clusterId, cleanup, handleSigterm) {
653
+ return new Promise((resolve, reject) => {
633
654
  let checkInterval;
655
+ let settled = false;
656
+ let terminalObservedAt = null;
657
+ let removeSignals = () => {};
634
658
  const stopChecking = () => {
635
659
  if (checkInterval) {
636
660
  clearInterval(checkInterval);
637
661
  }
638
662
  };
639
- const removeSigint = setupForegroundSigintHandler({
663
+ const settle = (result, error) => {
664
+ if (settled) return;
665
+ settled = true;
666
+ stopChecking();
667
+ removeSignals();
668
+ if (error) reject(error);
669
+ else resolve(result);
670
+ };
671
+ removeSignals = setupForegroundSignalHandler({
640
672
  orchestrator,
641
673
  clusterId,
642
674
  cleanup,
643
- stopChecking,
675
+ settle,
676
+ handleSigterm,
644
677
  });
645
678
 
646
- const finish = (finalizer) => {
647
- stopChecking();
648
- removeSigint();
649
- finalizer();
650
- resolve();
651
- };
652
-
653
679
  checkInterval = setInterval(() => {
654
680
  try {
655
681
  const status = orchestrator.getStatus(clusterId);
656
- if (status.state !== 'running') {
657
- finish(cleanup.stopWithFlush);
682
+ if (isForegroundStatusSettled(status)) {
683
+ cleanup.stopWithFlush();
684
+ settle({ cancelled: false });
685
+ } else if (['stopped', 'killed'].includes(status.state)) {
686
+ terminalObservedAt ??= Date.now();
687
+ if (Date.now() - terminalObservedAt > 30_000) {
688
+ cleanup.stop();
689
+ settle(null, new Error('foreground agent processes did not settle after terminal'));
690
+ }
658
691
  }
659
- } catch {
660
- finish(cleanup.stop);
692
+ } catch (error) {
693
+ cleanup.stop();
694
+ settle(null, error);
661
695
  }
662
696
  }, 500);
663
697
  });
664
698
  }
665
699
 
666
- async function streamClusterInForeground(cluster, orchestrator, clusterId, plan) {
700
+ async function streamClusterInForeground(cluster, orchestrator, clusterId, plan, handleSigterm) {
667
701
  const sendersWithOutput = new Set();
668
702
  const processedMessageIds = new Set();
669
703
 
@@ -696,8 +730,34 @@ async function streamClusterInForeground(cluster, orchestrator, clusterId, plan)
696
730
  sendersWithOutput,
697
731
  });
698
732
 
699
- await waitForClusterCompletion(orchestrator, clusterId, cleanup);
700
- console.log(chalk.dim(`\nCluster ${clusterId} completed.`));
733
+ const result = await waitForClusterCompletion(orchestrator, clusterId, cleanup, handleSigterm);
734
+ const label = result.cancelled ? 'cancelled' : 'finished';
735
+ console.log(chalk.dim(`\nCluster ${clusterId} ${label}.`));
736
+ return result;
737
+ }
738
+
739
+ async function finishForegroundRun({ cluster, orchestrator, clusterId, plan, resultPath }) {
740
+ try {
741
+ const foreground = await streamClusterInForeground(
742
+ cluster,
743
+ orchestrator,
744
+ clusterId,
745
+ plan,
746
+ Boolean(resultPath)
747
+ );
748
+ if (!resultPath) return;
749
+ const receipt = writeForegroundResult({
750
+ orchestrator,
751
+ cluster,
752
+ clusterId,
753
+ resultPath,
754
+ cancelled: foreground.cancelled,
755
+ });
756
+ process.exitCode = exitCodeForResult(receipt);
757
+ console.log(chalk.dim(`Result ${receipt.outcome} committed to ${resultPath}`));
758
+ } finally {
759
+ orchestrator.close();
760
+ }
701
761
  }
702
762
 
703
763
  function setupDaemonCleanup(orchestrator, clusterId) {
@@ -2662,6 +2722,10 @@ program
2662
2722
  'fast'
2663
2723
  )
2664
2724
  .option('-d, --detach', 'Run in background (default: attach to first agent)')
2725
+ .option(
2726
+ '--result-file <path>',
2727
+ 'Atomically write a closed foreground result receipt (incompatible with --detach)'
2728
+ )
2665
2729
  .addHelpText(
2666
2730
  'after',
2667
2731
  `
@@ -2768,6 +2832,7 @@ Force provider flags: -G (GitHub), -L (GitLab), -J (Jira), -D (DevOps), -N (Line
2768
2832
  }
2769
2833
 
2770
2834
  const { generateName } = require('../src/name-generator');
2835
+ requireForegroundResultMode(effectiveOptions);
2771
2836
  if (shouldRunDetached(effectiveOptions)) {
2772
2837
  const clusterId = generateName('cluster');
2773
2838
  await spawnDetachedCluster(effectiveOptions, effectiveRunPlan, clusterId, stdinText);
@@ -2811,8 +2876,13 @@ Force provider flags: -G (GitHub), -L (GitLab), -J (Jira), -D (DevOps), -N (Line
2811
2876
  }
2812
2877
 
2813
2878
  if (!process.env.ZEROSHOT_DAEMON) {
2814
- await streamClusterInForeground(cluster, orchestrator, clusterId, effectiveRunPlan);
2815
- orchestrator.close();
2879
+ await finishForegroundRun({
2880
+ cluster,
2881
+ orchestrator,
2882
+ clusterId,
2883
+ plan: effectiveRunPlan,
2884
+ resultPath: effectiveOptions.resultFile,
2885
+ });
2816
2886
  }
2817
2887
  setupDaemonCleanup(orchestrator, clusterId);
2818
2888
  } catch (error) {
@@ -42,7 +42,7 @@ function detectCliFeatures(helpText, versionText) {
42
42
  return {
43
43
  provider: 'omp',
44
44
  versionMatches: VERSION_TOKEN_PATTERN.test(version),
45
- supportsRpcMode: /(^|\s)rpc(\s|$)/m.test(help),
45
+ supportsRpcMode: /(?<![A-Za-z0-9_-])rpc(?![A-Za-z0-9_-])/.test(help),
46
46
  supportsConfig: /--config\b/.test(help),
47
47
  supportsModel: /--model\b/.test(help),
48
48
  supportsThinking: /--thinking\b/.test(help),
@@ -1 +1 @@
1
- {"version":3,"file":"omp.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/omp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"omp.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/omp.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,5 @@
1
1
  import type { TargetDiscoveryDescriptor } from '../target/discovery.js';
2
2
  import type { AllocateRequest, Capsule, CapsuleAccess, CapsuleLimits, CapsuleListPage, Clock, HttpTransport, ListRequest, RetryPolicy, TargetAccessTokenProvider } from './types.js';
3
- export type CredentialInstallCapability = {
4
- readonly supported: false;
5
- } | {
6
- readonly supported: true;
7
- readonly descriptor: NonNullable<TargetDiscoveryDescriptor['credentialInstall']>;
8
- };
9
3
  export interface TargetAdapter {
10
4
  allocate(req: AllocateRequest, signal?: AbortSignal): Promise<Capsule>;
11
5
  list(req?: ListRequest, signal?: AbortSignal): Promise<CapsuleListPage>;
@@ -13,8 +7,6 @@ export interface TargetAdapter {
13
7
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
14
8
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
15
9
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
16
- installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
17
- readonly credentialInstall: CredentialInstallCapability;
18
10
  }
19
11
  export interface CreateTargetAdapterOptions {
20
12
  readonly descriptor: TargetDiscoveryDescriptor;
@@ -1,11 +1,5 @@
1
1
  import type { TargetDiscoveryDescriptor } from '../target/discovery.js';
2
2
  import type { AllocateRequest, Capsule, CapsuleAccess, CapsuleLimits, CapsuleListPage, Clock, HttpTransport, ListRequest, RetryPolicy, TargetAccessTokenProvider } from './types.js';
3
- export type CredentialInstallCapability = {
4
- readonly supported: false;
5
- } | {
6
- readonly supported: true;
7
- readonly descriptor: NonNullable<TargetDiscoveryDescriptor['credentialInstall']>;
8
- };
9
3
  export interface TargetAdapter {
10
4
  allocate(req: AllocateRequest, signal?: AbortSignal): Promise<Capsule>;
11
5
  list(req?: ListRequest, signal?: AbortSignal): Promise<CapsuleListPage>;
@@ -13,8 +7,6 @@ export interface TargetAdapter {
13
7
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
14
8
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
15
9
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
16
- installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
17
- readonly credentialInstall: CredentialInstallCapability;
18
10
  }
19
11
  export interface CreateTargetAdapterOptions {
20
12
  readonly descriptor: TargetDiscoveryDescriptor;
@@ -1,11 +1,5 @@
1
1
  import type { TargetDiscoveryDescriptor } from '../target/discovery.js';
2
2
  import type { AllocateRequest, Capsule, CapsuleAccess, CapsuleLimits, CapsuleListPage, Clock, HttpTransport, ListRequest, RetryPolicy, TargetAccessTokenProvider } from './types.js';
3
- export type CredentialInstallCapability = {
4
- readonly supported: false;
5
- } | {
6
- readonly supported: true;
7
- readonly descriptor: NonNullable<TargetDiscoveryDescriptor['credentialInstall']>;
8
- };
9
3
  export interface TargetAdapter {
10
4
  allocate(req: AllocateRequest, signal?: AbortSignal): Promise<Capsule>;
11
5
  list(req?: ListRequest, signal?: AbortSignal): Promise<CapsuleListPage>;
@@ -13,8 +7,6 @@ export interface TargetAdapter {
13
7
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
14
8
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
15
9
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
16
- installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
17
- readonly credentialInstall: CredentialInstallCapability;
18
10
  }
19
11
  export interface CreateTargetAdapterOptions {
20
12
  readonly descriptor: TargetDiscoveryDescriptor;
@@ -1,3 +1,3 @@
1
- export { createTargetAdapter, type TargetAdapter, type CreateTargetAdapterOptions, type CredentialInstallCapability, } from './target-adapter.js';
1
+ export { createTargetAdapter, type TargetAdapter, type CreateTargetAdapterOptions, } from './target-adapter.js';
2
2
  export { TargetAdapterError, TargetAuthError, TargetConflictError, TargetRateLimitError, TargetTransportError, TargetProtocolError, TargetCapacityError, TargetNotFoundError, TargetServerError, isRetryable, } from './errors.js';
3
3
  export type { TargetAccessTokenProvider, CapsuleState, Capsule, CapsuleAccess, CapsuleListPage, CapsuleLimits, AllocateRequest, ListRequest, HttpTransport, Clock, RetryPolicy, } from './types.js';
@@ -1,3 +1,3 @@
1
- export { createTargetAdapter, type TargetAdapter, type CreateTargetAdapterOptions, type CredentialInstallCapability, } from './target-adapter.js';
1
+ export { createTargetAdapter, type TargetAdapter, type CreateTargetAdapterOptions, } from './target-adapter.js';
2
2
  export { TargetAdapterError, TargetAuthError, TargetConflictError, TargetRateLimitError, TargetTransportError, TargetProtocolError, TargetCapacityError, TargetNotFoundError, TargetServerError, isRetryable, } from './errors.js';
3
3
  export type { TargetAccessTokenProvider, CapsuleState, Capsule, CapsuleAccess, CapsuleListPage, CapsuleLimits, AllocateRequest, ListRequest, HttpTransport, Clock, RetryPolicy, } from './types.js';
@@ -1,3 +1,3 @@
1
- export { createTargetAdapter, type TargetAdapter, type CreateTargetAdapterOptions, type CredentialInstallCapability, } from './target-adapter.js';
1
+ export { createTargetAdapter, type TargetAdapter, type CreateTargetAdapterOptions, } from './target-adapter.js';
2
2
  export { TargetAdapterError, TargetAuthError, TargetConflictError, TargetRateLimitError, TargetTransportError, TargetProtocolError, TargetCapacityError, TargetNotFoundError, TargetServerError, isRetryable, } from './errors.js';
3
3
  export type { TargetAccessTokenProvider, CapsuleState, Capsule, CapsuleAccess, CapsuleListPage, CapsuleLimits, AllocateRequest, ListRequest, HttpTransport, Clock, RetryPolicy, } from './types.js';
@@ -1,5 +1,5 @@
1
1
  import type { Clock, RetryPolicy } from './types.js';
2
- export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access' | 'installRuntime';
2
+ export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access';
3
3
  type RetryContext = {
4
4
  readonly clock: Clock;
5
5
  readonly policy: RetryPolicy;
@@ -1,5 +1,5 @@
1
1
  import type { Clock, RetryPolicy } from './types.js';
2
- export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access' | 'installRuntime';
2
+ export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access';
3
3
  type RetryContext = {
4
4
  readonly clock: Clock;
5
5
  readonly policy: RetryPolicy;
@@ -1,5 +1,5 @@
1
1
  import type { Clock, RetryPolicy } from './types.js';
2
- export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access' | 'installRuntime';
2
+ export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access';
3
3
  type RetryContext = {
4
4
  readonly clock: Clock;
5
5
  readonly policy: RetryPolicy;
@@ -1,3 +1,3 @@
1
1
  import type { CreateTargetAdapterOptions, TargetAdapter } from './adapter-types.js';
2
- export type { CreateTargetAdapterOptions, CredentialInstallCapability, TargetAdapter, } from './adapter-types.js';
2
+ export type { CreateTargetAdapterOptions, TargetAdapter } from './adapter-types.js';
3
3
  export declare function createTargetAdapter(options: CreateTargetAdapterOptions): TargetAdapter;
@@ -1,3 +1,3 @@
1
1
  import type { CreateTargetAdapterOptions, TargetAdapter } from './adapter-types.js';
2
- export type { CreateTargetAdapterOptions, CredentialInstallCapability, TargetAdapter, } from './adapter-types.js';
2
+ export type { CreateTargetAdapterOptions, TargetAdapter } from './adapter-types.js';
3
3
  export declare function createTargetAdapter(options: CreateTargetAdapterOptions): TargetAdapter;
@@ -1,3 +1,3 @@
1
1
  import type { CreateTargetAdapterOptions, TargetAdapter } from './adapter-types.js';
2
- export type { CreateTargetAdapterOptions, CredentialInstallCapability, TargetAdapter, } from './adapter-types.js';
2
+ export type { CreateTargetAdapterOptions, TargetAdapter } from './adapter-types.js';
3
3
  export declare function createTargetAdapter(options: CreateTargetAdapterOptions): TargetAdapter;
@@ -8,7 +8,6 @@ const response_validation_js_1 = require("./response-validation.cjs");
8
8
  const bounded_response_js_1 = require("../target/bounded-response.cjs");
9
9
  const access_url_js_1 = require("./access-url.cjs");
10
10
  const retry_executor_js_1 = require("./retry-executor.cjs");
11
- const runtime_install_js_1 = require("./runtime-install.cjs");
12
11
  const response_status_js_1 = require("./response-status.cjs");
13
12
  const adapter_request_js_1 = require("./adapter-request.cjs");
14
13
  const DEFAULT_CLOCK = { now: () => Date.now() };
@@ -33,12 +32,6 @@ class ZeroCloudV1TargetAdapter {
33
32
  this.#clock = options.clock ?? DEFAULT_CLOCK;
34
33
  this.#retryPolicy = options.retryPolicy ?? new retry_js_1.DefaultRetryPolicy();
35
34
  }
36
- get credentialInstall() {
37
- const descriptor = this.#descriptor.credentialInstall;
38
- return descriptor === null
39
- ? Object.freeze({ supported: false })
40
- : Object.freeze({ supported: true, descriptor });
41
- }
42
35
  allocate(request, signal) {
43
36
  try {
44
37
  if (!bounds_js_1.IDEMPOTENCY_KEY_PATTERN.test(request.idempotencyKey))
@@ -99,28 +92,6 @@ class ZeroCloudV1TargetAdapter {
99
92
  (0, access_url_js_1.validateAccessUrl)(result.websocketUrl, capsuleId, this.#descriptor);
100
93
  return result;
101
94
  }
102
- async installRuntime(capsuleId, runtime, accessToken, signal) {
103
- const descriptor = this.#descriptor.credentialInstall;
104
- if (descriptor === null) {
105
- throw new errors_js_1.TargetProtocolError('Target does not advertise runtime installation');
106
- }
107
- await (0, runtime_install_js_1.installRuntime)({
108
- capsuleId,
109
- runtime,
110
- accessToken,
111
- descriptor,
112
- ...(signal === undefined ? {} : { signal }),
113
- clock: this.#clock,
114
- retryPolicy: this.#retryPolicy,
115
- request: (method, path, requestSignal, body, token) => this.#request({
116
- method,
117
- path,
118
- signal: requestSignal,
119
- request: { body },
120
- accessToken: token,
121
- }),
122
- });
123
- }
124
95
  #execute(...args) {
125
96
  return Promise.resolve().then(() => this.#executeExpanded(args));
126
97
  }
@@ -3,12 +3,10 @@ import type { AllocateRequest, Capsule, CapsuleAccess, CapsuleLimits, CapsuleLis
3
3
  export declare class ZeroCloudV1TargetAdapter implements TargetAdapter {
4
4
  #private;
5
5
  constructor(options: CreateTargetAdapterOptions);
6
- get credentialInstall(): TargetAdapter['credentialInstall'];
7
6
  allocate(request: AllocateRequest, signal?: AbortSignal): Promise<Capsule>;
8
7
  list(request?: ListRequest, signal?: AbortSignal): Promise<CapsuleListPage>;
9
8
  inspect(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
10
9
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
11
10
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
12
11
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
13
- installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
14
12
  }
@@ -3,12 +3,10 @@ import type { AllocateRequest, Capsule, CapsuleAccess, CapsuleLimits, CapsuleLis
3
3
  export declare class ZeroCloudV1TargetAdapter implements TargetAdapter {
4
4
  #private;
5
5
  constructor(options: CreateTargetAdapterOptions);
6
- get credentialInstall(): TargetAdapter['credentialInstall'];
7
6
  allocate(request: AllocateRequest, signal?: AbortSignal): Promise<Capsule>;
8
7
  list(request?: ListRequest, signal?: AbortSignal): Promise<CapsuleListPage>;
9
8
  inspect(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
10
9
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
11
10
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
12
11
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
13
- installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
14
12
  }
@@ -3,12 +3,10 @@ import type { AllocateRequest, Capsule, CapsuleAccess, CapsuleLimits, CapsuleLis
3
3
  export declare class ZeroCloudV1TargetAdapter implements TargetAdapter {
4
4
  #private;
5
5
  constructor(options: CreateTargetAdapterOptions);
6
- get credentialInstall(): TargetAdapter['credentialInstall'];
7
6
  allocate(request: AllocateRequest, signal?: AbortSignal): Promise<Capsule>;
8
7
  list(request?: ListRequest, signal?: AbortSignal): Promise<CapsuleListPage>;
9
8
  inspect(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
10
9
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
11
10
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
12
11
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
13
- installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
14
12
  }
@@ -5,7 +5,6 @@ import { assertCapsule, assertCapsuleAccess, assertCapsuleLimits, assertCapsuleL
5
5
  import { readBoundedResponseJson } from '../target/bounded-response.mjs';
6
6
  import { validateAccessUrl } from './access-url.mjs';
7
7
  import { withTargetRetry } from './retry-executor.mjs';
8
- import { installRuntime as installOpaqueRuntime } from './runtime-install.mjs';
9
8
  import { assertCapsuleResponseStatus } from './response-status.mjs';
10
9
  import { createAdapterRequester, } from './adapter-request.mjs';
11
10
  const DEFAULT_CLOCK = { now: () => Date.now() };
@@ -30,12 +29,6 @@ export class ZeroCloudV1TargetAdapter {
30
29
  this.#clock = options.clock ?? DEFAULT_CLOCK;
31
30
  this.#retryPolicy = options.retryPolicy ?? new DefaultRetryPolicy();
32
31
  }
33
- get credentialInstall() {
34
- const descriptor = this.#descriptor.credentialInstall;
35
- return descriptor === null
36
- ? Object.freeze({ supported: false })
37
- : Object.freeze({ supported: true, descriptor });
38
- }
39
32
  allocate(request, signal) {
40
33
  try {
41
34
  if (!IDEMPOTENCY_KEY_PATTERN.test(request.idempotencyKey))
@@ -96,28 +89,6 @@ export class ZeroCloudV1TargetAdapter {
96
89
  validateAccessUrl(result.websocketUrl, capsuleId, this.#descriptor);
97
90
  return result;
98
91
  }
99
- async installRuntime(capsuleId, runtime, accessToken, signal) {
100
- const descriptor = this.#descriptor.credentialInstall;
101
- if (descriptor === null) {
102
- throw new TargetProtocolError('Target does not advertise runtime installation');
103
- }
104
- await installOpaqueRuntime({
105
- capsuleId,
106
- runtime,
107
- accessToken,
108
- descriptor,
109
- ...(signal === undefined ? {} : { signal }),
110
- clock: this.#clock,
111
- retryPolicy: this.#retryPolicy,
112
- request: (method, path, requestSignal, body, token) => this.#request({
113
- method,
114
- path,
115
- signal: requestSignal,
116
- request: { body },
117
- accessToken: token,
118
- }),
119
- });
120
- }
121
92
  #execute(...args) {
122
93
  return Promise.resolve().then(() => this.#executeExpanded(args));
123
94
  }
@@ -52,29 +52,10 @@ function parseSizes(discovery) {
52
52
  }
53
53
  function parseExtensions(discovery, origin) {
54
54
  if (discovery.extensions === undefined || discovery.extensions === null) {
55
- return Object.freeze({ credentialInstall: null, runIntent: null });
55
+ return Object.freeze({ runIntent: null });
56
56
  }
57
- const extensions = (0, discovery_validation_js_1.closedRecord)(discovery.extensions, 'extensions', [
58
- 'connections',
59
- 'credential_install',
60
- 'run_intent',
61
- ]);
62
- if (extensions.connections === undefined) {
63
- throw new discovery_errors_js_1.TargetDiscoveryError('extensions.connections is required');
64
- }
65
- const connections = (0, discovery_validation_js_1.closedRecord)(extensions.connections, 'extensions.connections', [
66
- 'kind',
67
- 'base_url',
68
- 'route_templates',
69
- ]);
70
- (0, discovery_validation_js_1.exact)(connections.kind, 'zerocloud.connections/v1', 'extensions.connections.kind');
71
- (0, discovery_validation_js_1.sameOriginUrl)(connections.base_url, 'extensions.connections.base_url', origin);
72
- const routes = (0, discovery_validation_js_1.closedRecord)(connections.route_templates, 'extensions.connections.route_templates', ['list', 'create', 'update']);
73
- (0, route_template_js_1.routeTemplate)(routes.list, 'extensions.connections.route_templates.list', []);
74
- (0, route_template_js_1.routeTemplate)(routes.create, 'extensions.connections.route_templates.create', []);
75
- (0, route_template_js_1.routeTemplate)(routes.update, 'extensions.connections.route_templates.update', ['connection_id']);
57
+ const extensions = (0, discovery_validation_js_1.record)(discovery.extensions, 'extensions');
76
58
  return Object.freeze({
77
- credentialInstall: (0, discovery_validation_js_1.parseCredentialInstall)(extensions.credential_install),
78
59
  runIntent: (0, run_intent_discovery_js_1.parseRunIntent)(extensions.run_intent, origin),
79
60
  });
80
61
  }
@@ -1,4 +1,3 @@
1
- import { type CredentialInstallDescriptor } from './discovery-validation.js';
2
1
  import { type RunIntentDescriptor } from './run-intent-discovery.js';
3
2
  export declare function parseAdapter(discovery: Record<string, unknown>): {
4
3
  readonly name: 'fargate' | 'docker' | 'local';
@@ -10,7 +9,6 @@ export declare function parseSizes(discovery: Record<string, unknown>): {
10
9
  readonly default: 'tiny' | 'small' | 'standard' | 'large';
11
10
  };
12
11
  export declare function parseExtensions(discovery: Record<string, unknown>, origin: string): {
13
- readonly credentialInstall: CredentialInstallDescriptor | null;
14
12
  readonly runIntent: RunIntentDescriptor | null;
15
13
  };
16
14
  export declare function validateOAuthMetadata(metadata: Record<string, unknown>, origin: string, expected: readonly [string, string, string]): void;
@@ -1,4 +1,3 @@
1
- import { type CredentialInstallDescriptor } from './discovery-validation.js';
2
1
  import { type RunIntentDescriptor } from './run-intent-discovery.js';
3
2
  export declare function parseAdapter(discovery: Record<string, unknown>): {
4
3
  readonly name: 'fargate' | 'docker' | 'local';
@@ -10,7 +9,6 @@ export declare function parseSizes(discovery: Record<string, unknown>): {
10
9
  readonly default: 'tiny' | 'small' | 'standard' | 'large';
11
10
  };
12
11
  export declare function parseExtensions(discovery: Record<string, unknown>, origin: string): {
13
- readonly credentialInstall: CredentialInstallDescriptor | null;
14
12
  readonly runIntent: RunIntentDescriptor | null;
15
13
  };
16
14
  export declare function validateOAuthMetadata(metadata: Record<string, unknown>, origin: string, expected: readonly [string, string, string]): void;
@@ -1,4 +1,3 @@
1
- import { type CredentialInstallDescriptor } from './discovery-validation.js';
2
1
  import { type RunIntentDescriptor } from './run-intent-discovery.js';
3
2
  export declare function parseAdapter(discovery: Record<string, unknown>): {
4
3
  readonly name: 'fargate' | 'docker' | 'local';
@@ -10,7 +9,6 @@ export declare function parseSizes(discovery: Record<string, unknown>): {
10
9
  readonly default: 'tiny' | 'small' | 'standard' | 'large';
11
10
  };
12
11
  export declare function parseExtensions(discovery: Record<string, unknown>, origin: string): {
13
- readonly credentialInstall: CredentialInstallDescriptor | null;
14
12
  readonly runIntent: RunIntentDescriptor | null;
15
13
  };
16
14
  export declare function validateOAuthMetadata(metadata: Record<string, unknown>, origin: string, expected: readonly [string, string, string]): void;
@@ -52,29 +52,10 @@ function parseSizes(discovery) {
52
52
  }
53
53
  function parseExtensions(discovery, origin) {
54
54
  if (discovery.extensions === undefined || discovery.extensions === null) {
55
- return Object.freeze({ credentialInstall: null, runIntent: null });
55
+ return Object.freeze({ runIntent: null });
56
56
  }
57
- const extensions = (0, discovery_validation_js_1.closedRecord)(discovery.extensions, 'extensions', [
58
- 'connections',
59
- 'credential_install',
60
- 'run_intent',
61
- ]);
62
- if (extensions.connections === undefined) {
63
- throw new discovery_errors_js_1.TargetDiscoveryError('extensions.connections is required');
64
- }
65
- const connections = (0, discovery_validation_js_1.closedRecord)(extensions.connections, 'extensions.connections', [
66
- 'kind',
67
- 'base_url',
68
- 'route_templates',
69
- ]);
70
- (0, discovery_validation_js_1.exact)(connections.kind, 'zerocloud.connections/v1', 'extensions.connections.kind');
71
- (0, discovery_validation_js_1.sameOriginUrl)(connections.base_url, 'extensions.connections.base_url', origin);
72
- const routes = (0, discovery_validation_js_1.closedRecord)(connections.route_templates, 'extensions.connections.route_templates', ['list', 'create', 'update']);
73
- (0, route_template_js_1.routeTemplate)(routes.list, 'extensions.connections.route_templates.list', []);
74
- (0, route_template_js_1.routeTemplate)(routes.create, 'extensions.connections.route_templates.create', []);
75
- (0, route_template_js_1.routeTemplate)(routes.update, 'extensions.connections.route_templates.update', ['connection_id']);
57
+ const extensions = (0, discovery_validation_js_1.record)(discovery.extensions, 'extensions');
76
58
  return Object.freeze({
77
- credentialInstall: (0, discovery_validation_js_1.parseCredentialInstall)(extensions.credential_install),
78
59
  runIntent: (0, run_intent_discovery_js_1.parseRunIntent)(extensions.run_intent, origin),
79
60
  });
80
61
  }