veryfront 0.1.1221 → 0.1.1223
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/esm/deno.js +3 -3
- package/esm/src/agent/ag-ui/browser-chunk-encoder.d.ts +2 -0
- package/esm/src/agent/ag-ui/browser-chunk-encoder.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/browser-chunk-encoder.js +1 -0
- package/esm/src/agent/ag-ui/browser-encoder.d.ts +15 -1
- package/esm/src/agent/ag-ui/browser-encoder.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/browser-encoder.js +19 -1
- package/esm/src/agent/ag-ui/chat-ui-chunk-browser-encoder.d.ts +2 -0
- package/esm/src/agent/ag-ui/chat-ui-chunk-browser-encoder.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/chat-ui-chunk-browser-encoder.js +1 -0
- package/esm/src/agent/ag-ui/chunk-encoder-bridge.d.ts +2 -0
- package/esm/src/agent/ag-ui/chunk-encoder-bridge.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/chunk-encoder-bridge.js +1 -1
- package/esm/src/agent/ag-ui/runtime-event-encoder.d.ts +2 -0
- package/esm/src/agent/ag-ui/runtime-event-encoder.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/runtime-event-encoder.js +1 -1
- package/esm/src/agent/hosted/chat-runtime-tool-assembly.d.ts +9 -5
- package/esm/src/agent/hosted/chat-runtime-tool-assembly.d.ts.map +1 -1
- package/esm/src/agent/hosted/child-fork-step-message-preparation.d.ts +14 -9
- package/esm/src/agent/hosted/child-fork-step-message-preparation.d.ts.map +1 -1
- package/esm/src/agent/hosted/child-fork-step-message-preparation.js +0 -3
- package/esm/src/agent/hosted/child-lifecycle.d.ts.map +1 -1
- package/esm/src/agent/hosted/child-lifecycle.js +31 -11
- package/esm/src/agent/hosted/durable-child-fork-execution.d.ts +59 -0
- package/esm/src/agent/hosted/durable-child-fork-execution.d.ts.map +1 -1
- package/esm/src/agent/hosted/durable-child-fork-execution.js +46 -0
- package/esm/src/agent/hosted/project-remote-tool-source.d.ts +13 -5
- package/esm/src/agent/hosted/project-remote-tool-source.d.ts.map +1 -1
- package/esm/src/agent/hosted/project-remote-tool-source.js +3 -3
- package/esm/src/agent/hosted/runtime-essential-tools.d.ts.map +1 -1
- package/esm/src/agent/hosted/runtime-essential-tools.js +0 -17
- package/esm/src/agent/index.d.ts +1 -1
- package/esm/src/agent/index.d.ts.map +1 -1
- package/esm/src/agent/index.js +1 -1
- package/esm/src/agent/runtime/tool-discovery-context.d.ts +27 -12
- package/esm/src/agent/runtime/tool-discovery-context.d.ts.map +1 -1
- package/esm/src/build/production-build/client-runtime.d.ts.map +1 -1
- package/esm/src/build/production-build/client-runtime.js +7 -0
- package/esm/src/html/hydration-script-builder/hydration-runtime.generated.js +1 -1
- package/esm/src/internal-agents/ag-ui-sse.d.ts +2 -2
- package/esm/src/internal-agents/ag-ui-sse.d.ts.map +1 -1
- package/esm/src/internal-agents/ag-ui-sse.js +31 -20
- package/esm/src/platform/compat/http/pinned-fetch.d.ts +1 -1
- package/esm/src/security/client/html-sanitizer.d.ts +8 -0
- package/esm/src/security/client/html-sanitizer.d.ts.map +1 -1
- package/esm/src/security/client/html-sanitizer.js +4 -1
- package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.d.ts.map +1 -1
- package/esm/src/server/services/rsc/endpoints/rsc-bundles.generated.js +2 -2
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/package.json +8 -8
package/esm/deno.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
"name": "veryfront",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1223",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"nodeModulesDir": "auto",
|
|
6
6
|
"minimumDependencyAge": {
|
|
@@ -464,7 +464,7 @@ export default {
|
|
|
464
464
|
"build:proxy-lock": "deno cache --node-modules-dir=none --lock scripts/build/proxy-deno.lock cli/proxy-main.ts",
|
|
465
465
|
"build:npm": "deno run -A scripts/build/generate-integrations-module.ts && deno task generate && deno run --config=scripts/test.deno.json --frozen -A scripts/build/build-npm-dnt.ts",
|
|
466
466
|
"release": "deno run -A scripts/release.ts",
|
|
467
|
-
"test": "deno task generate && DENO_TESTING=1 VF_DISABLE_LRU_INTERVAL=1 SSR_TRANSFORM_PER_PROJECT_LIMIT=0 REVALIDATION_PER_PROJECT_LIMIT=0 NODE_ENV=production LOG_FORMAT=text deno test --preload=src/schemas/_test-setup.ts --no-check --parallel --allow-all '--ignore=tests/e2e,tests/integration/compiled-binary-e2e.test.ts' --unstable-worker-options --unstable-net",
|
|
467
|
+
"test": "deno task generate && DENO_TESTING=1 VF_DISABLE_LRU_INTERVAL=1 SSR_TRANSFORM_PER_PROJECT_LIMIT=0 REVALIDATION_PER_PROJECT_LIMIT=0 NODE_ENV=production LOG_FORMAT=text deno test --preload=src/schemas/_test-setup.ts --no-check --parallel --allow-all '--ignore=tests/e2e,tests/integration/compiled-binary-e2e.test.ts,scripts' --unstable-worker-options --unstable-net",
|
|
468
468
|
"test:unit": "deno task generate && DENO_TESTING=1 VF_DISABLE_LRU_INTERVAL=1 SSR_TRANSFORM_PER_PROJECT_LIMIT=0 REVALIDATION_PER_PROJECT_LIMIT=0 NODE_ENV=production LOG_FORMAT=text deno test --preload=src/schemas/_test-setup.ts --no-check --parallel --allow-all --v8-flags=--max-old-space-size=8192 '--ignore=tests,src/workflow/__tests__' --unstable-worker-options --unstable-net $(find src cli -name '*.test.ts*' ! -name '*.integration.test.ts*')",
|
|
469
469
|
"test:integration": "deno task generate && DENO_TESTING=1 VF_DISABLE_LRU_INTERVAL=1 SSR_TRANSFORM_PER_PROJECT_LIMIT=0 REVALIDATION_PER_PROJECT_LIMIT=0 NODE_ENV=production LOG_FORMAT=text deno test --preload=src/schemas/_test-setup.ts --no-check --parallel --allow-all '--ignore=tests/e2e,tests/integration/compiled-binary-e2e.test.ts' tests --unstable-worker-options --unstable-net",
|
|
470
470
|
"test:integration:cli": "DENO_TESTING=1 VF_DISABLE_LRU_INTERVAL=1 SSR_TRANSFORM_PER_PROJECT_LIMIT=0 REVALIDATION_PER_PROJECT_LIMIT=0 NODE_ENV=production LOG_FORMAT=text deno test --no-check --parallel --allow-all --unstable-worker-options --unstable-net $(find cli -name '*.integration.test.ts')",
|
|
@@ -487,7 +487,7 @@ export default {
|
|
|
487
487
|
"fmt": "deno fmt src/ cli/ react/ && deno fmt --config=scripts/test.deno.json scripts/test/ scripts/build/dnt-polyfill.ts scripts/build/dnt-polyfill.test.ts scripts/build/prepare-framework-sources.test.ts && deno fmt --config=scripts/codemods/deno.json scripts/codemods/",
|
|
488
488
|
"fmt:check": "deno fmt --check src/ cli/ react/ && deno fmt --check --config=scripts/test.deno.json scripts/test/ scripts/build/dnt-polyfill.ts scripts/build/dnt-polyfill.test.ts scripts/build/prepare-framework-sources.test.ts && deno fmt --check --config=scripts/codemods/deno.json scripts/codemods/",
|
|
489
489
|
"typecheck": "deno task generate:manifests:check && deno check src/index.ts cli/main.ts src/server/index.ts src/routing/api/index.ts src/rendering/index.ts src/platform/index.ts src/platform/adapters/index.ts src/build/index.ts src/build/production-build/index.ts src/transforms/index.ts src/config/index.ts src/utils/index.ts src/data/index.ts src/security/index.ts src/middleware/index.ts src/server/handlers/dev/index.ts src/server/handlers/request/api/index.ts src/rendering/cache/index.ts src/rendering/cache/stores/index.ts src/rendering/rsc/actions/index.ts src/html/index.ts src/html/hydration-script-builder/runtime/main.ts src/modules/index.ts src/proxy/main.ts src/react/components/ui/index.ts src/chat/index.ts src/markdown/index.ts src/mdx/index.ts src/fs/index.ts src/oauth/index.ts src/agent/index.ts src/agent/service/route-export.check.ts src/eval/index.ts src/tool/index.ts src/workflow/index.ts src/prompt/index.ts src/resource/index.ts src/runs/index.ts src/mcp/index.ts src/provider/index.ts",
|
|
490
|
-
"verify": "deno task generate:manifests:check && deno task fmt:check && deno task lint && deno task lint:style && deno task lint:chat-composability && deno task lint:chat-ratchets && deno task lint:esm-sh-codemod && deno task lint:cli-boundary && deno task lint:wildcard-exports && deno task lint:barrel-jsdoc && deno task lint:ban-test-only && deno task lint:sanitizer-baseline && deno task lint:skipped-tests && deno task lint:ban-zod && deno task lint:core-deps && deno task lint:dependency-boundaries && deno task lint:module-boundaries && deno task lint:extension-contracts && deno task lint:extension-capabilities && deno task docs:api-reference:check && deno task docs:validate && deno task typecheck && deno task typecheck:consumer && deno task test && deno task test:e2e:binary",
|
|
490
|
+
"verify": "deno task generate:manifests:check && deno task fmt:check && deno task lint && deno task lint:style && deno task lint:chat-composability && deno task lint:chat-ratchets && deno task lint:esm-sh-codemod && deno task lint:cli-boundary && deno task lint:wildcard-exports && deno task lint:barrel-jsdoc && deno task lint:ban-test-only && deno task lint:sanitizer-baseline && deno task lint:skipped-tests && deno task lint:ban-zod && deno task lint:core-deps && deno task lint:dependency-boundaries && deno task lint:module-boundaries && deno task lint:extension-contracts && deno task lint:extension-capabilities && deno task docs:api-reference:check && deno task docs:validate && deno task typecheck && deno task typecheck:consumer && deno task test && deno task test:scripts && deno task test:e2e:binary",
|
|
491
491
|
"verify:quick": "deno task generate:manifests:check && deno task fmt:check && deno task lint && deno task lint:style && deno task lint:chat-composability && deno task lint:chat-ratchets && deno task lint:esm-sh-codemod && deno task lint:cli-boundary && deno task lint:wildcard-exports && deno task lint:barrel-jsdoc && deno task lint:ban-test-only && deno task lint:sanitizer-baseline && deno task lint:skipped-tests && deno task lint:ban-zod && deno task lint:core-deps && deno task lint:dependency-boundaries && deno task lint:module-boundaries && deno task lint:extension-contracts && deno task lint:extension-capabilities && deno task docs:api-reference:check && deno task docs:validate && deno task typecheck",
|
|
492
492
|
"typecheck:consumer": "deno run --allow-read --allow-run --allow-env --allow-write scripts/typecheck/run-consumer-typecheck.ts",
|
|
493
493
|
"codemod:chat": "deno run --frozen --config=scripts/codemods/deno.json --allow-read --allow-write --allow-env=BABEL_TYPES_8_BREAKING scripts/codemods/migrate-chat-composition.ts",
|
|
@@ -8,6 +8,8 @@ export interface AgUiBrowserChunkEncoder<TChunk> {
|
|
|
8
8
|
}
|
|
9
9
|
/** Options accepted by create AG-UI browser chunk encoder. */
|
|
10
10
|
export interface CreateAgUiBrowserChunkEncoderOptions<TChunk> {
|
|
11
|
+
/** Clock for `elapsedMs`; forwarded to the encoder state. */
|
|
12
|
+
nowMs?: (() => number) | null;
|
|
11
13
|
getRuntimeEvents: (chunk: TChunk) => readonly AgUiRuntimeStreamEvent[];
|
|
12
14
|
getMetadataFromChunk?: (chunk: TChunk) => Partial<AgUiBrowserRunFinishedMetadata> | null | undefined;
|
|
13
15
|
initialMetadata?: Partial<AgUiBrowserRunFinishedMetadata>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-chunk-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/browser-chunk-encoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,2DAA2D;AAC3D,MAAM,WAAW,uBAAuB,CAAC,MAAM;IAC7C,KAAK,EAAE,uBAAuB,CAAC;IAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,uBAAuB,EAAE,CAAC;IACrD,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,KAAK,uBAAuB,EAAE,CAAC;CACzE;AAED,8DAA8D;AAC9D,MAAM,WAAW,oCAAoC,CAAC,MAAM;IAC1D,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,sBAAsB,EAAE,CAAC;IACvE,oBAAoB,CAAC,EAAE,CACrB,KAAK,EAAE,MAAM,KACV,OAAO,CAAC,8BAA8B,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAChE,eAAe,CAAC,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAC3D;AAkED,0CAA0C;AAC1C,wBAAgB,6BAA6B,CAAC,MAAM,EAClD,OAAO,EAAE,oCAAoC,CAAC,MAAM,CAAC,GACpD,uBAAuB,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"browser-chunk-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/browser-chunk-encoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,EAC9B,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,2DAA2D;AAC3D,MAAM,WAAW,uBAAuB,CAAC,MAAM;IAC7C,KAAK,EAAE,uBAAuB,CAAC;IAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,uBAAuB,EAAE,CAAC;IACrD,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,KAAK,uBAAuB,EAAE,CAAC;CACzE;AAED,8DAA8D;AAC9D,MAAM,WAAW,oCAAoC,CAAC,MAAM;IAC1D,6DAA6D;IAC7D,KAAK,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;IAC9B,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,sBAAsB,EAAE,CAAC;IACvE,oBAAoB,CAAC,EAAE,CACrB,KAAK,EAAE,MAAM,KACV,OAAO,CAAC,8BAA8B,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAChE,eAAe,CAAC,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAC3D;AAkED,0CAA0C;AAC1C,wBAAgB,6BAA6B,CAAC,MAAM,EAClD,OAAO,EAAE,oCAAoC,CAAC,MAAM,CAAC,GACpD,uBAAuB,CAAC,MAAM,CAAC,CAcjC"}
|
|
@@ -72,6 +72,7 @@ function mergeMetadata(target, metadata) {
|
|
|
72
72
|
export function createAgUiBrowserChunkEncoder(options) {
|
|
73
73
|
const runtimeEventEncoder = createAgUiRuntimeEventEncoder({
|
|
74
74
|
initialMetadata: options.initialMetadata,
|
|
75
|
+
...(options.nowMs === undefined ? {} : { nowMs: options.nowMs }),
|
|
75
76
|
});
|
|
76
77
|
return {
|
|
77
78
|
state: runtimeEventEncoder.state,
|
|
@@ -48,6 +48,20 @@ export interface AgUiBrowserEncoderState {
|
|
|
48
48
|
sawVisibleOutput: boolean;
|
|
49
49
|
sawTerminalError: boolean;
|
|
50
50
|
metadata: AgUiBrowserRunFinishedMetadata;
|
|
51
|
+
/**
|
|
52
|
+
* Clock for `elapsedMs`, and the run-relative anchor it measures from. Absent
|
|
53
|
+
* only when a caller opts out; see `createAgUiBrowserEncoderState`.
|
|
54
|
+
*/
|
|
55
|
+
nowMs?: () => number;
|
|
56
|
+
startedMs?: number;
|
|
57
|
+
}
|
|
58
|
+
/** Options for create AG-UI browser encoder state. */
|
|
59
|
+
export interface AgUiBrowserEncoderStateOptions {
|
|
60
|
+
/**
|
|
61
|
+
* Clock used to stamp `elapsedMs`. Defaults to `performance.now`. Pass null
|
|
62
|
+
* to omit the stamp, which keeps exact-payload assertions deterministic.
|
|
63
|
+
*/
|
|
64
|
+
nowMs?: (() => number) | null;
|
|
51
65
|
}
|
|
52
66
|
/** Event emitted for AG-UI browser encoded. */
|
|
53
67
|
export interface AgUiBrowserEncodedEvent {
|
|
@@ -55,7 +69,7 @@ export interface AgUiBrowserEncodedEvent {
|
|
|
55
69
|
payload: Record<string, unknown>;
|
|
56
70
|
}
|
|
57
71
|
/** State for create AG-UI browser encoder. */
|
|
58
|
-
export declare function createAgUiBrowserEncoderState(): AgUiBrowserEncoderState;
|
|
72
|
+
export declare function createAgUiBrowserEncoderState(options?: AgUiBrowserEncoderStateOptions): AgUiBrowserEncoderState;
|
|
59
73
|
/** Response payload for build AG-UI browser finalize. */
|
|
60
74
|
export declare function buildAgUiBrowserFinalizeResponse(metadata: AgUiBrowserRunFinishedMetadata): AgentResponse | null;
|
|
61
75
|
/** Map runtime stream event to AG-UI browser events. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/browser-encoder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,8CAA8C;AAC9C,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhF,mEAAmE;AACnE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC/C,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;CACzD;AAED,uCAAuC;AACvC,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"browser-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/browser-encoder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,8CAA8C;AAC9C,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhF,mEAAmE;AACnE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC/C,WAAW,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;CACzD;AAED,uCAAuC;AACvC,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,8BAA8B,CAAC;IACzC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,sDAAsD;AACtD,MAAM,WAAW,8BAA8B;IAC7C;;;OAGG;IACH,KAAK,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;CAC/B;AAED,+CAA+C;AAC/C,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,8CAA8C;AAC9C,wBAAgB,6BAA6B,CAC3C,OAAO,GAAE,8BAAmC,GAC3C,uBAAuB,CAoBzB;AA6SD,yDAAyD;AACzD,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,8BAA8B,GACvC,aAAa,GAAG,IAAI,CA+HtB;AAuID,wDAAwD;AACxD,wBAAgB,wCAAwC,CACtD,KAAK,EAAE,uBAAuB,EAC9B,KAAK,EAAE,sBAAsB,GAC5B,uBAAuB,EAAE,CAE3B;AAwPD,4CAA4C;AAC5C,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,uBAAuB,EAC9B,QAAQ,EAAE,aAAa,GAAG,IAAI,GAC7B,uBAAuB,EAAE,CAE3B"}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import * as dntShim from "../../../_dnt.shims.js";
|
|
2
2
|
/** State for create AG-UI browser encoder. */
|
|
3
|
-
export function createAgUiBrowserEncoderState() {
|
|
3
|
+
export function createAgUiBrowserEncoderState(options = {}) {
|
|
4
|
+
// Clocked by default. This state is built at three separate composition
|
|
5
|
+
// roots, so an opt-in clock only has to be forgotten once to lose elapsedMs
|
|
6
|
+
// for every run -- which is exactly what happened twice before.
|
|
7
|
+
const nowMs = options.nowMs === null ? undefined : options.nowMs ?? (() => performance.now());
|
|
4
8
|
return {
|
|
9
|
+
...(nowMs ? { nowMs, startedMs: nowMs() } : {}),
|
|
5
10
|
messageId: null,
|
|
6
11
|
textOpen: false,
|
|
7
12
|
activeTextContentId: null,
|
|
@@ -480,6 +485,16 @@ function closeOpenReasoningEvent(state) {
|
|
|
480
485
|
}
|
|
481
486
|
/** Map runtime stream event to AG-UI browser events. */
|
|
482
487
|
export function mapRuntimeStreamEventToAgUiBrowserEvents(state, event) {
|
|
488
|
+
return stampElapsed(state, mapRuntimeStreamEventToAgUiBrowserEventsUnstamped(state, event));
|
|
489
|
+
}
|
|
490
|
+
function stampElapsed(state, events) {
|
|
491
|
+
if (!state.nowMs || state.startedMs === undefined) {
|
|
492
|
+
return events;
|
|
493
|
+
}
|
|
494
|
+
const elapsedMs = Math.max(0, Math.round(state.nowMs() - state.startedMs));
|
|
495
|
+
return events.map((entry) => ({ ...entry, payload: { ...entry.payload, elapsedMs } }));
|
|
496
|
+
}
|
|
497
|
+
function mapRuntimeStreamEventToAgUiBrowserEventsUnstamped(state, event) {
|
|
483
498
|
if (event.type.startsWith("data-")) {
|
|
484
499
|
const name = event.type.slice("data-".length);
|
|
485
500
|
if (name.length === 0) {
|
|
@@ -678,6 +693,9 @@ export function mapRuntimeStreamEventToAgUiBrowserEvents(state, event) {
|
|
|
678
693
|
}
|
|
679
694
|
/** Finalize AG-UI browser events helper. */
|
|
680
695
|
export function finalizeAgUiBrowserEvents(state, response) {
|
|
696
|
+
return stampElapsed(state, finalizeAgUiBrowserEventsUnstamped(state, response));
|
|
697
|
+
}
|
|
698
|
+
function finalizeAgUiBrowserEventsUnstamped(state, response) {
|
|
681
699
|
applyResponseMetadata(state, response);
|
|
682
700
|
if (state.sawTerminalError) {
|
|
683
701
|
return [];
|
|
@@ -6,6 +6,8 @@ import { type CreateAgUiTrackedBrowserResponseInput } from "./tracked-browser-re
|
|
|
6
6
|
export type AgUiChatUiChunkBrowserEncoder = Pick<AgUiBrowserChunkEncoder<ChatUiMessageChunk<ChatMessageMetadata>>, "encode" | "finalize">;
|
|
7
7
|
/** Options accepted by create AG-UI chat UI chunk browser encoder. */
|
|
8
8
|
export interface CreateAgUiChatUiChunkBrowserEncoderOptions {
|
|
9
|
+
/** Clock for `elapsedMs`; forwarded to the encoder state. */
|
|
10
|
+
nowMs?: (() => number) | null;
|
|
9
11
|
modelId?: string;
|
|
10
12
|
resolveProvider?: (modelId: string) => string | undefined;
|
|
11
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-ui-chunk-browser-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/chat-ui-chunk-browser-encoder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,OAAO,EACL,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAC5B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAEL,KAAK,qCAAqC,EAC3C,MAAM,+BAA+B,CAAC;AAEvC,mEAAmE;AACnE,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC9C,uBAAuB,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,EAChE,QAAQ,GAAG,UAAU,CACtB,CAAC;AAEF,sEAAsE;AACtE,MAAM,WAAW,0CAA0C;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC3D;AAED,uEAAuE;AACvE,MAAM,WAAW,2CAA4C,SAC3D,IAAI,CACF,qCAAqC,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,EAC9E,cAAc,GAAG,iBAAiB,CACnC;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,0CAA0C,CAAC,iBAAiB,CAAC,CAAC;CACjF;AAED,wDAAwD;AACxD,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,GAC7C,mBAAmB,GAAG,SAAS,CAUjC;AAED,mDAAmD;AACnD,wBAAgB,iCAAiC,CAC/C,eAAe,EAAE,mBAAmB,GAAG,SAAS,GAC/C,IAAI,CACL,8BAA8B,EAC5B,aAAa,GACb,cAAc,GACd,aAAa,GACb,mBAAmB,GACnB,0BAA0B,GAC1B,sBAAsB,GACtB,iBAAiB,CACpB,CAmBA;AA6CD,mDAAmD;AACnD,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,EAC9C,OAAO,GAAE,IAAI,CAAC,0CAA0C,EAAE,iBAAiB,CAAM,GAChF,OAAO,CAAC,8BAA8B,CAAC,GAAG,IAAI,CAkFhD;AAED,0EAA0E;AAC1E,wBAAgB,6CAA6C,CAC3D,KAAK,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,GAC7C,sBAAsB,CA+BxB;AAED,kDAAkD;AAClD,wBAAgB,mCAAmC,CACjD,OAAO,GAAE,0CAA+C,GACvD,6BAA6B,
|
|
1
|
+
{"version":3,"file":"chat-ui-chunk-browser-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/chat-ui-chunk-browser-encoder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAE1E,OAAO,EACL,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAC5B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAEL,KAAK,qCAAqC,EAC3C,MAAM,+BAA+B,CAAC;AAEvC,mEAAmE;AACnE,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAC9C,uBAAuB,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,EAChE,QAAQ,GAAG,UAAU,CACtB,CAAC;AAEF,sEAAsE;AACtE,MAAM,WAAW,0CAA0C;IACzD,6DAA6D;IAC7D,KAAK,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;CAC3D;AAED,uEAAuE;AACvE,MAAM,WAAW,2CAA4C,SAC3D,IAAI,CACF,qCAAqC,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,EAC9E,cAAc,GAAG,iBAAiB,CACnC;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,0CAA0C,CAAC,iBAAiB,CAAC,CAAC;CACjF;AAED,wDAAwD;AACxD,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,GAC7C,mBAAmB,GAAG,SAAS,CAUjC;AAED,mDAAmD;AACnD,wBAAgB,iCAAiC,CAC/C,eAAe,EAAE,mBAAmB,GAAG,SAAS,GAC/C,IAAI,CACL,8BAA8B,EAC5B,aAAa,GACb,cAAc,GACd,aAAa,GACb,mBAAmB,GACnB,0BAA0B,GAC1B,sBAAsB,GACtB,iBAAiB,CACpB,CAmBA;AA6CD,mDAAmD;AACnD,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,EAC9C,OAAO,GAAE,IAAI,CAAC,0CAA0C,EAAE,iBAAiB,CAAM,GAChF,OAAO,CAAC,8BAA8B,CAAC,GAAG,IAAI,CAkFhD;AAED,0EAA0E;AAC1E,wBAAgB,6CAA6C,CAC3D,KAAK,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,GAC7C,sBAAsB,CA+BxB;AAED,kDAAkD;AAClD,wBAAgB,mCAAmC,CACjD,OAAO,GAAE,0CAA+C,GACvD,6BAA6B,CAc/B;AAED,iEAAiE;AACjE,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,2CAA2C,GACjD,QAAQ,CAkBV"}
|
|
@@ -173,6 +173,7 @@ export function createAgUiChatUiChunkBrowserEncoder(options = {}) {
|
|
|
173
173
|
},
|
|
174
174
|
getMetadataFromChunk: (chunk) => getAgUiChatUiMessageChunkMetadata(chunk, options),
|
|
175
175
|
getRuntimeEvents: (chunk) => [normalizeChatUiMessageChunkToAgUiRuntimeEvent(chunk)],
|
|
176
|
+
...(options.nowMs === undefined ? {} : { nowMs: options.nowMs }),
|
|
176
177
|
});
|
|
177
178
|
}
|
|
178
179
|
/** Response payload for create AG-UI chat UI tracked browser. */
|
|
@@ -9,6 +9,8 @@ export interface AgUiChunkEncoderBridge<TChunk> {
|
|
|
9
9
|
/** Options accepted by create AG-UI chunk encoder bridge. */
|
|
10
10
|
export interface CreateAgUiChunkEncoderBridgeOptions<TChunk> {
|
|
11
11
|
getRuntimeEvents: (chunk: TChunk) => readonly AgUiRuntimeStreamEvent[];
|
|
12
|
+
/** Clock for `elapsedMs`; forwarded to the encoder state. */
|
|
13
|
+
nowMs?: (() => number) | null;
|
|
12
14
|
}
|
|
13
15
|
/** Create AG-UI chunk encoder bridge. */
|
|
14
16
|
export declare function createAgUiChunkEncoderBridge<TChunk>(options: CreateAgUiChunkEncoderBridgeOptions<TChunk>): AgUiChunkEncoderBridge<TChunk>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-encoder-bridge.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/chunk-encoder-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAI5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,0DAA0D;AAC1D,MAAM,WAAW,sBAAsB,CAAC,MAAM;IAC5C,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,uBAAuB,EAAE,CAAC;IACrD,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,KAAK,uBAAuB,EAAE,CAAC;IACxE,KAAK,EAAE,uBAAuB,CAAC;CAChC;AAED,6DAA6D;AAC7D,MAAM,WAAW,mCAAmC,CAAC,MAAM;IACzD,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,sBAAsB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"chunk-encoder-bridge.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/chunk-encoder-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAI5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,0DAA0D;AAC1D,MAAM,WAAW,sBAAsB,CAAC,MAAM;IAC5C,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,uBAAuB,EAAE,CAAC;IACrD,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,KAAK,uBAAuB,EAAE,CAAC;IACxE,KAAK,EAAE,uBAAuB,CAAC;CAChC;AAED,6DAA6D;AAC7D,MAAM,WAAW,mCAAmC,CAAC,MAAM;IACzD,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,sBAAsB,EAAE,CAAC;IACvE,6DAA6D;IAC7D,KAAK,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;CAC/B;AAED,yCAAyC;AACzC,wBAAgB,4BAA4B,CAAC,MAAM,EACjD,OAAO,EAAE,mCAAmC,CAAC,MAAM,CAAC,GACnD,sBAAsB,CAAC,MAAM,CAAC,CAahC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createAgUiBrowserEncoderState, finalizeAgUiBrowserEvents, mapRuntimeStreamEventToAgUiBrowserEvents, } from "./browser-encoder.js";
|
|
2
2
|
/** Create AG-UI chunk encoder bridge. */
|
|
3
3
|
export function createAgUiChunkEncoderBridge(options) {
|
|
4
|
-
const state = createAgUiBrowserEncoderState();
|
|
4
|
+
const state = createAgUiBrowserEncoderState(options.nowMs === undefined ? {} : { nowMs: options.nowMs });
|
|
5
5
|
return {
|
|
6
6
|
state,
|
|
7
7
|
encode: (chunk) => options.getRuntimeEvents(chunk).flatMap((event) => mapRuntimeStreamEventToAgUiBrowserEvents(state, event)),
|
|
@@ -9,6 +9,8 @@ export interface AgUiRuntimeEventEncoder {
|
|
|
9
9
|
/** Options accepted by create AG-UI runtime event encoder. */
|
|
10
10
|
export interface CreateAgUiRuntimeEventEncoderOptions {
|
|
11
11
|
initialMetadata?: Partial<AgUiBrowserRunFinishedMetadata>;
|
|
12
|
+
/** Clock for `elapsedMs`; forwarded to the encoder state. */
|
|
13
|
+
nowMs?: (() => number) | null;
|
|
12
14
|
}
|
|
13
15
|
/** Create AG-UI runtime event encoder. */
|
|
14
16
|
export declare function createAgUiRuntimeEventEncoder(options?: CreateAgUiRuntimeEventEncoderOptions): AgUiRuntimeEventEncoder;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-event-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/runtime-event-encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAI5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,2DAA2D;AAC3D,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,uBAAuB,CAAC;IAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,uBAAuB,EAAE,CAAC;IACrE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,KAAK,uBAAuB,EAAE,CAAC;CACzE;AAED,8DAA8D;AAC9D,MAAM,WAAW,oCAAoC;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-event-encoder.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/runtime-event-encoder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAI5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,2DAA2D;AAC3D,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,uBAAuB,CAAC;IAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,uBAAuB,EAAE,CAAC;IACrE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,KAAK,uBAAuB,EAAE,CAAC;CACzE;AAED,8DAA8D;AAC9D,MAAM,WAAW,oCAAoC;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAC1D,6DAA6D;IAC7D,KAAK,CAAC,EAAE,CAAC,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC;CAC/B;AAED,0CAA0C;AAC1C,wBAAgB,6BAA6B,CAC3C,OAAO,GAAE,oCAAyC,GACjD,uBAAuB,CAiDzB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createAgUiBrowserEncoderState, finalizeAgUiBrowserEvents, mapRuntimeStreamEventToAgUiBrowserEvents, } from "./browser-encoder.js";
|
|
2
2
|
/** Create AG-UI runtime event encoder. */
|
|
3
3
|
export function createAgUiRuntimeEventEncoder(options = {}) {
|
|
4
|
-
const state = createAgUiBrowserEncoderState();
|
|
4
|
+
const state = createAgUiBrowserEncoderState(options.nowMs === undefined ? {} : { nowMs: options.nowMs });
|
|
5
5
|
const toolInputs = new Map();
|
|
6
6
|
Object.assign(state.metadata, options.initialMetadata ?? {});
|
|
7
7
|
return {
|
|
@@ -6,8 +6,8 @@ import { type HostedProjectRemoteToolSourceMutationHandler, type HostedProjectRe
|
|
|
6
6
|
import { type RuntimeClientProfile } from "../runtime/client-profile.js";
|
|
7
7
|
import { type HostedRuntimeAllowedToolNames } from "./runtime-essential-tools.js";
|
|
8
8
|
import type { HostedSubmittedFormInputResult } from "./chat-runtime-contract.js";
|
|
9
|
-
import type { RuntimeToolDiscoveryContext } from "../runtime/tool-discovery-context.js";
|
|
10
9
|
import { type SourceIntegrationPolicyManifest } from "../../integrations/source-policy.js";
|
|
10
|
+
import type { RuntimeToolDiscoveryContext } from "../runtime/tool-discovery-context.js";
|
|
11
11
|
import type { RuntimeToolLoadingMode } from "../runtime/runtime-tool-config.js";
|
|
12
12
|
/** Context for hosted chat runtime tool assembly. */
|
|
13
13
|
export type HostedChatRuntimeToolAssemblyContext = DefaultResearchArtifactContext & {
|
|
@@ -71,10 +71,14 @@ export type PrepareHostedChatRuntimeToolAssemblyInput<TTraceAttributes extends H
|
|
|
71
71
|
onStudioProjectSwitch?: HostedProjectRemoteToolSourceProjectSwitchHandler;
|
|
72
72
|
preloadLatestConversationUserText?: boolean;
|
|
73
73
|
/**
|
|
74
|
-
* Per-run tool
|
|
75
|
-
*
|
|
76
|
-
* execution gate
|
|
77
|
-
*
|
|
74
|
+
* Per-run tool activation context. When its `activatedRemoteToolNames` Set is
|
|
75
|
+
* present, it is passed by reference to every remote tool source as the live
|
|
76
|
+
* execution gate, so growing the Set exposes tools without re-creating the
|
|
77
|
+
* sources. Deprecated: no framework path populates this. It is retained
|
|
78
|
+
* because `PrepareHostedChatRuntimeToolAssemblyInput` is public API.
|
|
79
|
+
*
|
|
80
|
+
* @deprecated Use `tool_search` deferred loading. See
|
|
81
|
+
* `docs/architecture/28-model-driven-tool-discovery.md`.
|
|
78
82
|
*/
|
|
79
83
|
toolDiscoveryContext?: RuntimeToolDiscoveryContext;
|
|
80
84
|
/** Exact project-source restriction applied before tool inventory is exposed. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-runtime-tool-assembly.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-runtime-tool-assembly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAE5B,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,OAAO,EAEZ,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,8BAA8B,EAGpC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAEL,KAAK,4CAA4C,EACjD,KAAK,6CAA6C,EAClD,KAAK,iDAAiD,EACtD,KAAK,wCAAwC,EAC9C,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAIzE,OAAO,EACL,KAAK,6BAA6B,EAGnC,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"chat-runtime-tool-assembly.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-runtime-tool-assembly.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,15 +12,20 @@ export type PrepareHostedChildForkRuntimeStepMessagesInput = {
|
|
|
12
12
|
forkToolNames: readonly string[];
|
|
13
13
|
resolveSystem?: HostedChildForkRuntimeStepSystemResolver;
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
16
|
-
*
|
|
15
|
+
* Tool names that are always present. Required when `getActivatedToolNames`
|
|
16
|
+
* is supplied.
|
|
17
|
+
*
|
|
18
|
+
* @deprecated No framework path supplies this. Retained because
|
|
19
|
+
* `PrepareHostedChildForkRuntimeStepMessagesInput` is public API.
|
|
17
20
|
*/
|
|
18
21
|
pinnedToolNames?: readonly string[];
|
|
19
22
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
23
|
+
* Returns the currently activated tool names. The result is merged with
|
|
24
|
+
* `pinnedToolNames` and returned as `forkToolNames`, letting a caller refresh
|
|
25
|
+
* the exposed tool set per step without mutating its own fixed array.
|
|
26
|
+
*
|
|
27
|
+
* @deprecated Use `tool_search` deferred loading. See
|
|
28
|
+
* `docs/architecture/28-model-driven-tool-discovery.md`.
|
|
24
29
|
*/
|
|
25
30
|
getActivatedToolNames?: () => readonly string[];
|
|
26
31
|
};
|
|
@@ -29,9 +34,9 @@ export type HostedChildForkRuntimeStepMessages = {
|
|
|
29
34
|
messages: AgentMessage[];
|
|
30
35
|
system: string;
|
|
31
36
|
/**
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
37
|
+
* The live `pinned + activated` set for this step. Present only when
|
|
38
|
+
* `getActivatedToolNames` was supplied; callers otherwise keep their own
|
|
39
|
+
* fixed `forkToolNames`.
|
|
35
40
|
*/
|
|
36
41
|
forkToolNames?: readonly string[];
|
|
37
42
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"child-fork-step-message-preparation.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/child-fork-step-message-preparation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAUhE,OAAO,KAAK,EAAE,OAAO,IAAI,YAAY,EAAe,MAAM,qBAAqB,CAAC;AAEhF,8EAA8E;AAC9E,MAAM,MAAM,wCAAwC,GAAG,CAAC,KAAK,EAAE;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACpD,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAEhC,yEAAyE;AACzE,MAAM,MAAM,8CAA8C,GAAG;IAC3D,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE,wCAAwC,CAAC;IACzD
|
|
1
|
+
{"version":3,"file":"child-fork-step-message-preparation.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/child-fork-step-message-preparation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAUhE,OAAO,KAAK,EAAE,OAAO,IAAI,YAAY,EAAe,MAAM,qBAAqB,CAAC;AAEhF,8EAA8E;AAC9E,MAAM,MAAM,wCAAwC,GAAG,CAAC,KAAK,EAAE;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,SAAS,oBAAoB,EAAE,CAAC;CACpD,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAEhC,yEAAyE;AACzE,MAAM,MAAM,8CAA8C,GAAG;IAC3D,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,iBAAiB,EAAE,MAAM,MAAM,CAAC;IAChC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE,wCAAwC,CAAC;IACzD;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,MAAM,SAAS,MAAM,EAAE,CAAC;CACjD,CAAC;AAEF,uEAAuE;AACvE,MAAM,MAAM,kCAAkC,GAAG;IAC/C,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACnC,CAAC;AAiDF,0EAA0E;AAC1E,wBAAgB,0DAA0D,CACxE,iBAAiB,EAAE,SAAS,oBAAoB,EAAE,GACjD,YAAY,EAAE,CAOhB;AAED,uDAAuD;AACvD,wBAAgB,yCAAyC,CACvD,KAAK,EAAE,8CAA8C,GACpD,kCAAkC,CAoCpC"}
|
|
@@ -55,9 +55,6 @@ export function prepareHostedChildForkRuntimeStepMessages(input) {
|
|
|
55
55
|
system: currentInstructions,
|
|
56
56
|
compactedMessages,
|
|
57
57
|
});
|
|
58
|
-
// Compute live forkToolNames = pinned ∪ activated when the caller supplies
|
|
59
|
-
// a getActivatedToolNames getter. This allows each step to see newly
|
|
60
|
-
// activated tool schemas without the caller mutating its fixed array.
|
|
61
58
|
const liveForkToolNames = input.getActivatedToolNames
|
|
62
59
|
? [
|
|
63
60
|
...new Set([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"child-lifecycle.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/child-lifecycle.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"child-lifecycle.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/child-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -136,7 +136,31 @@ function wrapSkippableTerminalPersistence(adapter, skipTerminalPersistence) {
|
|
|
136
136
|
};
|
|
137
137
|
}
|
|
138
138
|
const CANCELLED_TERMINAL_MESSAGE = "Child run cancelled";
|
|
139
|
+
/** An incidental cause on a cancelled run: enough to identify it, not the whole story. */
|
|
139
140
|
const MAX_CANCELLED_CAUSE_LENGTH = 200;
|
|
141
|
+
/**
|
|
142
|
+
* A failed run's message is the primary explanation a user reads to find out why
|
|
143
|
+
* their agent failed, so it keeps far more room than an incidental cause. Real
|
|
144
|
+
* provider validation errors survive intact; only bulk payloads are cut.
|
|
145
|
+
*/
|
|
146
|
+
const MAX_FAILURE_MESSAGE_LENGTH = 4_000;
|
|
147
|
+
/**
|
|
148
|
+
* Bound and sanitize error text on its way to a durable run record.
|
|
149
|
+
*
|
|
150
|
+
* `terminalErrorMessage` is persisted by `finalizeConversationAgentRun`, and
|
|
151
|
+
* AGENTS.md:96-101 bars sensitive values in error messages — naming provider
|
|
152
|
+
* response bodies and raw prompts explicitly. Credential-bearing URLs are
|
|
153
|
+
* stripped and the text is cut to an excerpt, the same treatment
|
|
154
|
+
* `sanitizeDiscoveryErrorMessage` applies to surfaced error text.
|
|
155
|
+
*
|
|
156
|
+
* Applied to every branch rather than only the ones known to carry external
|
|
157
|
+
* text, so "everything written to terminalErrorMessage is sanitized and bounded"
|
|
158
|
+
* holds as an invariant instead of a case-by-case argument.
|
|
159
|
+
*/
|
|
160
|
+
function boundTerminalErrorText(value, maxLength) {
|
|
161
|
+
const sanitized = sanitizeUrlCredentials(value);
|
|
162
|
+
return sanitized.length <= maxLength ? sanitized : `${sanitized.slice(0, maxLength - 3)}...`;
|
|
163
|
+
}
|
|
140
164
|
/**
|
|
141
165
|
* A run torn down mid-flight reports `cancelled`, but the error that surfaced is
|
|
142
166
|
* not always the abort itself — an aborted signal makes any error in flight look
|
|
@@ -155,14 +179,10 @@ function resolveCancelledTerminalMessage(error) {
|
|
|
155
179
|
if (isChildRunAbortError(error)) {
|
|
156
180
|
return CANCELLED_TERMINAL_MESSAGE;
|
|
157
181
|
}
|
|
158
|
-
const
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
const cause = sanitized.length <= MAX_CANCELLED_CAUSE_LENGTH
|
|
163
|
-
? sanitized
|
|
164
|
-
: `${sanitized.slice(0, MAX_CANCELLED_CAUSE_LENGTH - 3)}...`;
|
|
165
|
-
return `${CANCELLED_TERMINAL_MESSAGE}: ${cause}`;
|
|
182
|
+
const cause = boundTerminalErrorText(error instanceof Error ? error.message : String(error), MAX_CANCELLED_CAUSE_LENGTH);
|
|
183
|
+
return cause.length === 0
|
|
184
|
+
? CANCELLED_TERMINAL_MESSAGE
|
|
185
|
+
: `${CANCELLED_TERMINAL_MESSAGE}: ${cause}`;
|
|
166
186
|
}
|
|
167
187
|
function resolveHostedChildExecutionErrorState(error, input) {
|
|
168
188
|
if (error instanceof HostedChildTerminalStateError) {
|
|
@@ -172,7 +192,7 @@ function resolveHostedChildExecutionErrorState(error, input) {
|
|
|
172
192
|
return {
|
|
173
193
|
status: error.status,
|
|
174
194
|
terminalErrorCode: resolveHostedChildTerminalErrorCode(error.status),
|
|
175
|
-
terminalErrorMessage: error.message,
|
|
195
|
+
terminalErrorMessage: boundTerminalErrorText(error.message, MAX_FAILURE_MESSAGE_LENGTH),
|
|
176
196
|
};
|
|
177
197
|
}
|
|
178
198
|
if (error instanceof HostedChildExecutionFailure) {
|
|
@@ -180,7 +200,7 @@ function resolveHostedChildExecutionErrorState(error, input) {
|
|
|
180
200
|
return {
|
|
181
201
|
status: "failed",
|
|
182
202
|
terminalErrorCode: providerError?.code ?? input.executionFailedCode,
|
|
183
|
-
terminalErrorMessage: providerError?.message ?? error.message,
|
|
203
|
+
terminalErrorMessage: boundTerminalErrorText(providerError?.message ?? error.message, MAX_FAILURE_MESSAGE_LENGTH),
|
|
184
204
|
usage: toHostedChildLifecycleUsage(error.usage),
|
|
185
205
|
};
|
|
186
206
|
}
|
|
@@ -195,7 +215,7 @@ function resolveHostedChildExecutionErrorState(error, input) {
|
|
|
195
215
|
return {
|
|
196
216
|
status: "failed",
|
|
197
217
|
terminalErrorCode: input.executionFailedCode,
|
|
198
|
-
terminalErrorMessage: error instanceof Error ? error.message : String(error),
|
|
218
|
+
terminalErrorMessage: boundTerminalErrorText(error instanceof Error ? error.message : String(error), MAX_FAILURE_MESSAGE_LENGTH),
|
|
199
219
|
usage: toHostedChildLifecycleUsage(getChildRunSnapshotUsage(input.getExecutionSnapshot())),
|
|
200
220
|
};
|
|
201
221
|
}
|
|
@@ -38,6 +38,65 @@ export type HostedDurableChildInvokeResult = {
|
|
|
38
38
|
terminalErrorCode: string | null;
|
|
39
39
|
terminalErrorMessage: string | null;
|
|
40
40
|
};
|
|
41
|
+
/**
|
|
42
|
+
* Published contract for the `invoke_agent` tool result this module writes.
|
|
43
|
+
*
|
|
44
|
+
* Split by status rather than flattened: a `completed` envelope must carry the
|
|
45
|
+
* child identifiers, because a consumer reading it back has no other way to
|
|
46
|
+
* locate the child run. A terminal envelope may omit them, since a setup failure
|
|
47
|
+
* can happen before the child exists. Flattening the two would let a completed
|
|
48
|
+
* result lose an identifier while conformance tests stayed green.
|
|
49
|
+
*
|
|
50
|
+
* Deliberately permissive about extra run telemetry it does not name: this pins
|
|
51
|
+
* the fields consumers depend on, and closing the shape would make any additive
|
|
52
|
+
* change here a cross-repo deploy-order problem.
|
|
53
|
+
* See veryfront/veryfront-issue-inbox#423.
|
|
54
|
+
*/
|
|
55
|
+
export declare const getHostedDurableChildInvokeResultSchema: () => import("../../internal-agents/schema.js").Schema<({
|
|
56
|
+
ok: boolean;
|
|
57
|
+
terminalErrorCode: string | null;
|
|
58
|
+
terminalErrorMessage: string | null;
|
|
59
|
+
} & {
|
|
60
|
+
text?: string | undefined;
|
|
61
|
+
error?: string | undefined;
|
|
62
|
+
summary?: ({
|
|
63
|
+
text: string;
|
|
64
|
+
} & {} & Record<string, unknown>) | undefined;
|
|
65
|
+
steps?: number | undefined;
|
|
66
|
+
toolCalls?: unknown[] | undefined;
|
|
67
|
+
toolResults?: unknown[] | undefined;
|
|
68
|
+
usage?: Record<string, unknown> | undefined;
|
|
69
|
+
durationMs?: number | undefined;
|
|
70
|
+
sourceTargetKind?: string | null | undefined;
|
|
71
|
+
runtimeTargetKind?: string | null | undefined;
|
|
72
|
+
} & {
|
|
73
|
+
status: "completed";
|
|
74
|
+
childConversationId: string;
|
|
75
|
+
childRunId: string;
|
|
76
|
+
childMessageId: string;
|
|
77
|
+
} & Record<string, unknown>) | ({
|
|
78
|
+
ok: boolean;
|
|
79
|
+
terminalErrorCode: string | null;
|
|
80
|
+
terminalErrorMessage: string | null;
|
|
81
|
+
} & {
|
|
82
|
+
text?: string | undefined;
|
|
83
|
+
error?: string | undefined;
|
|
84
|
+
summary?: ({
|
|
85
|
+
text: string;
|
|
86
|
+
} & {} & Record<string, unknown>) | undefined;
|
|
87
|
+
steps?: number | undefined;
|
|
88
|
+
toolCalls?: unknown[] | undefined;
|
|
89
|
+
toolResults?: unknown[] | undefined;
|
|
90
|
+
usage?: Record<string, unknown> | undefined;
|
|
91
|
+
durationMs?: number | undefined;
|
|
92
|
+
sourceTargetKind?: string | null | undefined;
|
|
93
|
+
runtimeTargetKind?: string | null | undefined;
|
|
94
|
+
} & {
|
|
95
|
+
status: "failed";
|
|
96
|
+
childConversationId: string | null | undefined;
|
|
97
|
+
childRunId: string | null | undefined;
|
|
98
|
+
childMessageId: string | null | undefined;
|
|
99
|
+
} & Record<string, unknown>)>;
|
|
41
100
|
/** Input payload for build hosted durable child invoke failure result. */
|
|
42
101
|
export type BuildHostedDurableChildInvokeFailureResultInput = {
|
|
43
102
|
terminalErrorCode: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durable-child-fork-execution.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/durable-child-fork-execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,yBAAyB,EAC1B,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"durable-child-fork-execution.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/durable-child-fork-execution.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { defineSchema } from "../../schemas/index.js";
|
|
1
2
|
import { resolveKnownProviderTerminalError } from "../streaming/stream-outcome.js";
|
|
2
3
|
import { buildChildRunResultSummary, } from "../child-run/result-summary.js";
|
|
3
4
|
import { resolveConversationRunTargets, } from "../conversation/durable.js";
|
|
@@ -18,6 +19,51 @@ export class HostedChildRunFinalizationError extends Error {
|
|
|
18
19
|
this.name = "HostedChildRunFinalizationError";
|
|
19
20
|
}
|
|
20
21
|
}
|
|
22
|
+
/**
|
|
23
|
+
* Published contract for the `invoke_agent` tool result this module writes.
|
|
24
|
+
*
|
|
25
|
+
* Split by status rather than flattened: a `completed` envelope must carry the
|
|
26
|
+
* child identifiers, because a consumer reading it back has no other way to
|
|
27
|
+
* locate the child run. A terminal envelope may omit them, since a setup failure
|
|
28
|
+
* can happen before the child exists. Flattening the two would let a completed
|
|
29
|
+
* result lose an identifier while conformance tests stayed green.
|
|
30
|
+
*
|
|
31
|
+
* Deliberately permissive about extra run telemetry it does not name: this pins
|
|
32
|
+
* the fields consumers depend on, and closing the shape would make any additive
|
|
33
|
+
* change here a cross-repo deploy-order problem.
|
|
34
|
+
* See veryfront/veryfront-issue-inbox#423.
|
|
35
|
+
*/
|
|
36
|
+
export const getHostedDurableChildInvokeResultSchema = defineSchema((v) => {
|
|
37
|
+
const base = v.object({
|
|
38
|
+
ok: v.boolean(),
|
|
39
|
+
text: v.string().optional(),
|
|
40
|
+
error: v.string().optional(),
|
|
41
|
+
summary: v.object({ text: v.string() }).passthrough().optional(),
|
|
42
|
+
steps: v.number().optional(),
|
|
43
|
+
toolCalls: v.array(v.unknown()).optional(),
|
|
44
|
+
toolResults: v.array(v.unknown()).optional(),
|
|
45
|
+
usage: v.record(v.string(), v.unknown()).optional(),
|
|
46
|
+
durationMs: v.number().optional(),
|
|
47
|
+
sourceTargetKind: v.string().nullable().optional(),
|
|
48
|
+
runtimeTargetKind: v.string().nullable().optional(),
|
|
49
|
+
terminalErrorCode: v.string().nullable(),
|
|
50
|
+
terminalErrorMessage: v.string().nullable(),
|
|
51
|
+
});
|
|
52
|
+
return v.discriminatedUnion("status", [
|
|
53
|
+
base.extend({
|
|
54
|
+
status: v.literal("completed"),
|
|
55
|
+
childConversationId: v.string(),
|
|
56
|
+
childRunId: v.string(),
|
|
57
|
+
childMessageId: v.string(),
|
|
58
|
+
}).passthrough(),
|
|
59
|
+
base.extend({
|
|
60
|
+
status: v.literal("failed"),
|
|
61
|
+
childConversationId: v.string().nullable().optional(),
|
|
62
|
+
childRunId: v.string().nullable().optional(),
|
|
63
|
+
childMessageId: v.string().nullable().optional(),
|
|
64
|
+
}).passthrough(),
|
|
65
|
+
]);
|
|
66
|
+
});
|
|
21
67
|
function buildHostedChildResultSummaryForMode(input) {
|
|
22
68
|
if (input.snapshot?.fullResultText !== null && input.snapshot?.fullResultText !== undefined) {
|
|
23
69
|
return buildChildRunResultSummary(input.snapshot.fullResultText, {
|