@the-open-engine/zeroshot 6.33.1 → 6.34.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.
Files changed (48) hide show
  1. package/lib/agent-cli-provider/adapters/codex.d.ts.map +1 -1
  2. package/lib/agent-cli-provider/adapters/codex.js +3 -1
  3. package/lib/agent-cli-provider/adapters/codex.js.map +1 -1
  4. package/lib/hosted-target/adapter-request.cjs +55 -0
  5. package/lib/hosted-target/adapter-request.d.cts +9 -0
  6. package/lib/hosted-target/adapter-request.d.mts +9 -0
  7. package/lib/hosted-target/adapter-request.d.ts +9 -0
  8. package/lib/hosted-target/adapter-request.mjs +55 -1
  9. package/lib/hosted-target/adapter-types.d.cts +1 -0
  10. package/lib/hosted-target/adapter-types.d.mts +1 -0
  11. package/lib/hosted-target/adapter-types.d.ts +1 -0
  12. package/lib/hosted-target/response-status.cjs +18 -0
  13. package/lib/hosted-target/response-status.d.cts +2 -0
  14. package/lib/hosted-target/response-status.d.mts +2 -0
  15. package/lib/hosted-target/response-status.d.ts +2 -0
  16. package/lib/hosted-target/response-status.mjs +15 -0
  17. package/lib/hosted-target/retry-executor.d.cts +1 -1
  18. package/lib/hosted-target/retry-executor.d.mts +1 -1
  19. package/lib/hosted-target/retry-executor.d.ts +1 -1
  20. package/lib/hosted-target/runtime-install.cjs +45 -0
  21. package/lib/hosted-target/runtime-install.d.cts +14 -0
  22. package/lib/hosted-target/runtime-install.d.mts +14 -0
  23. package/lib/hosted-target/runtime-install.d.ts +14 -0
  24. package/lib/hosted-target/runtime-install.mjs +42 -0
  25. package/lib/hosted-target/zero-cloud-v1-adapter.cjs +35 -66
  26. package/lib/hosted-target/zero-cloud-v1-adapter.d.cts +1 -0
  27. package/lib/hosted-target/zero-cloud-v1-adapter.d.mts +1 -0
  28. package/lib/hosted-target/zero-cloud-v1-adapter.d.ts +1 -0
  29. package/lib/hosted-target/zero-cloud-v1-adapter.mjs +37 -68
  30. package/lib/target/discovery-validation.cjs +11 -18
  31. package/lib/target/discovery-validation.d.cts +1 -12
  32. package/lib/target/discovery-validation.d.mts +1 -12
  33. package/lib/target/discovery-validation.d.ts +1 -12
  34. package/lib/target/discovery-validation.js +11 -18
  35. package/lib/target/discovery-validation.mjs +11 -18
  36. package/npm-shrinkwrap.json +2 -2
  37. package/package.json +2 -1
  38. package/src/agent/agent-task-executor.js +109 -30
  39. package/src/agent-cli-provider/adapters/codex.ts +3 -1
  40. package/src/hosted-target/adapter-request.ts +75 -1
  41. package/src/hosted-target/adapter-types.ts +6 -0
  42. package/src/hosted-target/response-status.ts +21 -0
  43. package/src/hosted-target/retry-executor.ts +8 -1
  44. package/src/hosted-target/runtime-install.ts +83 -0
  45. package/src/hosted-target/zero-cloud-v1-adapter.ts +65 -100
  46. package/src/target/discovery-validation.ts +26 -28
  47. package/task-lib/runner.js +14 -1
  48. package/task-lib/watcher-output-runtime.js +80 -1
@@ -1 +1 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/codex.ts"],"names":[],"mappings":"AAGA,OAAO,EASL,KAAK,+BAA+B,EAGrC,MAAM,UAAU,CAAC;AAkTlB,eAAO,MAAM,YAAY,EAAE,+BAoB1B,CAAC"}
1
+ {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/codex.ts"],"names":[],"mappings":"AAGA,OAAO,EASL,KAAK,+BAA+B,EAGrC,MAAM,UAAU,CAAC;AAoTlB,eAAO,MAAM,YAAY,EAAE,+BAoB1B,CAAC"}
@@ -81,7 +81,9 @@ function addCwdArgs(args, options) {
81
81
  function addAutoApproveArgs(args, options) {
82
82
  const features = (0, common_1.optionFeatures)(options);
83
83
  if (options.autoApprove && features.supportsAutoApprove) {
84
- const sandboxMode = options.executionContext === 'docker' ? 'danger-full-access' : 'workspace-write';
84
+ const sandboxMode = options.executionContext === 'docker' || options.executionContext === 'benchmark'
85
+ ? 'danger-full-access'
86
+ : 'workspace-write';
85
87
  args.push('--sandbox', sandboxMode, '--config', 'approval_policy="never"');
86
88
  }
87
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/codex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/codex.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.requestUrl = requestUrl;
4
+ exports.createAdapterRequester = createAdapterRequester;
4
5
  const errors_js_1 = require("./errors.cjs");
6
+ const DEFAULT_TRANSPORT = {
7
+ fetch(url, init) {
8
+ return globalThis.fetch(url, init);
9
+ },
10
+ };
11
+ function throwIfAborted(signal) {
12
+ if (signal?.aborted)
13
+ throw signal.reason ?? new globalThis.DOMException('The operation was aborted', 'AbortError');
14
+ }
15
+ async function resolveAccessToken(tokenProvider, accessToken, signal) {
16
+ if (accessToken !== undefined)
17
+ return accessToken;
18
+ try {
19
+ return await tokenProvider.getAccessToken(signal);
20
+ }
21
+ catch {
22
+ throw new errors_js_1.TargetAuthError('Target access authorization failed');
23
+ }
24
+ }
5
25
  function requestUrl(path, descriptor) {
6
26
  const baseUrl = new globalThis.URL(descriptor.capsule.baseUrl);
7
27
  const requestPath = `${baseUrl.pathname.replace(/\/$/, '')}${path}`;
@@ -13,3 +33,38 @@ function requestUrl(path, descriptor) {
13
33
  }
14
34
  return url;
15
35
  }
36
+ function createAdapterRequester(descriptor, tokenProvider, transport = DEFAULT_TRANSPORT) {
37
+ return async ({ method, path, signal, request, accessToken }) => {
38
+ throwIfAborted(signal);
39
+ const url = requestUrl(path, descriptor);
40
+ const token = await resolveAccessToken(tokenProvider, accessToken, signal);
41
+ const init = {
42
+ method,
43
+ headers: {
44
+ Accept: 'application/json',
45
+ Authorization: `Bearer ${token}`,
46
+ ...(request.body === undefined ? {} : { 'Content-Type': 'application/json' }),
47
+ ...request.headers,
48
+ },
49
+ redirect: 'manual',
50
+ };
51
+ if (request.body !== undefined)
52
+ init.body = request.body;
53
+ if (signal !== undefined)
54
+ init.signal = signal;
55
+ try {
56
+ const response = await transport.fetch(url.href, init);
57
+ if (response.url && new globalThis.URL(response.url).href !== url.href) {
58
+ await response.body?.cancel().catch(() => undefined);
59
+ throw new errors_js_1.TargetProtocolError('Capsule response changed target route');
60
+ }
61
+ return response;
62
+ }
63
+ catch (error) {
64
+ if (error instanceof errors_js_1.TargetAdapterError)
65
+ throw error;
66
+ throwIfAborted(signal);
67
+ throw new errors_js_1.TargetTransportError('Capsule transport failed');
68
+ }
69
+ };
70
+ }
@@ -1,9 +1,17 @@
1
1
  import type { RouteTemplate, TargetDiscoveryDescriptor } from '../target/discovery.js';
2
2
  import type { TargetOperation } from './retry-executor.js';
3
+ import type { HttpTransport, TargetAccessTokenProvider } from './types.js';
3
4
  export type AdapterRequest = {
4
5
  readonly body?: string;
5
6
  readonly headers?: Readonly<Record<string, string>>;
6
7
  };
8
+ export type AdapterRequester = (input: {
9
+ readonly method: string;
10
+ readonly path: string;
11
+ readonly signal: AbortSignal | undefined;
12
+ readonly request: AdapterRequest;
13
+ readonly accessToken: string | undefined;
14
+ }) => Promise<Response>;
7
15
  export type ExecuteArguments<T> = [
8
16
  operation: TargetOperation,
9
17
  method: string,
@@ -15,3 +23,4 @@ export type ExecuteArguments<T> = [
15
23
  request?: AdapterRequest
16
24
  ];
17
25
  export declare function requestUrl(path: string, descriptor: TargetDiscoveryDescriptor): URL;
26
+ export declare function createAdapterRequester(descriptor: TargetDiscoveryDescriptor, tokenProvider: TargetAccessTokenProvider, transport?: HttpTransport): AdapterRequester;
@@ -1,9 +1,17 @@
1
1
  import type { RouteTemplate, TargetDiscoveryDescriptor } from '../target/discovery.js';
2
2
  import type { TargetOperation } from './retry-executor.js';
3
+ import type { HttpTransport, TargetAccessTokenProvider } from './types.js';
3
4
  export type AdapterRequest = {
4
5
  readonly body?: string;
5
6
  readonly headers?: Readonly<Record<string, string>>;
6
7
  };
8
+ export type AdapterRequester = (input: {
9
+ readonly method: string;
10
+ readonly path: string;
11
+ readonly signal: AbortSignal | undefined;
12
+ readonly request: AdapterRequest;
13
+ readonly accessToken: string | undefined;
14
+ }) => Promise<Response>;
7
15
  export type ExecuteArguments<T> = [
8
16
  operation: TargetOperation,
9
17
  method: string,
@@ -15,3 +23,4 @@ export type ExecuteArguments<T> = [
15
23
  request?: AdapterRequest
16
24
  ];
17
25
  export declare function requestUrl(path: string, descriptor: TargetDiscoveryDescriptor): URL;
26
+ export declare function createAdapterRequester(descriptor: TargetDiscoveryDescriptor, tokenProvider: TargetAccessTokenProvider, transport?: HttpTransport): AdapterRequester;
@@ -1,9 +1,17 @@
1
1
  import type { RouteTemplate, TargetDiscoveryDescriptor } from '../target/discovery.js';
2
2
  import type { TargetOperation } from './retry-executor.js';
3
+ import type { HttpTransport, TargetAccessTokenProvider } from './types.js';
3
4
  export type AdapterRequest = {
4
5
  readonly body?: string;
5
6
  readonly headers?: Readonly<Record<string, string>>;
6
7
  };
8
+ export type AdapterRequester = (input: {
9
+ readonly method: string;
10
+ readonly path: string;
11
+ readonly signal: AbortSignal | undefined;
12
+ readonly request: AdapterRequest;
13
+ readonly accessToken: string | undefined;
14
+ }) => Promise<Response>;
7
15
  export type ExecuteArguments<T> = [
8
16
  operation: TargetOperation,
9
17
  method: string,
@@ -15,3 +23,4 @@ export type ExecuteArguments<T> = [
15
23
  request?: AdapterRequest
16
24
  ];
17
25
  export declare function requestUrl(path: string, descriptor: TargetDiscoveryDescriptor): URL;
26
+ export declare function createAdapterRequester(descriptor: TargetDiscoveryDescriptor, tokenProvider: TargetAccessTokenProvider, transport?: HttpTransport): AdapterRequester;
@@ -1,4 +1,23 @@
1
- import { TargetProtocolError } from './errors.mjs';
1
+ import { TargetAdapterError, TargetAuthError, TargetProtocolError, TargetTransportError, } from './errors.mjs';
2
+ const DEFAULT_TRANSPORT = {
3
+ fetch(url, init) {
4
+ return globalThis.fetch(url, init);
5
+ },
6
+ };
7
+ function throwIfAborted(signal) {
8
+ if (signal?.aborted)
9
+ throw signal.reason ?? new globalThis.DOMException('The operation was aborted', 'AbortError');
10
+ }
11
+ async function resolveAccessToken(tokenProvider, accessToken, signal) {
12
+ if (accessToken !== undefined)
13
+ return accessToken;
14
+ try {
15
+ return await tokenProvider.getAccessToken(signal);
16
+ }
17
+ catch {
18
+ throw new TargetAuthError('Target access authorization failed');
19
+ }
20
+ }
2
21
  export function requestUrl(path, descriptor) {
3
22
  const baseUrl = new globalThis.URL(descriptor.capsule.baseUrl);
4
23
  const requestPath = `${baseUrl.pathname.replace(/\/$/, '')}${path}`;
@@ -10,3 +29,38 @@ export function requestUrl(path, descriptor) {
10
29
  }
11
30
  return url;
12
31
  }
32
+ export function createAdapterRequester(descriptor, tokenProvider, transport = DEFAULT_TRANSPORT) {
33
+ return async ({ method, path, signal, request, accessToken }) => {
34
+ throwIfAborted(signal);
35
+ const url = requestUrl(path, descriptor);
36
+ const token = await resolveAccessToken(tokenProvider, accessToken, signal);
37
+ const init = {
38
+ method,
39
+ headers: {
40
+ Accept: 'application/json',
41
+ Authorization: `Bearer ${token}`,
42
+ ...(request.body === undefined ? {} : { 'Content-Type': 'application/json' }),
43
+ ...request.headers,
44
+ },
45
+ redirect: 'manual',
46
+ };
47
+ if (request.body !== undefined)
48
+ init.body = request.body;
49
+ if (signal !== undefined)
50
+ init.signal = signal;
51
+ try {
52
+ const response = await transport.fetch(url.href, init);
53
+ if (response.url && new globalThis.URL(response.url).href !== url.href) {
54
+ await response.body?.cancel().catch(() => undefined);
55
+ throw new TargetProtocolError('Capsule response changed target route');
56
+ }
57
+ return response;
58
+ }
59
+ catch (error) {
60
+ if (error instanceof TargetAdapterError)
61
+ throw error;
62
+ throwIfAborted(signal);
63
+ throw new TargetTransportError('Capsule transport failed');
64
+ }
65
+ };
66
+ }
@@ -13,6 +13,7 @@ export interface TargetAdapter {
13
13
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
14
14
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
15
15
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
16
+ installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
16
17
  readonly credentialInstall: CredentialInstallCapability;
17
18
  }
18
19
  export interface CreateTargetAdapterOptions {
@@ -13,6 +13,7 @@ export interface TargetAdapter {
13
13
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
14
14
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
15
15
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
16
+ installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
16
17
  readonly credentialInstall: CredentialInstallCapability;
17
18
  }
18
19
  export interface CreateTargetAdapterOptions {
@@ -13,6 +13,7 @@ export interface TargetAdapter {
13
13
  terminate(capsuleId: string, signal?: AbortSignal): Promise<Capsule>;
14
14
  limits(signal?: AbortSignal): Promise<CapsuleLimits>;
15
15
  access(capsuleId: string, signal?: AbortSignal): Promise<CapsuleAccess>;
16
+ installRuntime(capsuleId: string, runtime: unknown, accessToken: string, signal?: AbortSignal): Promise<void>;
16
17
  readonly credentialInstall: CredentialInstallCapability;
17
18
  }
18
19
  export interface CreateTargetAdapterOptions {
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assertCapsuleResponseStatus = assertCapsuleResponseStatus;
4
+ const capsule_error_response_js_1 = require("./capsule-error-response.cjs");
5
+ const errors_js_1 = require("./errors.cjs");
6
+ async function assertCapsuleResponseStatus(response, expectedStatus, readJson, clock) {
7
+ if (response.status >= 300 && response.status < 400) {
8
+ await response.body?.cancel().catch(() => undefined);
9
+ throw new errors_js_1.TargetProtocolError('Capsule redirects are forbidden');
10
+ }
11
+ if (response.status === expectedStatus)
12
+ return;
13
+ if (response.status >= 200 && response.status < 300) {
14
+ await response.body?.cancel().catch(() => undefined);
15
+ throw new errors_js_1.TargetProtocolError('Target returned an unexpected success status');
16
+ }
17
+ await (0, capsule_error_response_js_1.throwCapsuleServerError)(response, readJson, clock);
18
+ }
@@ -0,0 +1,2 @@
1
+ import type { Clock } from './types.js';
2
+ export declare function assertCapsuleResponseStatus(response: Response, expectedStatus: number, readJson: (response: Response) => Promise<unknown>, clock: Clock): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import type { Clock } from './types.js';
2
+ export declare function assertCapsuleResponseStatus(response: Response, expectedStatus: number, readJson: (response: Response) => Promise<unknown>, clock: Clock): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import type { Clock } from './types.js';
2
+ export declare function assertCapsuleResponseStatus(response: Response, expectedStatus: number, readJson: (response: Response) => Promise<unknown>, clock: Clock): Promise<void>;
@@ -0,0 +1,15 @@
1
+ import { throwCapsuleServerError } from './capsule-error-response.mjs';
2
+ import { TargetProtocolError } from './errors.mjs';
3
+ export async function assertCapsuleResponseStatus(response, expectedStatus, readJson, clock) {
4
+ if (response.status >= 300 && response.status < 400) {
5
+ await response.body?.cancel().catch(() => undefined);
6
+ throw new TargetProtocolError('Capsule redirects are forbidden');
7
+ }
8
+ if (response.status === expectedStatus)
9
+ return;
10
+ if (response.status >= 200 && response.status < 300) {
11
+ await response.body?.cancel().catch(() => undefined);
12
+ throw new TargetProtocolError('Target returned an unexpected success status');
13
+ }
14
+ await throwCapsuleServerError(response, readJson, clock);
15
+ }
@@ -1,5 +1,5 @@
1
1
  import type { Clock, RetryPolicy } from './types.js';
2
- export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access';
2
+ export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access' | 'installRuntime';
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';
2
+ export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access' | 'installRuntime';
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';
2
+ export type TargetOperation = 'allocate' | 'list' | 'inspect' | 'terminate' | 'limits' | 'access' | 'installRuntime';
3
3
  type RetryContext = {
4
4
  readonly clock: Clock;
5
5
  readonly policy: RetryPolicy;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.installRuntime = installRuntime;
4
+ const bounded_response_js_1 = require("../target/bounded-response.cjs");
5
+ const bounds_js_1 = require("./bounds.cjs");
6
+ const errors_js_1 = require("./errors.cjs");
7
+ const response_status_js_1 = require("./response-status.cjs");
8
+ const retry_executor_js_1 = require("./retry-executor.cjs");
9
+ function validOpaque(value, field) {
10
+ if (value.length === 0 || value.length > 1024) {
11
+ throw new errors_js_1.TargetProtocolError(`${field} is invalid`);
12
+ }
13
+ }
14
+ function runtimeBody(runtime, maximum) {
15
+ let body;
16
+ try {
17
+ body = JSON.stringify(runtime);
18
+ }
19
+ catch {
20
+ throw new errors_js_1.TargetProtocolError('Runtime bundle is not serializable');
21
+ }
22
+ if (body === undefined || Buffer.byteLength(body) > maximum) {
23
+ throw new errors_js_1.TargetProtocolError('Runtime bundle exceeds the advertised size bound');
24
+ }
25
+ return body;
26
+ }
27
+ async function installRuntime(options) {
28
+ validOpaque(options.capsuleId, 'capsule id');
29
+ validOpaque(options.accessToken, 'capsule access token');
30
+ let path;
31
+ try {
32
+ path = options.descriptor.install.routeTemplate.expand({
33
+ capsule_id: options.capsuleId,
34
+ });
35
+ }
36
+ catch {
37
+ throw new errors_js_1.TargetProtocolError('Runtime install route expansion is unsafe');
38
+ }
39
+ const body = runtimeBody(options.runtime, options.descriptor.maxBodyBytes);
40
+ await (0, retry_executor_js_1.withTargetRetry)('installRuntime', async () => {
41
+ const response = await options.request(options.descriptor.install.method, path, options.signal, body, options.accessToken);
42
+ await (0, response_status_js_1.assertCapsuleResponseStatus)(response, 204, (errorResponse) => (0, bounded_response_js_1.readBoundedResponseJson)(errorResponse, bounds_js_1.MAX_RESPONSE_BYTES, () => new errors_js_1.TargetProtocolError('Capsule error response is malformed')), options.clock);
43
+ await response.body?.cancel().catch(() => undefined);
44
+ }, options.signal, { clock: options.clock, policy: options.retryPolicy });
45
+ }
@@ -0,0 +1,14 @@
1
+ import type { CredentialInstallDescriptor } from '../target/discovery.js';
2
+ import type { Clock, RetryPolicy } from './types.js';
3
+ type RuntimeInstallOptions = {
4
+ readonly capsuleId: string;
5
+ readonly runtime: unknown;
6
+ readonly accessToken: string;
7
+ readonly descriptor: CredentialInstallDescriptor;
8
+ readonly signal?: AbortSignal;
9
+ readonly clock: Clock;
10
+ readonly retryPolicy: RetryPolicy;
11
+ readonly request: (method: string, path: string, signal: AbortSignal | undefined, body: string, accessToken: string) => Promise<Response>;
12
+ };
13
+ export declare function installRuntime(options: RuntimeInstallOptions): Promise<void>;
14
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { CredentialInstallDescriptor } from '../target/discovery.js';
2
+ import type { Clock, RetryPolicy } from './types.js';
3
+ type RuntimeInstallOptions = {
4
+ readonly capsuleId: string;
5
+ readonly runtime: unknown;
6
+ readonly accessToken: string;
7
+ readonly descriptor: CredentialInstallDescriptor;
8
+ readonly signal?: AbortSignal;
9
+ readonly clock: Clock;
10
+ readonly retryPolicy: RetryPolicy;
11
+ readonly request: (method: string, path: string, signal: AbortSignal | undefined, body: string, accessToken: string) => Promise<Response>;
12
+ };
13
+ export declare function installRuntime(options: RuntimeInstallOptions): Promise<void>;
14
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { CredentialInstallDescriptor } from '../target/discovery.js';
2
+ import type { Clock, RetryPolicy } from './types.js';
3
+ type RuntimeInstallOptions = {
4
+ readonly capsuleId: string;
5
+ readonly runtime: unknown;
6
+ readonly accessToken: string;
7
+ readonly descriptor: CredentialInstallDescriptor;
8
+ readonly signal?: AbortSignal;
9
+ readonly clock: Clock;
10
+ readonly retryPolicy: RetryPolicy;
11
+ readonly request: (method: string, path: string, signal: AbortSignal | undefined, body: string, accessToken: string) => Promise<Response>;
12
+ };
13
+ export declare function installRuntime(options: RuntimeInstallOptions): Promise<void>;
14
+ export {};
@@ -0,0 +1,42 @@
1
+ import { readBoundedResponseJson } from '../target/bounded-response.mjs';
2
+ import { MAX_RESPONSE_BYTES } from './bounds.mjs';
3
+ import { TargetProtocolError } from './errors.mjs';
4
+ import { assertCapsuleResponseStatus } from './response-status.mjs';
5
+ import { withTargetRetry } from './retry-executor.mjs';
6
+ function validOpaque(value, field) {
7
+ if (value.length === 0 || value.length > 1024) {
8
+ throw new TargetProtocolError(`${field} is invalid`);
9
+ }
10
+ }
11
+ function runtimeBody(runtime, maximum) {
12
+ let body;
13
+ try {
14
+ body = JSON.stringify(runtime);
15
+ }
16
+ catch {
17
+ throw new TargetProtocolError('Runtime bundle is not serializable');
18
+ }
19
+ if (body === undefined || Buffer.byteLength(body) > maximum) {
20
+ throw new TargetProtocolError('Runtime bundle exceeds the advertised size bound');
21
+ }
22
+ return body;
23
+ }
24
+ export async function installRuntime(options) {
25
+ validOpaque(options.capsuleId, 'capsule id');
26
+ validOpaque(options.accessToken, 'capsule access token');
27
+ let path;
28
+ try {
29
+ path = options.descriptor.install.routeTemplate.expand({
30
+ capsule_id: options.capsuleId,
31
+ });
32
+ }
33
+ catch {
34
+ throw new TargetProtocolError('Runtime install route expansion is unsafe');
35
+ }
36
+ const body = runtimeBody(options.runtime, options.descriptor.maxBodyBytes);
37
+ await withTargetRetry('installRuntime', async () => {
38
+ const response = await options.request(options.descriptor.install.method, path, options.signal, body, options.accessToken);
39
+ await assertCapsuleResponseStatus(response, 204, (errorResponse) => readBoundedResponseJson(errorResponse, MAX_RESPONSE_BYTES, () => new TargetProtocolError('Capsule error response is malformed')), options.clock);
40
+ await response.body?.cancel().catch(() => undefined);
41
+ }, options.signal, { clock: options.clock, policy: options.retryPolicy });
42
+ }
@@ -6,20 +6,12 @@ const errors_js_1 = require("./errors.cjs");
6
6
  const retry_js_1 = require("./retry.cjs");
7
7
  const response_validation_js_1 = require("./response-validation.cjs");
8
8
  const bounded_response_js_1 = require("../target/bounded-response.cjs");
9
- const capsule_error_response_js_1 = require("./capsule-error-response.cjs");
10
9
  const access_url_js_1 = require("./access-url.cjs");
11
10
  const retry_executor_js_1 = require("./retry-executor.cjs");
11
+ const runtime_install_js_1 = require("./runtime-install.cjs");
12
+ const response_status_js_1 = require("./response-status.cjs");
12
13
  const adapter_request_js_1 = require("./adapter-request.cjs");
13
- const DEFAULT_TRANSPORT = {
14
- fetch(url, init) {
15
- return globalThis.fetch(url, init);
16
- },
17
- };
18
14
  const DEFAULT_CLOCK = { now: () => Date.now() };
19
- function throwIfAborted(signal) {
20
- if (signal?.aborted)
21
- throw signal.reason ?? new globalThis.DOMException('The operation was aborted', 'AbortError');
22
- }
23
15
  function validOpaque(value, field) {
24
16
  if (value.length === 0 || value.length > 1024)
25
17
  throw new errors_js_1.TargetProtocolError(`${field} is invalid`);
@@ -30,16 +22,14 @@ function jsonRequest(body) {
30
22
  class ZeroCloudV1TargetAdapter {
31
23
  #descriptor;
32
24
  #organizationId;
33
- #tokenProvider;
34
- #transport;
25
+ #request;
35
26
  #clock;
36
27
  #retryPolicy;
37
28
  constructor(options) {
38
29
  this.#descriptor = options.descriptor;
39
30
  this.#organizationId = options.organization.id;
40
31
  validOpaque(this.#organizationId, 'organization id');
41
- this.#tokenProvider = options.tokenProvider;
42
- this.#transport = options.transport ?? DEFAULT_TRANSPORT;
32
+ this.#request = (0, adapter_request_js_1.createAdapterRequester)(options.descriptor, options.tokenProvider, options.transport);
43
33
  this.#clock = options.clock ?? DEFAULT_CLOCK;
44
34
  this.#retryPolicy = options.retryPolicy ?? new retry_js_1.DefaultRetryPolicy();
45
35
  }
@@ -109,11 +99,33 @@ class ZeroCloudV1TargetAdapter {
109
99
  (0, access_url_js_1.validateAccessUrl)(result.websocketUrl, capsuleId, this.#descriptor);
110
100
  return result;
111
101
  }
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
+ }
112
124
  #execute(...args) {
113
125
  return Promise.resolve().then(() => this.#executeExpanded(args));
114
126
  }
115
127
  #executeExpanded(args) {
116
- const [operation, method, template, values, expectedStatus, validate, signal, request = {},] = args;
128
+ const [operation, method, template, values, expectedStatus, validate, signal, request = {}] = args;
117
129
  let path;
118
130
  try {
119
131
  path = template.expand(values);
@@ -122,60 +134,17 @@ class ZeroCloudV1TargetAdapter {
122
134
  throw new errors_js_1.TargetProtocolError('Capsule route expansion is unsafe');
123
135
  }
124
136
  return (0, retry_executor_js_1.withTargetRetry)(operation, async () => {
125
- const response = await this.#request(method, path, signal, request);
126
- if (response.status >= 300 && response.status < 400) {
127
- await response.body?.cancel().catch(() => undefined);
128
- throw new errors_js_1.TargetProtocolError('Capsule redirects are forbidden');
129
- }
130
- if (response.status !== expectedStatus) {
131
- if (response.status >= 200 && response.status < 300) {
132
- await response.body?.cancel().catch(() => undefined);
133
- throw new errors_js_1.TargetProtocolError('Target returned an unexpected success status');
134
- }
135
- await (0, capsule_error_response_js_1.throwCapsuleServerError)(response, (errorResponse) => this.#readJson(errorResponse), this.#clock);
136
- }
137
+ const response = await this.#request({
138
+ method,
139
+ path,
140
+ signal,
141
+ request,
142
+ accessToken: undefined,
143
+ });
144
+ await (0, response_status_js_1.assertCapsuleResponseStatus)(response, expectedStatus, (errorResponse) => this.#readJson(errorResponse), this.#clock);
137
145
  return validate(await this.#readJson(response));
138
146
  }, signal, { clock: this.#clock, policy: this.#retryPolicy });
139
147
  }
140
- async #request(method, path, signal, request) {
141
- throwIfAborted(signal);
142
- const url = (0, adapter_request_js_1.requestUrl)(path, this.#descriptor);
143
- let token;
144
- try {
145
- token = await this.#tokenProvider.getAccessToken(signal);
146
- }
147
- catch {
148
- throw new errors_js_1.TargetAuthError('Target access authorization failed');
149
- }
150
- const init = {
151
- method,
152
- headers: {
153
- Accept: 'application/json',
154
- Authorization: `Bearer ${token}`,
155
- ...(request.body === undefined ? {} : { 'Content-Type': 'application/json' }),
156
- ...request.headers,
157
- },
158
- redirect: 'manual',
159
- };
160
- if (request.body !== undefined)
161
- init.body = request.body;
162
- if (signal !== undefined)
163
- init.signal = signal;
164
- try {
165
- const response = await this.#transport.fetch(url.href, init);
166
- if (response.url && new globalThis.URL(response.url).href !== url.href) {
167
- await response.body?.cancel().catch(() => undefined);
168
- throw new errors_js_1.TargetProtocolError('Capsule response changed target route');
169
- }
170
- return response;
171
- }
172
- catch (error) {
173
- if (error instanceof errors_js_1.TargetAdapterError)
174
- throw error;
175
- throwIfAborted(signal);
176
- throw new errors_js_1.TargetTransportError('Capsule transport failed');
177
- }
178
- }
179
148
  #readJson(response) {
180
149
  return (0, bounded_response_js_1.readBoundedResponseJson)(response, bounds_js_1.MAX_RESPONSE_BYTES, (kind) => new errors_js_1.TargetProtocolError(kind === 'size'
181
150
  ? 'Capsule response exceeds the size limit'