@aexhq/sdk 0.13.10 → 0.14.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.
- package/README.md +2 -1
- package/dist/_contracts/run-config.js +5 -3
- package/dist/client.d.ts +22 -13
- package/dist/client.js +68 -586
- package/dist/client.js.map +1 -1
- package/dist/skill.d.ts +32 -2
- package/dist/skill.js +31 -2
- package/dist/skill.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/docs/events.md +1 -1
- package/docs/provider-runtime-capabilities.md +1 -1
- package/docs/skills.md +27 -7
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -30,6 +30,7 @@ aex cancel <run-id> --api-token …
|
|
|
30
30
|
aex delete <run-id> --api-token …
|
|
31
31
|
aex whoami --api-token …
|
|
32
32
|
aex skills <upload|list|get|delete> [flags] --api-token …
|
|
33
|
+
aex delete-asset <assetId|hash> --api-token …
|
|
33
34
|
```
|
|
34
35
|
|
|
35
36
|
The SDK class and the CLI are backed by the same public `@aexhq/contracts` operations module — any read or write you can do through one, you can do through the other, against the same durable run records. The same npm package also ships the in-container `aex` CLI as its `bin` entry; managed runs mount that CLI inside the runner so skills can call `aex proxy …` against the per-run manifest. See [product capabilities and boundaries](docs/product-boundaries.md).
|
|
@@ -102,7 +103,7 @@ Stream events live with `aex.stream(runId)`:
|
|
|
102
103
|
|
|
103
104
|
```ts
|
|
104
105
|
for await (const event of aex.stream(runId)) {
|
|
105
|
-
if (event.type === "
|
|
106
|
+
if (event.type === "TEXT_MESSAGE_CONTENT") {
|
|
106
107
|
// typed event helpers live under `aex`'s event guard exports.
|
|
107
108
|
}
|
|
108
109
|
}
|
|
@@ -428,9 +428,11 @@ export function rejectStdioMcpShape(record) {
|
|
|
428
428
|
/**
|
|
429
429
|
* Reasons an IP-literal host should be refused. Returns null when the
|
|
430
430
|
* literal is a routable public address (or not an IP literal at all — name
|
|
431
|
-
* resolution is the caller's concern).
|
|
432
|
-
* numeric-range deny-list
|
|
433
|
-
*
|
|
431
|
+
* resolution is the caller's concern). This in-package copy of the
|
|
432
|
+
* numeric-range deny-list is kept byte-identical to
|
|
433
|
+
* platform/packages/shared/src/blueprint.ts by the contract-parity gate, so
|
|
434
|
+
* the shared MCP parser, the Worker BYOK proxy handlers, and
|
|
435
|
+
* `submission.parseProxyBaseUrl` all classify the same bytes.
|
|
434
436
|
*
|
|
435
437
|
* `host` is the already-bracket-stripped, lowercased hostname.
|
|
436
438
|
*
|
package/dist/client.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { HttpClient, type AexEvent, type AgentsMdRecord, type CredentialMode, type DebugSink, type FetchLike, type FileRecord, type Output, type OutputMode, type PlatformSubmission, type PlatformInlineSecrets, type PlatformProxyEndpoint, type PlatformProxyEndpointAuth, type Run, type RunEvent, type RunProvider, type RunUnit, type RuntimeSize, type RuntimeKind, type SignedOutputLink, type Skill as SkillRecord, type WhoAmI } from "./_contracts/index.js";
|
|
2
2
|
import { AgentsMd } from "./agents-md.js";
|
|
3
|
+
import { type UploadedAsset } from "./asset-upload.js";
|
|
3
4
|
import { File } from "./file.js";
|
|
4
5
|
import { McpServer } from "./mcp-server.js";
|
|
5
6
|
import { ProxyEndpoint } from "./proxy-endpoint.js";
|
|
@@ -275,10 +276,10 @@ export declare class AgentExecutor {
|
|
|
275
276
|
* NOTE (tech-debt): this is part of the legacy workspace-skill upload
|
|
276
277
|
* surface (`SkillsClient` + `operations.createSkillBundle` + the TUS
|
|
277
278
|
* chunked path in asset-upload.ts). The live submit path materializes
|
|
278
|
-
* inline skills via `uploadAsset` instead; `Skill`
|
|
279
|
-
*
|
|
280
|
-
* deliberate deprecation pass (it still threads into the CLI
|
|
281
|
-
* commands), tracked in the remediation plan as item 4a.
|
|
279
|
+
* inline skills via `uploadAsset` instead; `Skill.upload(client)`
|
|
280
|
+
* pre-stages a draft explicitly for reuse. This surface is retained
|
|
281
|
+
* pending a deliberate deprecation pass (it still threads into the CLI
|
|
282
|
+
* host commands), tracked in the remediation plan as item 4a.
|
|
282
283
|
*/
|
|
283
284
|
_uploadSkillBundle(args: {
|
|
284
285
|
readonly name: string;
|
|
@@ -302,6 +303,17 @@ export declare class AgentExecutor {
|
|
|
302
303
|
readonly name: string;
|
|
303
304
|
readonly bytes: Uint8Array;
|
|
304
305
|
}): Promise<FileRecord>;
|
|
306
|
+
/**
|
|
307
|
+
* Internal: materialize raw bytes to the content-addressable asset store
|
|
308
|
+
* (`/assets/presign` → PUT → `/assets/finalize`). Used by `Skill.upload(this)`
|
|
309
|
+
* to pre-upload a draft skill bundle so a later run carries only a plain
|
|
310
|
+
* `kind:"asset"` ref. NOT part of the public API.
|
|
311
|
+
*/
|
|
312
|
+
_uploadAsset(args: {
|
|
313
|
+
readonly bytes: Uint8Array;
|
|
314
|
+
readonly hash: string;
|
|
315
|
+
readonly contentType?: string;
|
|
316
|
+
}): Promise<UploadedAsset>;
|
|
305
317
|
/**
|
|
306
318
|
* Submit a run and wait for it to reach a terminal state. Returns the
|
|
307
319
|
* final `Run` record. For long-running flows, prefer `submitRun` +
|
|
@@ -317,15 +329,12 @@ export declare class AgentExecutor {
|
|
|
317
329
|
* before sending so credentials never enter the hashed submission or
|
|
318
330
|
* the run snapshot.
|
|
319
331
|
*
|
|
320
|
-
* Unstaged inline skills (`Skill.fromFiles` /
|
|
321
|
-
*
|
|
322
|
-
*
|
|
323
|
-
*
|
|
324
|
-
*
|
|
325
|
-
*
|
|
326
|
-
* rewrites the run's `skills[]` to reference the resulting `skl_*`
|
|
327
|
-
* ids. The bytes persist on aex; the user can browse and
|
|
328
|
-
* download the resulting workspace skill from the dashboard.
|
|
332
|
+
* Unstaged inline skills / agentsMd / files (`Skill.fromFiles` /
|
|
333
|
+
* `Skill.fromPath` / `AgentsMd.fromContent` / `File.fromBytes` without a
|
|
334
|
+
* prior `.upload`) are auto-uploaded to the content-addressable asset
|
|
335
|
+
* store (`/assets/presign` → PUT → `/assets/finalize`) before `POST /runs`,
|
|
336
|
+
* deduped by content hash, and referenced in the submission as plain
|
|
337
|
+
* `{ kind:"asset" }` refs — identical to a pre-staged `.upload(client)`.
|
|
329
338
|
*/
|
|
330
339
|
submitRun(options: SubmitRunOptions): Promise<string>;
|
|
331
340
|
getRun(runId: string): Promise<Run>;
|
package/dist/client.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { AexError, DEFAULT_CREDENTIAL_MODE, DEFAULT_RUN_PROVIDER, HttpClient, RUNTIME_KINDS, RunStateError, operations, parseCredentialMode, streamCoordinatorEvents, TERMINAL_RUN_STATUSES } from "./_contracts/index.js";
|
|
2
|
-
import { request as httpRequest } from "node:http";
|
|
3
|
-
import { request as httpsRequest } from "node:https";
|
|
4
2
|
import { AgentsMd } from "./agents-md.js";
|
|
3
|
+
import { uploadAsset } from "./asset-upload.js";
|
|
5
4
|
import { File } from "./file.js";
|
|
6
5
|
import { McpServer } from "./mcp-server.js";
|
|
7
6
|
import { splitProxyEndpoints } from "./proxy-endpoint.js";
|
|
@@ -142,7 +141,7 @@ export class FilesClient {
|
|
|
142
141
|
*/
|
|
143
142
|
export class AgentExecutor {
|
|
144
143
|
#http;
|
|
145
|
-
/** The same fetch the HttpClient uses,
|
|
144
|
+
/** The same fetch the HttpClient uses, threaded into `_uploadAsset`. */
|
|
146
145
|
#fetch;
|
|
147
146
|
skills;
|
|
148
147
|
agentsMd;
|
|
@@ -174,10 +173,10 @@ export class AgentExecutor {
|
|
|
174
173
|
* NOTE (tech-debt): this is part of the legacy workspace-skill upload
|
|
175
174
|
* surface (`SkillsClient` + `operations.createSkillBundle` + the TUS
|
|
176
175
|
* chunked path in asset-upload.ts). The live submit path materializes
|
|
177
|
-
* inline skills via `uploadAsset` instead; `Skill`
|
|
178
|
-
*
|
|
179
|
-
* deliberate deprecation pass (it still threads into the CLI
|
|
180
|
-
* commands), tracked in the remediation plan as item 4a.
|
|
176
|
+
* inline skills via `uploadAsset` instead; `Skill.upload(client)`
|
|
177
|
+
* pre-stages a draft explicitly for reuse. This surface is retained
|
|
178
|
+
* pending a deliberate deprecation pass (it still threads into the CLI
|
|
179
|
+
* host commands), tracked in the remediation plan as item 4a.
|
|
181
180
|
*/
|
|
182
181
|
async _uploadSkillBundle(args) {
|
|
183
182
|
return this.skills._uploadSkillBundle(args);
|
|
@@ -198,6 +197,21 @@ export class AgentExecutor {
|
|
|
198
197
|
async _uploadFile(args) {
|
|
199
198
|
return this.files._uploadFile(args);
|
|
200
199
|
}
|
|
200
|
+
/**
|
|
201
|
+
* Internal: materialize raw bytes to the content-addressable asset store
|
|
202
|
+
* (`/assets/presign` → PUT → `/assets/finalize`). Used by `Skill.upload(this)`
|
|
203
|
+
* to pre-upload a draft skill bundle so a later run carries only a plain
|
|
204
|
+
* `kind:"asset"` ref. NOT part of the public API.
|
|
205
|
+
*/
|
|
206
|
+
async _uploadAsset(args) {
|
|
207
|
+
return uploadAsset({
|
|
208
|
+
http: this.#http,
|
|
209
|
+
bytes: args.bytes,
|
|
210
|
+
hash: args.hash,
|
|
211
|
+
...(args.contentType ? { contentType: args.contentType } : {}),
|
|
212
|
+
...(this.#fetch ? { fetch: this.#fetch } : {})
|
|
213
|
+
});
|
|
214
|
+
}
|
|
201
215
|
/**
|
|
202
216
|
* Submit a run and wait for it to reach a terminal state. Returns the
|
|
203
217
|
* final `Run` record. For long-running flows, prefer `submitRun` +
|
|
@@ -216,15 +230,12 @@ export class AgentExecutor {
|
|
|
216
230
|
* before sending so credentials never enter the hashed submission or
|
|
217
231
|
* the run snapshot.
|
|
218
232
|
*
|
|
219
|
-
* Unstaged inline skills (`Skill.fromFiles` /
|
|
220
|
-
*
|
|
221
|
-
*
|
|
222
|
-
*
|
|
223
|
-
*
|
|
224
|
-
*
|
|
225
|
-
* rewrites the run's `skills[]` to reference the resulting `skl_*`
|
|
226
|
-
* ids. The bytes persist on aex; the user can browse and
|
|
227
|
-
* download the resulting workspace skill from the dashboard.
|
|
233
|
+
* Unstaged inline skills / agentsMd / files (`Skill.fromFiles` /
|
|
234
|
+
* `Skill.fromPath` / `AgentsMd.fromContent` / `File.fromBytes` without a
|
|
235
|
+
* prior `.upload`) are auto-uploaded to the content-addressable asset
|
|
236
|
+
* store (`/assets/presign` → PUT → `/assets/finalize`) before `POST /runs`,
|
|
237
|
+
* deduped by content hash, and referenced in the submission as plain
|
|
238
|
+
* `{ kind:"asset" }` refs — identical to a pre-staged `.upload(client)`.
|
|
228
239
|
*/
|
|
229
240
|
async submitRun(options) {
|
|
230
241
|
if (!options || typeof options !== "object") {
|
|
@@ -250,26 +261,30 @@ export class AgentExecutor {
|
|
|
250
261
|
const prompt = normalisePrompt(options.prompt);
|
|
251
262
|
const { endpoints: proxyEndpointDeclarations, auth: proxyEndpointAuthFromInstances } = splitProxyEndpoints(options.proxyEndpoints ?? []);
|
|
252
263
|
const mergedProxyAuth = mergeProxyEndpointAuth(proxyEndpointAuthFromInstances, options.secrets.proxyEndpointAuth ?? []);
|
|
253
|
-
//
|
|
254
|
-
//
|
|
255
|
-
//
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
264
|
+
// Validate the runtime selector before any network I/O — inline drafts
|
|
265
|
+
// are uploaded below, so an invalid runtime must reject first rather than
|
|
266
|
+
// leak an asset upload.
|
|
267
|
+
if (options.runtime !== undefined &&
|
|
268
|
+
!RUNTIME_KINDS.includes(options.runtime)) {
|
|
269
|
+
throw new AexError("RUNTIME_UNSUPPORTED", `AgentExecutor.submitRun: runtime must be one of: ${RUNTIME_KINDS.join(", ")} ` +
|
|
270
|
+
`(got ${JSON.stringify(options.runtime)})`);
|
|
271
|
+
}
|
|
272
|
+
// Walk Skill / AgentsMd / File instances. Inline drafts are eagerly
|
|
273
|
+
// uploaded to the content-addressable asset store here (before POST /runs)
|
|
274
|
+
// and referenced as plain `kind:"asset"` refs. Already-materialized asset
|
|
275
|
+
// refs pass through unchanged.
|
|
276
|
+
const uploader = (args) => this._uploadAsset(args);
|
|
277
|
+
const preparedSkills = await prepareSkills(options.skills ?? [], uploader);
|
|
278
|
+
const preparedAgentsMd = await prepareAgentsMd(options.agentsMd ?? [], uploader);
|
|
279
|
+
const preparedFiles = await prepareFiles(options.files ?? [], uploader);
|
|
265
280
|
const { submissionMcpServers, mergedMcpSecrets } = mergeMcpServers(options.mcpServers ?? [], options.secrets.mcpServers ?? []);
|
|
266
281
|
const submission = {
|
|
267
282
|
model: options.model,
|
|
268
283
|
...(options.system ? { system: options.system } : {}),
|
|
269
284
|
prompt,
|
|
270
|
-
skills: preparedSkills
|
|
271
|
-
agentsMd: preparedAgentsMd
|
|
272
|
-
files: preparedFiles
|
|
285
|
+
skills: preparedSkills,
|
|
286
|
+
agentsMd: preparedAgentsMd,
|
|
287
|
+
files: preparedFiles,
|
|
273
288
|
// submissionMcpServers may contain workspace refs of the shape
|
|
274
289
|
// {kind:"workspace", id:"mcp_..."}. The BFF runs
|
|
275
290
|
// `resolveWorkspaceMcpRefsInSubmission` BEFORE the shared parser
|
|
@@ -315,30 +330,8 @@ export class AgentExecutor {
|
|
|
315
330
|
? { proxyEndpoints: proxyEndpointDeclarations }
|
|
316
331
|
: {})
|
|
317
332
|
};
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
throw new AexError("RUNTIME_UNSUPPORTED", `AgentExecutor.submitRun: runtime must be one of: ${RUNTIME_KINDS.join(", ")} ` +
|
|
321
|
-
`(got ${JSON.stringify(options.runtime)})`);
|
|
322
|
-
}
|
|
323
|
-
const submitRequest = directInputs.length > 0
|
|
324
|
-
? {
|
|
325
|
-
...request,
|
|
326
|
-
bootstrapMode: "direct",
|
|
327
|
-
directInputs: directInputs.map(({ bytes: _bytes, ...descriptor }) => descriptor)
|
|
328
|
-
}
|
|
329
|
-
: request;
|
|
330
|
-
const run = await operations.submitRun(this.#http, submitRequest);
|
|
331
|
-
const runId = getSubmittedRunId(run);
|
|
332
|
-
if (directInputs.length > 0) {
|
|
333
|
-
await completeDirectBootstrap({
|
|
334
|
-
response: run,
|
|
335
|
-
directInputs,
|
|
336
|
-
hasRunAcceptedBootstrap: async () => hasRunAcceptedBootstrap(await operations.getRun(this.#http, runId)),
|
|
337
|
-
...(options.signal ? { signal: options.signal } : {}),
|
|
338
|
-
...(this.#fetch ? { fetch: this.#fetch } : {})
|
|
339
|
-
});
|
|
340
|
-
}
|
|
341
|
-
return runId;
|
|
333
|
+
const run = await operations.submitRun(this.#http, request);
|
|
334
|
+
return getSubmittedRunId(run);
|
|
342
335
|
}
|
|
343
336
|
getRun(runId) {
|
|
344
337
|
return operations.getRun(this.#http, runId);
|
|
@@ -531,10 +524,6 @@ export class AgentExecutor {
|
|
|
531
524
|
// against the canonical terminal set rather than re-deriving one (which is how
|
|
532
525
|
// `timed_out` got dropped from the old hardcoded list).
|
|
533
526
|
const TERMINAL_STATUSES = new Set(TERMINAL_RUN_STATUSES);
|
|
534
|
-
const DIRECT_BOOTSTRAP_RETRY_STATUSES = new Set([408, 425, 429, 502, 503, 504]);
|
|
535
|
-
const DIRECT_BOOTSTRAP_INITIAL_BACKOFF_MS = 100;
|
|
536
|
-
const DIRECT_BOOTSTRAP_MAX_BACKOFF_MS = 1_000;
|
|
537
|
-
const DIRECT_BOOTSTRAP_ATTEMPT_TIMEOUT_MS = 10_000;
|
|
538
527
|
function isTerminal(status) {
|
|
539
528
|
return typeof status === "string" && TERMINAL_STATUSES.has(status);
|
|
540
529
|
}
|
|
@@ -631,10 +620,9 @@ function normalisePrompt(input) {
|
|
|
631
620
|
}
|
|
632
621
|
return [...input];
|
|
633
622
|
}
|
|
634
|
-
/** Walk Skill[]
|
|
635
|
-
function prepareSkills(skills) {
|
|
623
|
+
/** Walk Skill[], eagerly upload drafts as assets, and return plain asset refs. */
|
|
624
|
+
async function prepareSkills(skills, uploader) {
|
|
636
625
|
const refs = [];
|
|
637
|
-
const directInputs = [];
|
|
638
626
|
for (let i = 0; i < skills.length; i++) {
|
|
639
627
|
const entry = skills[i];
|
|
640
628
|
if (!(entry instanceof Skill)) {
|
|
@@ -649,18 +637,14 @@ function prepareSkills(skills) {
|
|
|
649
637
|
if (!bundle) {
|
|
650
638
|
throw new Error(`AgentExecutor.submitRun: skills[${i}] is draft but has no bytes`);
|
|
651
639
|
}
|
|
652
|
-
const
|
|
653
|
-
role: "skill",
|
|
654
|
-
index: i,
|
|
655
|
-
name: bundle.name,
|
|
656
|
-
contentHash: bundle.contentHash,
|
|
640
|
+
const uploaded = await uploader({
|
|
657
641
|
bytes: bundle.bytes,
|
|
642
|
+
hash: bundle.contentHash,
|
|
658
643
|
contentType: "application/zip"
|
|
659
644
|
});
|
|
660
|
-
directInputs.push(input);
|
|
661
645
|
refs.push({
|
|
662
646
|
kind: "asset",
|
|
663
|
-
assetId:
|
|
647
|
+
assetId: uploaded.assetId,
|
|
664
648
|
name: bundle.name
|
|
665
649
|
});
|
|
666
650
|
continue;
|
|
@@ -668,12 +652,11 @@ function prepareSkills(skills) {
|
|
|
668
652
|
// Already-materialized asset ref.
|
|
669
653
|
refs.push(ref);
|
|
670
654
|
}
|
|
671
|
-
return
|
|
655
|
+
return refs;
|
|
672
656
|
}
|
|
673
|
-
/** Walk AgentsMd[]
|
|
674
|
-
function prepareAgentsMd(agentsMds) {
|
|
657
|
+
/** Walk AgentsMd[], eagerly upload drafts as assets, and return plain asset refs. */
|
|
658
|
+
async function prepareAgentsMd(agentsMds, uploader) {
|
|
675
659
|
const refs = [];
|
|
676
|
-
const directInputs = [];
|
|
677
660
|
for (let i = 0; i < agentsMds.length; i++) {
|
|
678
661
|
const entry = agentsMds[i];
|
|
679
662
|
if (!(entry instanceof AgentsMd)) {
|
|
@@ -688,30 +671,25 @@ function prepareAgentsMd(agentsMds) {
|
|
|
688
671
|
if (!bundle) {
|
|
689
672
|
throw new Error(`AgentExecutor.submitRun: agentsMd[${i}] is draft but has no bytes`);
|
|
690
673
|
}
|
|
691
|
-
const
|
|
692
|
-
role: "agentsMd",
|
|
693
|
-
index: i,
|
|
694
|
-
name: bundle.name,
|
|
695
|
-
contentHash: bundle.contentHash,
|
|
674
|
+
const uploaded = await uploader({
|
|
696
675
|
bytes: bundle.bytes,
|
|
676
|
+
hash: bundle.contentHash,
|
|
697
677
|
contentType: "application/zip"
|
|
698
678
|
});
|
|
699
|
-
directInputs.push(input);
|
|
700
679
|
refs.push({
|
|
701
680
|
kind: "asset",
|
|
702
|
-
assetId:
|
|
681
|
+
assetId: uploaded.assetId,
|
|
703
682
|
name: bundle.name
|
|
704
683
|
});
|
|
705
684
|
continue;
|
|
706
685
|
}
|
|
707
686
|
refs.push(ref);
|
|
708
687
|
}
|
|
709
|
-
return
|
|
688
|
+
return refs;
|
|
710
689
|
}
|
|
711
|
-
/** Walk File[]
|
|
712
|
-
function prepareFiles(files) {
|
|
690
|
+
/** Walk File[], eagerly upload drafts as assets, and return plain asset refs. */
|
|
691
|
+
async function prepareFiles(files, uploader) {
|
|
713
692
|
const refs = [];
|
|
714
|
-
const directInputs = [];
|
|
715
693
|
for (let i = 0; i < files.length; i++) {
|
|
716
694
|
const entry = files[i];
|
|
717
695
|
if (!(entry instanceof File)) {
|
|
@@ -726,53 +704,28 @@ function prepareFiles(files) {
|
|
|
726
704
|
if (!bundle) {
|
|
727
705
|
throw new Error(`AgentExecutor.submitRun: files[${i}] is draft but has no bytes`);
|
|
728
706
|
}
|
|
729
|
-
const
|
|
730
|
-
role: "file",
|
|
731
|
-
index: i,
|
|
732
|
-
name: bundle.name,
|
|
733
|
-
contentHash: bundle.contentHash,
|
|
707
|
+
const uploaded = await uploader({
|
|
734
708
|
bytes: bundle.bytes,
|
|
735
|
-
|
|
736
|
-
|
|
709
|
+
hash: bundle.contentHash,
|
|
710
|
+
contentType: "application/zip"
|
|
737
711
|
});
|
|
738
|
-
directInputs.push(input);
|
|
739
712
|
refs.push(bundle.mountPath !== undefined
|
|
740
713
|
? {
|
|
741
714
|
kind: "asset",
|
|
742
|
-
assetId:
|
|
715
|
+
assetId: uploaded.assetId,
|
|
743
716
|
name: bundle.name,
|
|
744
717
|
mountPath: bundle.mountPath
|
|
745
718
|
}
|
|
746
719
|
: {
|
|
747
720
|
kind: "asset",
|
|
748
|
-
assetId:
|
|
721
|
+
assetId: uploaded.assetId,
|
|
749
722
|
name: bundle.name
|
|
750
723
|
});
|
|
751
724
|
continue;
|
|
752
725
|
}
|
|
753
726
|
refs.push(ref);
|
|
754
727
|
}
|
|
755
|
-
return
|
|
756
|
-
}
|
|
757
|
-
function directInputFor(args) {
|
|
758
|
-
const sha256 = args.contentHash.startsWith("sha256:")
|
|
759
|
-
? args.contentHash
|
|
760
|
-
: `sha256:${args.contentHash}`;
|
|
761
|
-
const hashHex = sha256.slice("sha256:".length);
|
|
762
|
-
if (!/^[0-9a-f]{64}$/.test(hashHex)) {
|
|
763
|
-
throw new Error(`AgentExecutor.submitRun: ${args.role}[${args.index}] content hash must be sha256:<64-hex>`);
|
|
764
|
-
}
|
|
765
|
-
return {
|
|
766
|
-
inputId: `input_${args.role}_${args.index}_${hashHex}`,
|
|
767
|
-
role: args.role,
|
|
768
|
-
assetId: `asset_${hashHex}`,
|
|
769
|
-
name: args.name,
|
|
770
|
-
sha256,
|
|
771
|
-
sizeBytes: args.bytes.byteLength,
|
|
772
|
-
contentType: args.contentType,
|
|
773
|
-
...(args.mountPath ? { mountPath: args.mountPath } : {}),
|
|
774
|
-
bytes: args.bytes
|
|
775
|
-
};
|
|
728
|
+
return refs;
|
|
776
729
|
}
|
|
777
730
|
function getSubmittedRunId(response) {
|
|
778
731
|
const id = response.id ?? response.runId;
|
|
@@ -781,477 +734,6 @@ function getSubmittedRunId(response) {
|
|
|
781
734
|
}
|
|
782
735
|
return id;
|
|
783
736
|
}
|
|
784
|
-
async function completeDirectBootstrap(args) {
|
|
785
|
-
const token = args.response.bootstrapToken;
|
|
786
|
-
const statusUrl = args.response.bootstrapStatusUrl;
|
|
787
|
-
if (typeof token !== "string" || token.length === 0 || typeof statusUrl !== "string" || statusUrl.length === 0) {
|
|
788
|
-
return;
|
|
789
|
-
}
|
|
790
|
-
const fetchImpl = args.fetch ?? globalThis.fetch.bind(globalThis);
|
|
791
|
-
const useNodeTransport = args.fetch === undefined;
|
|
792
|
-
const deadline = bootstrapDeadline(args.response.bootstrapExpiresAt);
|
|
793
|
-
let target;
|
|
794
|
-
try {
|
|
795
|
-
target = resolveBootstrapReady(args.response) ?? await pollBootstrapReady({
|
|
796
|
-
fetchImpl,
|
|
797
|
-
statusUrl,
|
|
798
|
-
token,
|
|
799
|
-
deadline,
|
|
800
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
801
|
-
});
|
|
802
|
-
for (const input of args.directInputs) {
|
|
803
|
-
await uploadDirectInput({
|
|
804
|
-
fetchImpl,
|
|
805
|
-
target,
|
|
806
|
-
token,
|
|
807
|
-
input,
|
|
808
|
-
deadline,
|
|
809
|
-
useNodeTransport,
|
|
810
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
811
|
-
});
|
|
812
|
-
}
|
|
813
|
-
await commitDirectInputs({
|
|
814
|
-
fetchImpl,
|
|
815
|
-
target,
|
|
816
|
-
token,
|
|
817
|
-
inputs: args.directInputs,
|
|
818
|
-
deadline,
|
|
819
|
-
useNodeTransport,
|
|
820
|
-
...(args.hasRunAcceptedBootstrap ? { hasRunAcceptedBootstrap: args.hasRunAcceptedBootstrap } : {}),
|
|
821
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
822
|
-
});
|
|
823
|
-
}
|
|
824
|
-
catch (err) {
|
|
825
|
-
await abortDirectBootstrap({
|
|
826
|
-
fetchImpl,
|
|
827
|
-
token,
|
|
828
|
-
statusUrl,
|
|
829
|
-
...(target ? { target } : {}),
|
|
830
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
831
|
-
}).catch(() => undefined);
|
|
832
|
-
throw err;
|
|
833
|
-
}
|
|
834
|
-
}
|
|
835
|
-
async function pollBootstrapReady(args) {
|
|
836
|
-
while (!args.signal?.aborted) {
|
|
837
|
-
if (Date.now() >= args.deadline) {
|
|
838
|
-
throw new Error("AgentExecutor.submitRun: bootstrap target did not become ready before it expired");
|
|
839
|
-
}
|
|
840
|
-
const res = await args.fetchImpl(args.statusUrl, {
|
|
841
|
-
method: "GET",
|
|
842
|
-
headers: { authorization: `Bearer ${args.token}`, accept: "application/json" },
|
|
843
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
844
|
-
});
|
|
845
|
-
if (res.ok) {
|
|
846
|
-
const body = await res.json();
|
|
847
|
-
const ready = resolveBootstrapReady(body);
|
|
848
|
-
if (ready)
|
|
849
|
-
return ready;
|
|
850
|
-
}
|
|
851
|
-
else if (![202, 404, 425].includes(res.status)) {
|
|
852
|
-
const detail = await res.text().catch(() => "");
|
|
853
|
-
throw new Error(`AgentExecutor.submitRun: bootstrap status failed with ${res.status}` +
|
|
854
|
-
(detail ? `: ${detail.slice(0, 300)}` : ""));
|
|
855
|
-
}
|
|
856
|
-
await sleep(250, args.signal);
|
|
857
|
-
}
|
|
858
|
-
throw new Error("AgentExecutor.submitRun: aborted");
|
|
859
|
-
}
|
|
860
|
-
function resolveBootstrapReady(value) {
|
|
861
|
-
if (!value || typeof value !== "object")
|
|
862
|
-
return undefined;
|
|
863
|
-
const record = value;
|
|
864
|
-
const base = typeof record.uploadBaseUrl === "string"
|
|
865
|
-
? record.uploadBaseUrl
|
|
866
|
-
: typeof record.bootstrapUploadBaseUrl === "string"
|
|
867
|
-
? record.bootstrapUploadBaseUrl
|
|
868
|
-
: undefined;
|
|
869
|
-
if (!base)
|
|
870
|
-
return undefined;
|
|
871
|
-
const routingHeaders = isStringRecord(record.routingHeaders) ? record.routingHeaders : undefined;
|
|
872
|
-
return {
|
|
873
|
-
uploadBaseUrl: stripTrailingSlash(base),
|
|
874
|
-
...(routingHeaders ? { routingHeaders } : {}),
|
|
875
|
-
...(typeof record.abortUrl === "string" ? { abortUrl: record.abortUrl } : {}),
|
|
876
|
-
...(typeof record.commitUrl === "string" ? { commitUrl: record.commitUrl } : {})
|
|
877
|
-
};
|
|
878
|
-
}
|
|
879
|
-
async function uploadDirectInput(args) {
|
|
880
|
-
let backoffMs = DIRECT_BOOTSTRAP_INITIAL_BACKOFF_MS;
|
|
881
|
-
let lastError;
|
|
882
|
-
const uploadUrl = `${args.target.uploadBaseUrl}/inputs/${encodeURIComponent(args.input.inputId)}`;
|
|
883
|
-
while (!args.signal?.aborted) {
|
|
884
|
-
if (Date.now() >= args.deadline) {
|
|
885
|
-
throw lastError ?? new Error("AgentExecutor.submitRun: bootstrap input upload did not complete before it expired");
|
|
886
|
-
}
|
|
887
|
-
let res;
|
|
888
|
-
try {
|
|
889
|
-
res = await directBootstrapFetch({
|
|
890
|
-
fetchImpl: args.fetchImpl,
|
|
891
|
-
url: uploadUrl,
|
|
892
|
-
deadline: args.deadline,
|
|
893
|
-
operation: `input upload for ${args.input.inputId}`,
|
|
894
|
-
useNodeTransport: args.useNodeTransport,
|
|
895
|
-
...(args.signal ? { signal: args.signal } : {}),
|
|
896
|
-
init: {
|
|
897
|
-
method: "PUT",
|
|
898
|
-
headers: {
|
|
899
|
-
authorization: `Bearer ${args.token}`,
|
|
900
|
-
"content-type": args.input.contentType,
|
|
901
|
-
"x-aex-input-sha256": args.input.sha256,
|
|
902
|
-
"x-aex-input-size": String(args.input.sizeBytes),
|
|
903
|
-
...(args.target.routingHeaders ?? {})
|
|
904
|
-
},
|
|
905
|
-
body: args.input.bytes
|
|
906
|
-
}
|
|
907
|
-
});
|
|
908
|
-
}
|
|
909
|
-
catch (err) {
|
|
910
|
-
if (args.signal?.aborted)
|
|
911
|
-
throw err;
|
|
912
|
-
lastError = bootstrapNetworkError(`input upload for ${args.input.inputId}`, err);
|
|
913
|
-
backoffMs = await waitForBootstrapRetry(backoffMs, args.deadline, args.signal, lastError);
|
|
914
|
-
continue;
|
|
915
|
-
}
|
|
916
|
-
if (res.ok)
|
|
917
|
-
return;
|
|
918
|
-
const detail = await res.text().catch(() => "");
|
|
919
|
-
const err = new Error(`AgentExecutor.submitRun: bootstrap input upload failed for ${args.input.inputId} ` +
|
|
920
|
-
`(status ${res.status})${detail ? `: ${detail.slice(0, 300)}` : ""}`);
|
|
921
|
-
if (!DIRECT_BOOTSTRAP_RETRY_STATUSES.has(res.status)) {
|
|
922
|
-
throw err;
|
|
923
|
-
}
|
|
924
|
-
lastError = err;
|
|
925
|
-
backoffMs = await waitForBootstrapRetry(backoffMs, args.deadline, args.signal, lastError);
|
|
926
|
-
}
|
|
927
|
-
throw lastError ?? new Error("AgentExecutor.submitRun: aborted");
|
|
928
|
-
}
|
|
929
|
-
async function waitForBootstrapRetry(backoffMs, deadline, signal, lastError) {
|
|
930
|
-
const remainingMs = deadline - Date.now();
|
|
931
|
-
if (remainingMs <= 0)
|
|
932
|
-
throw lastError;
|
|
933
|
-
await sleep(Math.min(backoffMs, remainingMs), signal);
|
|
934
|
-
return Math.min(backoffMs * 2, DIRECT_BOOTSTRAP_MAX_BACKOFF_MS);
|
|
935
|
-
}
|
|
936
|
-
async function directBootstrapFetch(args) {
|
|
937
|
-
const remainingMs = args.deadline - Date.now();
|
|
938
|
-
if (remainingMs <= 0) {
|
|
939
|
-
throw new Error(`AgentExecutor.submitRun: bootstrap ${args.operation} did not complete before it expired`);
|
|
940
|
-
}
|
|
941
|
-
const timeoutMs = Math.min(DIRECT_BOOTSTRAP_ATTEMPT_TIMEOUT_MS, remainingMs);
|
|
942
|
-
if (args.useNodeTransport) {
|
|
943
|
-
return nodeDirectBootstrapFetch({
|
|
944
|
-
url: args.url,
|
|
945
|
-
init: args.init,
|
|
946
|
-
timeoutMs,
|
|
947
|
-
operation: args.operation,
|
|
948
|
-
...(args.hasRunAcceptedBootstrap ? { hasRunAcceptedBootstrap: args.hasRunAcceptedBootstrap } : {}),
|
|
949
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
950
|
-
});
|
|
951
|
-
}
|
|
952
|
-
const controller = new AbortController();
|
|
953
|
-
const onAbort = () => controller.abort();
|
|
954
|
-
args.signal?.addEventListener("abort", onAbort, { once: true });
|
|
955
|
-
const fetchPromise = args.fetchImpl(args.url, { ...args.init, signal: controller.signal });
|
|
956
|
-
fetchPromise.catch(() => undefined);
|
|
957
|
-
let timer;
|
|
958
|
-
const timeoutPromise = new Promise((_resolve, reject) => {
|
|
959
|
-
timer = setTimeout(() => {
|
|
960
|
-
controller.abort();
|
|
961
|
-
reject(new Error(`AgentExecutor.submitRun: bootstrap ${args.operation} timed out after ${timeoutMs}ms`));
|
|
962
|
-
}, timeoutMs);
|
|
963
|
-
});
|
|
964
|
-
try {
|
|
965
|
-
return await Promise.race([fetchPromise, timeoutPromise]);
|
|
966
|
-
}
|
|
967
|
-
catch (err) {
|
|
968
|
-
if (args.signal?.aborted)
|
|
969
|
-
throw err;
|
|
970
|
-
throw err;
|
|
971
|
-
}
|
|
972
|
-
finally {
|
|
973
|
-
clearTimeout(timer);
|
|
974
|
-
args.signal?.removeEventListener("abort", onAbort);
|
|
975
|
-
}
|
|
976
|
-
}
|
|
977
|
-
async function nodeDirectBootstrapFetch(args) {
|
|
978
|
-
const url = new URL(args.url);
|
|
979
|
-
const requestImpl = url.protocol === "http:" ? httpRequest : url.protocol === "https:" ? httpsRequest : undefined;
|
|
980
|
-
if (!requestImpl) {
|
|
981
|
-
throw new Error(`AgentExecutor.submitRun: bootstrap ${args.operation} URL must use http or https`);
|
|
982
|
-
}
|
|
983
|
-
return await new Promise((resolve, reject) => {
|
|
984
|
-
let settled = false;
|
|
985
|
-
let timer;
|
|
986
|
-
let activeResponse;
|
|
987
|
-
let acceptedPollStarted = false;
|
|
988
|
-
const requestHeaders = normalizeBootstrapRequestHeaders(args.init.headers);
|
|
989
|
-
if (!hasHeader(requestHeaders, "connection")) {
|
|
990
|
-
requestHeaders.connection = "close";
|
|
991
|
-
}
|
|
992
|
-
const request = requestImpl(url, {
|
|
993
|
-
method: args.init.method ?? "GET",
|
|
994
|
-
headers: requestHeaders,
|
|
995
|
-
agent: false
|
|
996
|
-
}, (res) => {
|
|
997
|
-
activeResponse = res;
|
|
998
|
-
const chunks = [];
|
|
999
|
-
res.on("data", (chunk) => {
|
|
1000
|
-
chunks.push(typeof chunk === "string" ? new TextEncoder().encode(chunk) : new Uint8Array(chunk));
|
|
1001
|
-
});
|
|
1002
|
-
res.on("end", () => {
|
|
1003
|
-
if (settled)
|
|
1004
|
-
return;
|
|
1005
|
-
settled = true;
|
|
1006
|
-
cleanup();
|
|
1007
|
-
activeResponse = undefined;
|
|
1008
|
-
request.destroy();
|
|
1009
|
-
resolve(new Response(concatUint8Arrays(chunks), {
|
|
1010
|
-
status: res.statusCode ?? 599,
|
|
1011
|
-
statusText: res.statusMessage ?? "",
|
|
1012
|
-
headers: normalizeBootstrapResponseHeaders(res.headers)
|
|
1013
|
-
}));
|
|
1014
|
-
});
|
|
1015
|
-
res.on("error", fail);
|
|
1016
|
-
});
|
|
1017
|
-
function cleanup() {
|
|
1018
|
-
if (timer)
|
|
1019
|
-
clearTimeout(timer);
|
|
1020
|
-
args.signal?.removeEventListener("abort", onAbort);
|
|
1021
|
-
}
|
|
1022
|
-
function fail(err) {
|
|
1023
|
-
if (settled)
|
|
1024
|
-
return;
|
|
1025
|
-
settled = true;
|
|
1026
|
-
cleanup();
|
|
1027
|
-
activeResponse?.destroy(err);
|
|
1028
|
-
request.destroy(err);
|
|
1029
|
-
reject(err);
|
|
1030
|
-
}
|
|
1031
|
-
function timeoutError() {
|
|
1032
|
-
return new Error(`AgentExecutor.submitRun: bootstrap ${args.operation} timed out after ${args.timeoutMs}ms`);
|
|
1033
|
-
}
|
|
1034
|
-
function onAbort() {
|
|
1035
|
-
fail(new Error(`AgentExecutor.submitRun: bootstrap ${args.operation} aborted`));
|
|
1036
|
-
}
|
|
1037
|
-
function startAcceptedPoll() {
|
|
1038
|
-
if (!args.hasRunAcceptedBootstrap || acceptedPollStarted)
|
|
1039
|
-
return;
|
|
1040
|
-
acceptedPollStarted = true;
|
|
1041
|
-
void pollAcceptedBootstrapAfterRequestFinish({
|
|
1042
|
-
check: args.hasRunAcceptedBootstrap,
|
|
1043
|
-
isSettled: () => settled,
|
|
1044
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
1045
|
-
})
|
|
1046
|
-
.then((accepted) => {
|
|
1047
|
-
if (!accepted || settled)
|
|
1048
|
-
return;
|
|
1049
|
-
settled = true;
|
|
1050
|
-
cleanup();
|
|
1051
|
-
activeResponse?.destroy();
|
|
1052
|
-
request.destroy();
|
|
1053
|
-
resolve(new Response(JSON.stringify({ ok: true }), {
|
|
1054
|
-
status: 200,
|
|
1055
|
-
headers: { "content-type": "application/json" }
|
|
1056
|
-
}));
|
|
1057
|
-
})
|
|
1058
|
-
.catch(fail);
|
|
1059
|
-
}
|
|
1060
|
-
timer = setTimeout(() => fail(timeoutError()), args.timeoutMs);
|
|
1061
|
-
request.setTimeout(args.timeoutMs, () => fail(timeoutError()));
|
|
1062
|
-
request.on("error", fail);
|
|
1063
|
-
request.on("finish", startAcceptedPoll);
|
|
1064
|
-
args.signal?.addEventListener("abort", onAbort, { once: true });
|
|
1065
|
-
try {
|
|
1066
|
-
const body = normalizeBootstrapRequestBody(args.init.body);
|
|
1067
|
-
if (body !== undefined)
|
|
1068
|
-
request.write(body);
|
|
1069
|
-
request.end();
|
|
1070
|
-
startAcceptedPoll();
|
|
1071
|
-
}
|
|
1072
|
-
catch (err) {
|
|
1073
|
-
fail(err instanceof Error ? err : new Error(String(err)));
|
|
1074
|
-
}
|
|
1075
|
-
});
|
|
1076
|
-
}
|
|
1077
|
-
async function pollAcceptedBootstrapAfterRequestFinish(args) {
|
|
1078
|
-
while (!args.isSettled()) {
|
|
1079
|
-
if (await checkRunAcceptedBootstrap(args.check))
|
|
1080
|
-
return true;
|
|
1081
|
-
await sleep(250, args.signal);
|
|
1082
|
-
}
|
|
1083
|
-
return false;
|
|
1084
|
-
}
|
|
1085
|
-
function normalizeBootstrapRequestHeaders(headers) {
|
|
1086
|
-
const result = {};
|
|
1087
|
-
if (!headers)
|
|
1088
|
-
return result;
|
|
1089
|
-
if (headers instanceof Headers) {
|
|
1090
|
-
headers.forEach((value, key) => {
|
|
1091
|
-
result[key] = value;
|
|
1092
|
-
});
|
|
1093
|
-
return result;
|
|
1094
|
-
}
|
|
1095
|
-
if (Array.isArray(headers)) {
|
|
1096
|
-
for (const [key, value] of headers)
|
|
1097
|
-
result[key] = value;
|
|
1098
|
-
return result;
|
|
1099
|
-
}
|
|
1100
|
-
for (const [key, value] of Object.entries(headers)) {
|
|
1101
|
-
if (value !== undefined)
|
|
1102
|
-
result[key] = String(value);
|
|
1103
|
-
}
|
|
1104
|
-
return result;
|
|
1105
|
-
}
|
|
1106
|
-
function hasHeader(headers, name) {
|
|
1107
|
-
const normalized = name.toLowerCase();
|
|
1108
|
-
return Object.keys(headers).some((key) => key.toLowerCase() === normalized);
|
|
1109
|
-
}
|
|
1110
|
-
function normalizeBootstrapResponseHeaders(headers) {
|
|
1111
|
-
const result = new Headers();
|
|
1112
|
-
for (const [key, value] of Object.entries(headers)) {
|
|
1113
|
-
if (value === undefined)
|
|
1114
|
-
continue;
|
|
1115
|
-
if (Array.isArray(value)) {
|
|
1116
|
-
for (const item of value)
|
|
1117
|
-
result.append(key, item);
|
|
1118
|
-
}
|
|
1119
|
-
else {
|
|
1120
|
-
result.set(key, value);
|
|
1121
|
-
}
|
|
1122
|
-
}
|
|
1123
|
-
return result;
|
|
1124
|
-
}
|
|
1125
|
-
function normalizeBootstrapRequestBody(body) {
|
|
1126
|
-
if (body === null || body === undefined)
|
|
1127
|
-
return undefined;
|
|
1128
|
-
if (typeof body === "string")
|
|
1129
|
-
return body;
|
|
1130
|
-
if (body instanceof Uint8Array)
|
|
1131
|
-
return body;
|
|
1132
|
-
if (body instanceof ArrayBuffer)
|
|
1133
|
-
return new Uint8Array(body);
|
|
1134
|
-
if (ArrayBuffer.isView(body))
|
|
1135
|
-
return new Uint8Array(body.buffer, body.byteOffset, body.byteLength);
|
|
1136
|
-
if (body instanceof URLSearchParams)
|
|
1137
|
-
return body.toString();
|
|
1138
|
-
throw new Error("AgentExecutor.submitRun: unsupported bootstrap request body type");
|
|
1139
|
-
}
|
|
1140
|
-
function concatUint8Arrays(chunks) {
|
|
1141
|
-
const total = chunks.reduce((sum, chunk) => sum + chunk.byteLength, 0);
|
|
1142
|
-
const result = new Uint8Array(total);
|
|
1143
|
-
let offset = 0;
|
|
1144
|
-
for (const chunk of chunks) {
|
|
1145
|
-
result.set(chunk, offset);
|
|
1146
|
-
offset += chunk.byteLength;
|
|
1147
|
-
}
|
|
1148
|
-
return result;
|
|
1149
|
-
}
|
|
1150
|
-
function bootstrapNetworkError(operation, value) {
|
|
1151
|
-
const message = value instanceof Error ? value.message : String(value);
|
|
1152
|
-
return new Error(`AgentExecutor.submitRun: bootstrap ${operation} failed: ${message}`);
|
|
1153
|
-
}
|
|
1154
|
-
async function commitDirectInputs(args) {
|
|
1155
|
-
const commitUrl = args.target.commitUrl ?? `${args.target.uploadBaseUrl}/commit`;
|
|
1156
|
-
let backoffMs = DIRECT_BOOTSTRAP_INITIAL_BACKOFF_MS;
|
|
1157
|
-
let lastError;
|
|
1158
|
-
while (!args.signal?.aborted) {
|
|
1159
|
-
if (Date.now() >= args.deadline) {
|
|
1160
|
-
throw lastError ?? new Error("AgentExecutor.submitRun: bootstrap commit did not complete before it expired");
|
|
1161
|
-
}
|
|
1162
|
-
let res;
|
|
1163
|
-
try {
|
|
1164
|
-
res = await directBootstrapFetch({
|
|
1165
|
-
fetchImpl: args.fetchImpl,
|
|
1166
|
-
url: commitUrl,
|
|
1167
|
-
deadline: args.deadline,
|
|
1168
|
-
operation: "commit",
|
|
1169
|
-
useNodeTransport: args.useNodeTransport,
|
|
1170
|
-
...(args.hasRunAcceptedBootstrap ? { hasRunAcceptedBootstrap: args.hasRunAcceptedBootstrap } : {}),
|
|
1171
|
-
...(args.signal ? { signal: args.signal } : {}),
|
|
1172
|
-
init: {
|
|
1173
|
-
method: "POST",
|
|
1174
|
-
headers: {
|
|
1175
|
-
authorization: `Bearer ${args.token}`,
|
|
1176
|
-
"content-type": "application/json",
|
|
1177
|
-
accept: "application/json",
|
|
1178
|
-
...(args.target.routingHeaders ?? {})
|
|
1179
|
-
},
|
|
1180
|
-
body: JSON.stringify({
|
|
1181
|
-
inputs: args.inputs.map((input) => ({
|
|
1182
|
-
inputId: input.inputId,
|
|
1183
|
-
sha256: input.sha256,
|
|
1184
|
-
sizeBytes: input.sizeBytes
|
|
1185
|
-
}))
|
|
1186
|
-
})
|
|
1187
|
-
}
|
|
1188
|
-
});
|
|
1189
|
-
}
|
|
1190
|
-
catch (err) {
|
|
1191
|
-
if (args.signal?.aborted)
|
|
1192
|
-
throw err;
|
|
1193
|
-
lastError = bootstrapNetworkError("commit", err);
|
|
1194
|
-
if (await checkRunAcceptedBootstrap(args.hasRunAcceptedBootstrap))
|
|
1195
|
-
return;
|
|
1196
|
-
backoffMs = await waitForBootstrapRetry(backoffMs, args.deadline, args.signal, lastError);
|
|
1197
|
-
continue;
|
|
1198
|
-
}
|
|
1199
|
-
if (res.ok)
|
|
1200
|
-
return;
|
|
1201
|
-
const detail = await res.text().catch(() => "");
|
|
1202
|
-
const err = new Error(`AgentExecutor.submitRun: bootstrap commit failed with ${res.status}` +
|
|
1203
|
-
(detail ? `: ${detail.slice(0, 300)}` : ""));
|
|
1204
|
-
if (!DIRECT_BOOTSTRAP_RETRY_STATUSES.has(res.status)) {
|
|
1205
|
-
throw err;
|
|
1206
|
-
}
|
|
1207
|
-
lastError = err;
|
|
1208
|
-
if (await checkRunAcceptedBootstrap(args.hasRunAcceptedBootstrap))
|
|
1209
|
-
return;
|
|
1210
|
-
backoffMs = await waitForBootstrapRetry(backoffMs, args.deadline, args.signal, lastError);
|
|
1211
|
-
}
|
|
1212
|
-
throw lastError ?? new Error("AgentExecutor.submitRun: aborted");
|
|
1213
|
-
}
|
|
1214
|
-
async function checkRunAcceptedBootstrap(check) {
|
|
1215
|
-
if (!check)
|
|
1216
|
-
return false;
|
|
1217
|
-
return await check().catch(() => false);
|
|
1218
|
-
}
|
|
1219
|
-
function hasRunAcceptedBootstrap(run) {
|
|
1220
|
-
if (run.status === "succeeded" || run.status === "cancelled" || run.status === "timed_out")
|
|
1221
|
-
return true;
|
|
1222
|
-
if (run.status === "failed")
|
|
1223
|
-
return run.terminalAt !== undefined && run.terminalAt !== null;
|
|
1224
|
-
return run.status === "running" || run.status === "provider_running";
|
|
1225
|
-
}
|
|
1226
|
-
async function abortDirectBootstrap(args) {
|
|
1227
|
-
const abortUrl = args.target?.abortUrl ?? `${args.statusUrl.replace(/\/status$/, "")}/abort`;
|
|
1228
|
-
await args.fetchImpl(abortUrl, {
|
|
1229
|
-
method: "POST",
|
|
1230
|
-
headers: {
|
|
1231
|
-
authorization: `Bearer ${args.token}`,
|
|
1232
|
-
accept: "application/json",
|
|
1233
|
-
...(args.target?.routingHeaders ?? {})
|
|
1234
|
-
},
|
|
1235
|
-
...(args.signal ? { signal: args.signal } : {})
|
|
1236
|
-
});
|
|
1237
|
-
}
|
|
1238
|
-
function bootstrapDeadline(expiresAt) {
|
|
1239
|
-
if (typeof expiresAt === "string") {
|
|
1240
|
-
const parsed = Date.parse(expiresAt);
|
|
1241
|
-
if (Number.isFinite(parsed))
|
|
1242
|
-
return parsed;
|
|
1243
|
-
}
|
|
1244
|
-
return Date.now() + 60_000;
|
|
1245
|
-
}
|
|
1246
|
-
function isStringRecord(value) {
|
|
1247
|
-
return Boolean(value &&
|
|
1248
|
-
typeof value === "object" &&
|
|
1249
|
-
!Array.isArray(value) &&
|
|
1250
|
-
Object.values(value).every((entry) => typeof entry === "string"));
|
|
1251
|
-
}
|
|
1252
|
-
function stripTrailingSlash(s) {
|
|
1253
|
-
return s.endsWith("/") ? s.slice(0, -1) : s;
|
|
1254
|
-
}
|
|
1255
737
|
function mergeMcpServers(inputs, explicitSecrets) {
|
|
1256
738
|
const submissionMcpServers = [];
|
|
1257
739
|
const secretByName = new Map();
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,uBAAuB,EACvB,oBAAoB,EACpB,UAAU,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,uBAAuB,EA4BvB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAuC,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAiB,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAmKnC;;;;;;;;GAQG;AACH,MAAM,OAAO,YAAY;IACd,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,IAAI;QACF,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAoC,CAAC;IAC9E,CAAC;IAED,GAAG,CAAC,OAAe;QACjB,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,OAAe;QACpB,OAAO,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,UAAU,CAAC,IAA6D;QACtE,OAAO,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,IAAY;QACrB,OAAO,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CAAC,IAA0D;QACjF,OAAO,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE;YAC9C,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,iBAAiB;YAC9B,QAAQ,EAAE,GAAG,IAAI,CAAC,IAAI,MAAM;SAC7B,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,cAAc;IAChB,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,IAAI;QACF,OAAO,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,CAAC;IAED,GAAG,CAAC,UAAkB;QACpB,OAAO,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,CAAC,UAAkB;QACvB,OAAO,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe,CAAC,IAGrB;QACC,OAAO,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,WAAW;IACb,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,IAAI;QACF,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,GAAG,CAAC,MAAc;QAChB,OAAO,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,MAAc;QACnB,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,IAA2D;QAC3E,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;CACF;AAED;;;;;;;;;;GAUG;AACH,MAAM,OAAO,aAAa;IACf,KAAK,CAAa;IAC3B,wEAAwE;IAC/D,MAAM,CAAwB;IAC9B,MAAM,CAAe;IACrB,QAAQ,CAAiB;IACzB,KAAK,CAAc;IAE5B,YAAY,OAA6B;QACvC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC;YAC1B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,iEAAiE;YACjE,mEAAmE;YACnE,gCAAgC;YAChC,GAAG,CAAC,OAAO,CAAC,KAAK;gBACf,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,OAAO,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBACxG,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,kBAAkB,CAAC,IAA0D;QACjF,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe,CAAC,IAGrB;QACC,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,IAA2D;QAC3E,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY,CAAC,IAIlB;QACC,OAAO,WAAW,CAAC;YACjB,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAA+B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxE,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAC,OAAyB;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,SAAS,CAAC,OAAyB;QACvC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,QAAQ,GAAgB,OAAO,CAAC,QAAQ,IAAI,oBAAoB,CAAC;QACvE,MAAM,cAAc,GAAG,mBAAmB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACnE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,QAAQ,CAChB,oBAAoB,EACpB,mHAAmH,CACpH,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QACD,uEAAuE;QACvE,qEAAqE;QACrE,gEAAgE;QAChE,IAAI,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,EAAE,SAAS,EAAE,yBAAyB,EAAE,IAAI,EAAE,8BAA8B,EAAE,GAClF,mBAAmB,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;QACpD,MAAM,eAAe,GAAG,sBAAsB,CAC5C,8BAA8B,EAC9B,OAAO,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CACxC,CAAC;QAEF,uEAAuE;QACvE,0EAA0E;QAC1E,wBAAwB;QACxB,IACE,OAAO,CAAC,OAAO,KAAK,SAAS;YAC7B,CAAE,aAAmC,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAC/D,CAAC;YACD,MAAM,IAAI,QAAQ,CAChB,qBAAqB,EACrB,oDAAoD,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC7E,QAAQ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAC7C,CAAC;QACJ,CAAC;QAED,oEAAoE;QACpE,2EAA2E;QAC3E,0EAA0E;QAC1E,+BAA+B;QAC/B,MAAM,QAAQ,GAAkB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3E,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;QACjF,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;QACxE,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,GAAG,eAAe,CAChE,OAAO,CAAC,UAAU,IAAI,EAAE,EACxB,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CACjC,CAAC;QAEF,MAAM,UAAU,GAAuB;YACrC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,MAAM;YACN,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,gBAAgB;YAC1B,KAAK,EAAE,aAAa;YACpB,+DAA+D;YAC/D,iDAAiD;YACjD,iEAAiE;YACjE,6DAA6D;YAC7D,wDAAwD;YACxD,6DAA6D;YAC7D,mDAAmD;YACnD,UAAU,EAAE,oBAA+C;YAC3D,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,GAAG,CAAC,OAAO,CAAC,OAAO;gBACnB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC/F,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE;gBAC9B,CAAC,CAAC,EAAE,CAAC;YACP,+DAA+D;YAC/D,+DAA+D;YAC/D,iDAAiD;YACjD,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChF,CAAC;QAEF,MAAM,OAAO,GAA0B;YACrC,GAAG,OAAO,CAAC,OAAO;YAClB,GAAG,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9E,CAAC;QAEF,MAAM,OAAO,GAA+B;YAC1C,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,sBAAsB,EAAE;YAClE,6DAA6D;YAC7D,8DAA8D;YAC9D,gEAAgE;YAChE,2DAA2D;YAC3D,QAAQ;YACR,GAAG,CAAC,cAAc,KAAK,uBAAuB,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,2DAA2D;YAC3D,gEAAgE;YAChE,sDAAsD;YACtD,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,UAAU;YACV,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,OAAO;YACP,GAAG,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC;gBACtC,CAAC,CAAC,EAAE,cAAc,EAAE,yBAAyB,EAAE;gBAC/C,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC5D,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,gCAAgC;IAChC,GAAG,CAAC,KAAa;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,KAAa;QACtB,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAClD,CAAC;IAED,oCAAoC;IACpC,OAAO,CAAC,KAAa;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,UAAU,CAAC,KAAa;QACtB,OAAO,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAED,oCAAoC;IACpC,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,CAAC,YAAY,CAAC,KAAa,EAAE,UAA+B,EAAE;QAClE,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;YAAE,OAAO;QACpC,KAAK,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,IAAI,GAAG,EAAU,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,sCAAsC;IACtC,MAAM,CAAC,KAAa,EAAE,OAA6B;QACjD,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,CAAC,eAAe,CAAC,KAAa,EAAE,UAAkC,EAAE;QACxE,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACvE,KAAK,CAAC,CAAC,uBAAuB,CAAC;YAC7B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC;YACvB,WAAW,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,MAAM;YAC1F,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,CAAC,oBAAoB,CACzB,KAAa,EACb,OAAuD;QAEvD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;QAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC5C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;oBACnC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC9B,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YACnC,4DAA4D;YAC5D,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa,EAAE,UAA6B,EAAE;QAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC;QAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,QAAQ,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;QACnG,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO,GAAG,CAAC;YACvC,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,2CAA2C,SAAS,IAAI,CAAC,CAAC;YAC5E,CAAC;YACD,MAAM,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,oCAAoC;IACpC,IAAI,CAAC,KAAa,EAAE,OAA2B;QAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,WAAW,CAAC,KAAa;QACvB,OAAO,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,qCAAqC;IACrC,OAAO,CAAC,KAAa;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,gBAAgB,CAAC,KAAa,EAAE,QAAgB;QAC9C,OAAO,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAClE,CAAC;IAUD,KAAK,CAAC,cAAc,CAClB,KAAa,EACb,iBAA8D,EAC9D,OAA+B;QAE/B,MAAM,WAAW,GAAG,iBAAiB,KAAK,SAAS,IAAI,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,CAAC;QACvG,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,iBAAuC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnF,MAAM,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAE,iBAAuD,EAAE,EAAE,IAAI,OAAO,EAAE,EAAE,CAAC;QACnH,IAAI,KAAiB,CAAC;QACtB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,KAAK,GAAG,MAAM,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,CAAC;gBAC3C,CAAC,CAAC,yBAAyB,CAAC,MAAM,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC;gBAC7F,CAAC,CAAC,yBAAyB,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAC5C,aAAa,kBAAkB,CAAC,KAAK,CAAC,YAAY,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAC3F,CAAC;YACF,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,mCAAmC;IACnC,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,mCAAmC;IACnC,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,IAAY;QAC/B,OAAO,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM;QACJ,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,OAA+B;QAC3D,OAAO,iBAAiB,CAAC,MAAM,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,+EAA+E;IAC/E,KAAK,CAAC,eAAe,CAAC,KAAa,EAAE,OAA+B;QAClE,OAAO,iBAAiB,CAAC,MAAM,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,cAAc,CAAC,KAAa,EAAE,OAA+B;QACjE,OAAO,iBAAiB,CAAC,MAAM,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,wEAAwE;IACxE,KAAK,CAAC,gBAAgB,CAAC,KAAa,EAAE,OAA+B;QACnE,OAAO,iBAAiB,CAAC,MAAM,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;CACF;AAED,4EAA4E;AAC5E,+EAA+E;AAC/E,wDAAwD;AACxD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAS,qBAAqB,CAAC,CAAC;AAEjE,SAAS,UAAU,CAAC,MAA0B;IAC5C,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,oBAAoB,CAAC,QAA4B;IACxD,OAAO,OAAO,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,MAAM,IAAI,QAAQ,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,2BAA2B,CAClC,KAAiD;IAEjD,OAAO,OAAO,CACZ,KAAK;QACH,OAAO,KAAK,KAAK,QAAQ;QACzB,IAAI,IAAI,KAAK;QACb,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC;QAChB,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,CACrB,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,OAA0B,EAC1B,QAA4B,EAC5B,KAAa;IAEb,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,yBAAyB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,aAAa,CAAC,6DAA6D,EAAE;gBACrF,KAAK;gBACL,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB,CAAC,CAAC;QACL,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YACxC,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YACtD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5D,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAChC,OAAO,QAAQ,KAAK,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;YAChE,CAAC;YACD,OAAO,QAAQ,KAAK,MAAM,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC,CAAC,CAAE,CAAC;QAC7C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,aAAa,CACrB,8CAA8C,QAAQ,CAAC,IAAI,0BAA0B,EACrF,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC,EAAE,CAC/F,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,aAAa,CAAC,8CAA8C,QAAQ,CAAC,IAAI,iBAAiB,EAAE;YACpG,KAAK;YACL,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,QAAQ,CAAC,EAAE,KAAK,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,aAAa,CAAC,0EAA0E,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACjH,CAAC;IACD,OAAO,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;AAC1C,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,KAAiB,EAAE,EAAW;IAC7D,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACrB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACvD,MAAM,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,KAAK,CAAC,EAAU,EAAE,MAA+B;IACxD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;YAC7B,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC;QACF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB;IAC7B,MAAM,SAAS,GAAI,UAAyD,CAAC,MAAM,CAAC;IACpF,IAAI,SAAS,EAAE,UAAU;QAAE,OAAO,SAAS,CAAC,UAAU,EAAE,CAAC;IACzD,OAAO,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAClF,CAAC;AAED,SAAS,eAAe,CAAC,KAAiC;IACxD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAYD,kFAAkF;AAClF,KAAK,UAAU,aAAa,CAC1B,MAAwB,EACxB,QAAuB;IAEvB,MAAM,IAAI,GAAe,EAAE,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,4BAA4B,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,6CAA6C,CAAC,CAAC;QACrG,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,6BAA6B,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC;gBAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI,EAAE,MAAM,CAAC,WAAW;gBACxB,WAAW,EAAE,iBAAiB;aAC/B,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,kCAAkC;QAClC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,qFAAqF;AACrF,KAAK,UAAU,eAAe,CAC5B,SAA8B,EAC9B,QAAuB;IAEvB,MAAM,IAAI,GAAkB,EAAE,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,gCAAgC,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,6CAA6C,CAAC,CAAC;QACvG,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,6BAA6B,CAAC,CAAC;YACvF,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC;gBAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI,EAAE,MAAM,CAAC,WAAW;gBACxB,WAAW,EAAE,iBAAiB;aAC/B,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,iFAAiF;AACjF,KAAK,UAAU,YAAY,CACzB,KAAsB,EACtB,QAAuB;IAEvB,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,2BAA2B,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,6CAA6C,CAAC,CAAC;QACpG,CAAC;QACD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,6BAA6B,CAAC,CAAC;YACpF,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC;gBAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI,EAAE,MAAM,CAAC,WAAW;gBACxB,WAAW,EAAE,iBAAiB;aAC/B,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,CACP,MAAM,CAAC,SAAS,KAAK,SAAS;gBAC5B,CAAC,CAAC;oBACE,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B;gBACH,CAAC,CAAC;oBACE,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CACN,CAAC;YACF,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,QAA2D;IACpF,MAAM,EAAE,GAAG,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC;IACzC,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAGD,SAAS,eAAe,CACtB,MAA4B,EAC5B,eAAmD;IAKnD,MAAM,oBAAoB,GAA8E,EAAE,CAAC;IAC3G,MAAM,YAAY,GAAG,IAAI,GAAG,EAAmC,CAAC;IAChE,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,iCAAiC,CAAC,CAAC;QAC7F,CAAC;QACD,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;QACrC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/C,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;gBAC5C,MAAM,IAAI,KAAK,CACb,uCAAuC,CAAC,4CAA4C,MAAM,CAAC,IAAI,IAAI,CACpG,CAAC;YACJ,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO;QACL,oBAAoB;QACpB,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;KACpD,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,sBAAsB,CAC7B,aAAmD,EACnD,mBAAyD;IAEzD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqC,CAAC;IAC5D,KAAK,MAAM,KAAK,IAAI,mBAAmB,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACb,2CAA2C,KAAK,CAAC,IAAI,wBAAwB;gBAC3E,4CAA4C,KAAK,CAAC,KAAK,CAAC,IAAI,aAAa,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAClG,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AACrC,CAAC"}
|
package/dist/skill.d.ts
CHANGED
|
@@ -11,8 +11,14 @@ import { type SkillFiles } from "./bundle.js";
|
|
|
11
11
|
* identical content dedups across sources.
|
|
12
12
|
*
|
|
13
13
|
* Asset deduplication makes the same bytes a no-op upload on subsequent runs.
|
|
14
|
-
* There is no `Skill.fromId(...)
|
|
15
|
-
*
|
|
14
|
+
* There is no `Skill.fromId(...)`. A URL is an ingestion source, not a
|
|
15
|
+
* persistent reference.
|
|
16
|
+
*
|
|
17
|
+
* An inline draft is auto-staged to the content-addressable asset store at
|
|
18
|
+
* submit time (the bytes upload before `POST /runs`; the wire ref becomes
|
|
19
|
+
* `kind:"asset"`). Call `await skill.upload(client)` to pre-stage the bytes
|
|
20
|
+
* explicitly — useful when you want to reuse the resulting `kind:"asset"`
|
|
21
|
+
* Skill across multiple runs.
|
|
16
22
|
*/
|
|
17
23
|
export declare class Skill {
|
|
18
24
|
#private;
|
|
@@ -103,6 +109,16 @@ export declare class Skill {
|
|
|
103
109
|
contentHash: string;
|
|
104
110
|
bytes: Uint8Array;
|
|
105
111
|
} | undefined;
|
|
112
|
+
/**
|
|
113
|
+
* Pre-upload a draft Skill's bytes to the workspace asset store and return a
|
|
114
|
+
* NEW materialized Skill carrying a `kind:"asset"` ref. Blocking: the upload
|
|
115
|
+
* completes before this resolves. Submitting the returned Skill sends a plain
|
|
116
|
+
* asset ref and the run pulls the bytes from storage.
|
|
117
|
+
*
|
|
118
|
+
* Consumes this draft (a draft becomes an asset exactly once); call only on a
|
|
119
|
+
* draft built via `Skill.fromFiles` / `Skill.fromPath` / `Skill.fromUrl`.
|
|
120
|
+
*/
|
|
121
|
+
upload(client: SkillUploader): Promise<Skill>;
|
|
106
122
|
toJSON(): SkillRef;
|
|
107
123
|
}
|
|
108
124
|
/**
|
|
@@ -115,3 +131,17 @@ export interface DraftSkillRef {
|
|
|
115
131
|
readonly name: string;
|
|
116
132
|
readonly contentHash: string;
|
|
117
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* Minimal client surface `Skill.upload` needs. `AgentExecutor` satisfies it via
|
|
136
|
+
* its internal `_uploadAsset`; defined structurally here so `skill.ts` does not
|
|
137
|
+
* import `client.ts` (which would be circular — `client.ts` imports `Skill`).
|
|
138
|
+
*/
|
|
139
|
+
export interface SkillUploader {
|
|
140
|
+
_uploadAsset(args: {
|
|
141
|
+
readonly bytes: Uint8Array;
|
|
142
|
+
readonly hash: string;
|
|
143
|
+
readonly contentType?: string;
|
|
144
|
+
}): Promise<{
|
|
145
|
+
readonly assetId: string;
|
|
146
|
+
}>;
|
|
147
|
+
}
|
package/dist/skill.js
CHANGED
|
@@ -13,8 +13,14 @@ import { readDirectoryAsFiles } from "./node-fs.js";
|
|
|
13
13
|
* identical content dedups across sources.
|
|
14
14
|
*
|
|
15
15
|
* Asset deduplication makes the same bytes a no-op upload on subsequent runs.
|
|
16
|
-
* There is no `Skill.fromId(...)
|
|
17
|
-
*
|
|
16
|
+
* There is no `Skill.fromId(...)`. A URL is an ingestion source, not a
|
|
17
|
+
* persistent reference.
|
|
18
|
+
*
|
|
19
|
+
* An inline draft is auto-staged to the content-addressable asset store at
|
|
20
|
+
* submit time (the bytes upload before `POST /runs`; the wire ref becomes
|
|
21
|
+
* `kind:"asset"`). Call `await skill.upload(client)` to pre-stage the bytes
|
|
22
|
+
* explicitly — useful when you want to reuse the resulting `kind:"asset"`
|
|
23
|
+
* Skill across multiple runs.
|
|
18
24
|
*/
|
|
19
25
|
export class Skill {
|
|
20
26
|
#ref;
|
|
@@ -158,6 +164,29 @@ export class Skill {
|
|
|
158
164
|
bytes: this.#inlineBytes
|
|
159
165
|
};
|
|
160
166
|
}
|
|
167
|
+
/**
|
|
168
|
+
* Pre-upload a draft Skill's bytes to the workspace asset store and return a
|
|
169
|
+
* NEW materialized Skill carrying a `kind:"asset"` ref. Blocking: the upload
|
|
170
|
+
* completes before this resolves. Submitting the returned Skill sends a plain
|
|
171
|
+
* asset ref and the run pulls the bytes from storage.
|
|
172
|
+
*
|
|
173
|
+
* Consumes this draft (a draft becomes an asset exactly once); call only on a
|
|
174
|
+
* draft built via `Skill.fromFiles` / `Skill.fromPath` / `Skill.fromUrl`.
|
|
175
|
+
*/
|
|
176
|
+
async upload(client) {
|
|
177
|
+
const bundle = this._takeDraftBundle();
|
|
178
|
+
if (!bundle) {
|
|
179
|
+
throw new Error("Skill.upload: only draft Skills can be uploaded. A Skill from " +
|
|
180
|
+
"Skill.fromCatalog(...) is already materialized.");
|
|
181
|
+
}
|
|
182
|
+
const uploaded = await client._uploadAsset({
|
|
183
|
+
bytes: bundle.bytes,
|
|
184
|
+
hash: bundle.contentHash,
|
|
185
|
+
contentType: "application/zip"
|
|
186
|
+
});
|
|
187
|
+
const ref = { kind: "asset", assetId: uploaded.assetId, name: bundle.name };
|
|
188
|
+
return new Skill(ref);
|
|
189
|
+
}
|
|
161
190
|
toJSON() {
|
|
162
191
|
if (this.#ref.kind === "draft") {
|
|
163
192
|
throw new Error("Skill: draft Skills cannot be JSON-serialised — they only become wire refs when " +
|
package/dist/skill.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAInB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAmB,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEpD
|
|
1
|
+
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
package/dist/version.js
CHANGED
package/dist/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,QAAQ,CAAC"}
|
package/docs/events.md
CHANGED
|
@@ -17,7 +17,7 @@ const events = await aex.events(runId);
|
|
|
17
17
|
// Stream the RunEvent snapshot shape: yields each event once, stops when the
|
|
18
18
|
// run reaches a terminal status. Backed by polling the aex events endpoint.
|
|
19
19
|
for await (const event of aex.stream(runId, { intervalMs: 1000 })) {
|
|
20
|
-
if (event.type === "
|
|
20
|
+
if (event.type === "TEXT_MESSAGE_CONTENT") {
|
|
21
21
|
// ...
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -52,7 +52,7 @@ Status vocabulary: `supported`, `live-unverified`, `rejected`.
|
|
|
52
52
|
|
|
53
53
|
### Managed unsupported features
|
|
54
54
|
|
|
55
|
-
Provider-hosted skill refs
|
|
55
|
+
Provider-hosted skill refs (a `kind:"provider"` skill ref) are rejected because new runs dispatch to the managed runtime. Supply the skill as an inline or workspace aex bundle, or remove the provider-hosted ref.
|
|
56
56
|
|
|
57
57
|
Notes:
|
|
58
58
|
|
package/docs/skills.md
CHANGED
|
@@ -6,18 +6,18 @@ title: Skills
|
|
|
6
6
|
|
|
7
7
|
Skill inputs accepted by the platform:
|
|
8
8
|
|
|
9
|
-
- provider-managed Anthropic prebuilt Agent Skills (`pdf`, `xlsx`,
|
|
10
|
-
`docx`, `pptx` — see the
|
|
11
|
-
[Anthropic Agent Skills overview](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview)
|
|
12
|
-
for the live catalog). Note that Anthropic web search is a Messages
|
|
13
|
-
API *tool* (`{ type: "web_search_…" }`), not an Agent Skill, and is
|
|
14
|
-
not currently exposed through `submitRun`;
|
|
15
|
-
- existing custom provider skill IDs;
|
|
16
9
|
- workspace skill bundles (persistent, referenced by `skl_*` id);
|
|
17
10
|
- inline-supplied bundles passed directly at `submitRun` — these
|
|
18
11
|
persist on aex as workspace skills with auto-suffixed names,
|
|
19
12
|
one row per submission (see "Inline supply" below).
|
|
20
13
|
|
|
14
|
+
Provider-hosted skill refs (`kind:"provider"`, e.g. Anthropic prebuilt
|
|
15
|
+
Agent Skills or custom provider skill IDs) are **not supported on the
|
|
16
|
+
managed runtime** — every new submission dispatches to managed and a
|
|
17
|
+
`kind:"provider"` ref is rejected at submission time with
|
|
18
|
+
`feature_runtime_mismatch`. Supply the bytes as a workspace or inline
|
|
19
|
+
bundle instead.
|
|
20
|
+
|
|
21
21
|
**How skills reach the agent:** every skill bundle is materialized into
|
|
22
22
|
the run's workspace under `skills/<name>/` before the first agent turn.
|
|
23
23
|
A bundle's `SKILL.md` is composed into the agent's instructions, so the
|
|
@@ -135,3 +135,23 @@ produce the **same canonical asset** and dedup against each other.
|
|
|
135
135
|
|
|
136
136
|
`Skill.fromUrl` is universal (Node 18+ / browser): it uses the global `fetch`,
|
|
137
137
|
or pass one via `{ fetch }`.
|
|
138
|
+
|
|
139
|
+
## Re-reference an uploaded skill (`Skill.fromCatalog`)
|
|
140
|
+
|
|
141
|
+
To re-use a skill already persisted in the workspace catalog (e.g. one an
|
|
142
|
+
earlier inline supply created), pass the `Skill` record returned by
|
|
143
|
+
`aex.skills.list()` / `aex.skills.get()` to `Skill.fromCatalog`:
|
|
144
|
+
|
|
145
|
+
```ts
|
|
146
|
+
const [record] = await aex.skills.list();
|
|
147
|
+
|
|
148
|
+
await aex.submitRun({
|
|
149
|
+
model, prompt,
|
|
150
|
+
skills: [Skill.fromCatalog(record)],
|
|
151
|
+
secrets: { apiKey }
|
|
152
|
+
});
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
The record must be `ready` (it carries a content hash). Unlike the draft
|
|
156
|
+
builders this performs no upload — `fromCatalog` produces a `kind:"asset"`
|
|
157
|
+
ref directly against the bytes already in the catalog.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aexhq/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"description": "TypeScript SDK for running autonomous agent sessions across providers (Anthropic, OpenAI, DeepSeek, Gemini, Mistral) behind one interface.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"examples"
|
|
27
27
|
],
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@aexhq/contracts": "0.
|
|
29
|
+
"@aexhq/contracts": "0.14.0"
|
|
30
30
|
},
|
|
31
31
|
"engines": {
|
|
32
32
|
"node": ">=20"
|