veryfront 0.1.334 → 0.1.336
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 +1 -1
- package/esm/src/agent/hosted-child-lifecycle.d.ts +21 -0
- package/esm/src/agent/hosted-child-lifecycle.d.ts.map +1 -1
- package/esm/src/agent/hosted-child-lifecycle.js +142 -0
- package/esm/src/agent/human-input.d.ts +26 -2
- package/esm/src/agent/human-input.d.ts.map +1 -1
- package/esm/src/agent/human-input.js +98 -0
- package/esm/src/agent/index.d.ts +2 -2
- package/esm/src/agent/index.d.ts.map +1 -1
- package/esm/src/agent/index.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 +1 -1
- package/src/deno.js +1 -1
- package/src/src/agent/hosted-child-lifecycle.ts +224 -0
- package/src/src/agent/human-input.ts +164 -1
- package/src/src/agent/index.ts +9 -0
- package/src/src/utils/version-constant.ts +1 -1
package/esm/deno.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type ChildRunExecutionResult, type ChildRunExecutionSnapshot } from "./child-run-execution-snapshot.js";
|
|
1
2
|
export interface HostedChildLifecycleTerminalState {
|
|
2
3
|
status: "completed" | "failed" | "cancelled";
|
|
3
4
|
usage?: {
|
|
@@ -37,5 +38,25 @@ export type HostedChildLifecycleRunResult<TResult> = {
|
|
|
37
38
|
error: unknown;
|
|
38
39
|
terminalState: HostedChildLifecycleTerminalState;
|
|
39
40
|
};
|
|
41
|
+
export type HostedChildExecutionLifecycleResult<TLocalResult extends ChildRunExecutionResult> = {
|
|
42
|
+
status: "completed";
|
|
43
|
+
result: TLocalResult;
|
|
44
|
+
snapshot: ChildRunExecutionSnapshot;
|
|
45
|
+
terminalState: HostedChildLifecycleTerminalState;
|
|
46
|
+
} | {
|
|
47
|
+
status: "failed" | "cancelled";
|
|
48
|
+
error: unknown;
|
|
49
|
+
terminalState: HostedChildLifecycleTerminalState;
|
|
50
|
+
};
|
|
51
|
+
export interface HostedChildExecutionLifecycleOptions<TLocalResult extends ChildRunExecutionResult> {
|
|
52
|
+
adapter: HostedChildLifecycleAdapter;
|
|
53
|
+
executionFailedCode: string;
|
|
54
|
+
abortSignal?: AbortSignal | undefined;
|
|
55
|
+
execute: () => Promise<TLocalResult> | TLocalResult;
|
|
56
|
+
getExecutionSnapshot: () => ChildRunExecutionSnapshot | null;
|
|
57
|
+
onLifecycleError?: (error: unknown) => Promise<void> | void;
|
|
58
|
+
skipTerminalPersistence?: (terminalState: HostedChildLifecycleTerminalState) => boolean;
|
|
59
|
+
}
|
|
40
60
|
export declare function runHostedChildLifecycle<TResult>(options: HostedChildLifecycleRunnerOptions<TResult>): Promise<HostedChildLifecycleRunResult<TResult>>;
|
|
61
|
+
export declare function runHostedChildExecutionLifecycle<TLocalResult extends ChildRunExecutionResult>(options: HostedChildExecutionLifecycleOptions<TLocalResult>): Promise<HostedChildExecutionLifecycleResult<TLocalResult>>;
|
|
41
62
|
//# sourceMappingURL=hosted-child-lifecycle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosted-child-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/src/agent/hosted-child-lifecycle.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iCAAiC;IAChD,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC7C,KAAK,CAAC,EAAE;QACN,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,kCACf,SAAQ,IAAI,CAAC,iCAAiC,EAAE,QAAQ,CAAC;IACzD,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACrC,SAAS,CAAC,EAAE,CACV,aAAa,EAAE,iCAAiC,KAC7C,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,CACP,aAAa,EAAE,iCAAiC,KAC7C,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,CACV,aAAa,EAAE,iCAAiC,KAC7C,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,8BACf,SAAQ,IAAI,CAAC,iCAAiC,EAAE,QAAQ,CAAC;IACzD,MAAM,EAAE,QAAQ,GAAG,WAAW,CAAC;CAChC;AAED,MAAM,WAAW,iCAAiC,CAAC,OAAO;IACxD,OAAO,EAAE,2BAA2B,CAAC;IACrC,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAC1C,qBAAqB,CAAC,EAAE,CACtB,MAAM,EAAE,OAAO,KAEb,OAAO,CAAC,kCAAkC,CAAC,GAC3C,kCAAkC,CAAC;IACvC,iBAAiB,EAAE,CACjB,KAAK,EAAE,OAAO,KAEZ,OAAO,CAAC,8BAA8B,CAAC,GACvC,8BAA8B,CAAC;IACnC,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC7D;AAED,MAAM,MAAM,6BAA6B,CAAC,OAAO,IAC7C;IACA,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,iCAAiC,CAAC;CAClD,GACC;IACA,MAAM,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,EAAE,iCAAiC,CAAC;CAClD,CAAC;
|
|
1
|
+
{"version":3,"file":"hosted-child-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/src/agent/hosted-child-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
import { buildChildRunExecutionSnapshot, getChildRunSnapshotUsage, } from "./child-run-execution-snapshot.js";
|
|
2
|
+
import { isChildRunAbortError } from "./child-run-execution-support.js";
|
|
3
|
+
import { HostedChildTerminalStateError, resolveHostedChildTerminalErrorCode, } from "./hosted-child-status.js";
|
|
4
|
+
class HostedChildExecutionFailure extends Error {
|
|
5
|
+
usage;
|
|
6
|
+
constructor(message, usage) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.usage = usage;
|
|
9
|
+
this.name = "HostedChildExecutionFailure";
|
|
10
|
+
}
|
|
11
|
+
}
|
|
1
12
|
async function dispatchTerminalState(adapter, terminalState) {
|
|
2
13
|
if (terminalState.status === "cancelled") {
|
|
3
14
|
await adapter.cancelled?.(terminalState);
|
|
@@ -45,3 +56,134 @@ export async function runHostedChildLifecycle(options) {
|
|
|
45
56
|
terminalState,
|
|
46
57
|
};
|
|
47
58
|
}
|
|
59
|
+
function toHostedChildLifecycleUsage(usage) {
|
|
60
|
+
if (!usage) {
|
|
61
|
+
return undefined;
|
|
62
|
+
}
|
|
63
|
+
return {
|
|
64
|
+
inputTokens: usage.inputTokens,
|
|
65
|
+
outputTokens: usage.outputTokens,
|
|
66
|
+
totalTokens: usage.totalTokens,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function wrapSkippableTerminalPersistence(adapter, skipTerminalPersistence) {
|
|
70
|
+
if (!skipTerminalPersistence) {
|
|
71
|
+
return adapter;
|
|
72
|
+
}
|
|
73
|
+
return {
|
|
74
|
+
...adapter,
|
|
75
|
+
failed: async (terminalState) => {
|
|
76
|
+
if (skipTerminalPersistence(terminalState)) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
await adapter.failed?.(terminalState);
|
|
80
|
+
},
|
|
81
|
+
cancelled: async (terminalState) => {
|
|
82
|
+
if (skipTerminalPersistence(terminalState)) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
await adapter.cancelled?.(terminalState);
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function resolveHostedChildExecutionErrorState(error, input) {
|
|
90
|
+
if (error instanceof HostedChildTerminalStateError) {
|
|
91
|
+
if (error.status === "completed") {
|
|
92
|
+
throw error;
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
status: error.status,
|
|
96
|
+
terminalErrorCode: resolveHostedChildTerminalErrorCode(error.status),
|
|
97
|
+
terminalErrorMessage: error.message,
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
if (error instanceof HostedChildExecutionFailure) {
|
|
101
|
+
return {
|
|
102
|
+
status: "failed",
|
|
103
|
+
terminalErrorCode: input.executionFailedCode,
|
|
104
|
+
terminalErrorMessage: error.message,
|
|
105
|
+
usage: toHostedChildLifecycleUsage(error.usage),
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
if (isChildRunAbortError(error) || input.abortSignal?.aborted) {
|
|
109
|
+
return {
|
|
110
|
+
status: "cancelled",
|
|
111
|
+
terminalErrorCode: "CANCELLED",
|
|
112
|
+
terminalErrorMessage: "Child run cancelled",
|
|
113
|
+
usage: toHostedChildLifecycleUsage(getChildRunSnapshotUsage(input.getExecutionSnapshot())),
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
return {
|
|
117
|
+
status: "failed",
|
|
118
|
+
terminalErrorCode: input.executionFailedCode,
|
|
119
|
+
terminalErrorMessage: error instanceof Error ? error.message : String(error),
|
|
120
|
+
usage: toHostedChildLifecycleUsage(getChildRunSnapshotUsage(input.getExecutionSnapshot())),
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
export async function runHostedChildExecutionLifecycle(options) {
|
|
124
|
+
const adapter = wrapSkippableTerminalPersistence(options.adapter, options.skipTerminalPersistence);
|
|
125
|
+
try {
|
|
126
|
+
const lifecycleResult = await runHostedChildLifecycle({
|
|
127
|
+
adapter,
|
|
128
|
+
execute: async () => {
|
|
129
|
+
const result = await options.execute();
|
|
130
|
+
const snapshot = options.getExecutionSnapshot() ?? buildChildRunExecutionSnapshot(result);
|
|
131
|
+
if (!snapshot.success) {
|
|
132
|
+
throw new HostedChildExecutionFailure(snapshot.error ?? "Unknown error", snapshot.usage);
|
|
133
|
+
}
|
|
134
|
+
return {
|
|
135
|
+
result,
|
|
136
|
+
snapshot,
|
|
137
|
+
};
|
|
138
|
+
},
|
|
139
|
+
resolveCompletedState: ({ snapshot }) => ({
|
|
140
|
+
status: "completed",
|
|
141
|
+
usage: toHostedChildLifecycleUsage(snapshot.usage),
|
|
142
|
+
}),
|
|
143
|
+
resolveErrorState: (error) => resolveHostedChildExecutionErrorState(error, {
|
|
144
|
+
executionFailedCode: options.executionFailedCode,
|
|
145
|
+
abortSignal: options.abortSignal,
|
|
146
|
+
getExecutionSnapshot: options.getExecutionSnapshot,
|
|
147
|
+
}),
|
|
148
|
+
onLifecycleError: options.onLifecycleError,
|
|
149
|
+
});
|
|
150
|
+
if (lifecycleResult.status !== "completed") {
|
|
151
|
+
return lifecycleResult;
|
|
152
|
+
}
|
|
153
|
+
return {
|
|
154
|
+
status: "completed",
|
|
155
|
+
result: lifecycleResult.result.result,
|
|
156
|
+
snapshot: lifecycleResult.result.snapshot,
|
|
157
|
+
terminalState: lifecycleResult.terminalState,
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
if (error instanceof HostedChildTerminalStateError) {
|
|
162
|
+
return {
|
|
163
|
+
status: error.status === "cancelled" ? "cancelled" : "failed",
|
|
164
|
+
error,
|
|
165
|
+
terminalState: {
|
|
166
|
+
status: error.status,
|
|
167
|
+
terminalErrorCode: resolveHostedChildTerminalErrorCode(error.status),
|
|
168
|
+
terminalErrorMessage: error.message,
|
|
169
|
+
},
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
const terminalState = resolveHostedChildExecutionErrorState(error, {
|
|
173
|
+
executionFailedCode: options.executionFailedCode,
|
|
174
|
+
abortSignal: options.abortSignal,
|
|
175
|
+
getExecutionSnapshot: options.getExecutionSnapshot,
|
|
176
|
+
});
|
|
177
|
+
try {
|
|
178
|
+
await dispatchTerminalState(adapter, terminalState);
|
|
179
|
+
}
|
|
180
|
+
catch (lifecycleError) {
|
|
181
|
+
await options.onLifecycleError?.(lifecycleError);
|
|
182
|
+
}
|
|
183
|
+
return {
|
|
184
|
+
status: terminalState.status,
|
|
185
|
+
error,
|
|
186
|
+
terminalState,
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
}
|
|
@@ -274,10 +274,33 @@ export type HumanInputRequest = z.infer<typeof HumanInputRequestSchema>;
|
|
|
274
274
|
export type HumanInputRequestInput = z.input<typeof HumanInputRequestSchema>;
|
|
275
275
|
export type HumanInputResult = z.infer<typeof HumanInputResultSchema>;
|
|
276
276
|
export type HumanInputPendingRequest = z.infer<typeof HumanInputPendingRequestSchema>;
|
|
277
|
-
type HumanInputResumeValue = {
|
|
277
|
+
export type HumanInputResumeValue = {
|
|
278
278
|
result: unknown;
|
|
279
279
|
isError: boolean;
|
|
280
280
|
};
|
|
281
|
+
export type DurableHumanInputFlowResult<TCreatedRequest> = {
|
|
282
|
+
result: HumanInputResult;
|
|
283
|
+
createdRequest: TCreatedRequest;
|
|
284
|
+
};
|
|
285
|
+
export interface ExecuteDurableHumanInputFlowOptions<TCreatedRequest, TSnapshot> {
|
|
286
|
+
sessionManager?: RunResumeSessionManager<HumanInputResumeValue> | undefined;
|
|
287
|
+
runId: string;
|
|
288
|
+
threadId: string;
|
|
289
|
+
toolCallId: string;
|
|
290
|
+
request: HumanInputRequestInput;
|
|
291
|
+
timeoutMs: number;
|
|
292
|
+
pollIntervalMs: number;
|
|
293
|
+
onRequest: (request: HumanInputPendingRequest) => TCreatedRequest | Promise<TCreatedRequest>;
|
|
294
|
+
onCreatedRequest?: ((request: TCreatedRequest) => void | Promise<void>) | undefined;
|
|
295
|
+
getSnapshot: (request: TCreatedRequest) => TSnapshot | Promise<TSnapshot>;
|
|
296
|
+
resolveSnapshot: (snapshot: TSnapshot) => HumanInputResult | undefined;
|
|
297
|
+
}
|
|
298
|
+
export interface WaitForDurableHumanInputResolutionOptions<TSnapshot> {
|
|
299
|
+
deadline: number;
|
|
300
|
+
pollIntervalMs: number;
|
|
301
|
+
getSnapshot: () => TSnapshot | Promise<TSnapshot>;
|
|
302
|
+
resolveSnapshot: (snapshot: TSnapshot) => HumanInputResult | undefined;
|
|
303
|
+
}
|
|
281
304
|
export interface WaitForHumanInputOptions {
|
|
282
305
|
sessionManager: RunResumeSessionManager<HumanInputResumeValue>;
|
|
283
306
|
runId: string;
|
|
@@ -293,6 +316,7 @@ export declare class InvalidHumanInputResultError extends Error {
|
|
|
293
316
|
readonly detail: z.ZodIssue[];
|
|
294
317
|
constructor(detail: z.ZodIssue[]);
|
|
295
318
|
}
|
|
319
|
+
export declare function executeDurableHumanInputFlow<TCreatedRequest, TSnapshot>(options: ExecuteDurableHumanInputFlowOptions<TCreatedRequest, TSnapshot>): Promise<DurableHumanInputFlowResult<TCreatedRequest>>;
|
|
296
320
|
export declare function waitForHumanInput(options: WaitForHumanInputOptions): Promise<HumanInputResult>;
|
|
297
|
-
export
|
|
321
|
+
export declare function waitForDurableHumanInputResolution<TSnapshot>(options: WaitForDurableHumanInputResolutionOptions<TSnapshot>): Promise<HumanInputResult>;
|
|
298
322
|
//# sourceMappingURL=human-input.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"human-input.d.ts","sourceRoot":"","sources":["../../../src/src/agent/human-input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"human-input.d.ts","sourceRoot":"","sources":["../../../src/src/agent/human-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import * as dntShim from "../../_dnt.shims.js";
|
|
1
2
|
import { z } from "zod";
|
|
2
3
|
import { AgUiRuntimeRunIdSchema } from "./runtime-ag-ui-contract.js";
|
|
4
|
+
import { RunResumeSessionManager } from "./runtime/index.js";
|
|
3
5
|
const TOOL_CALL_ID_SCHEMA = z.string().min(1).max(128);
|
|
4
6
|
export const HumanInputOptionSchema = z.object({
|
|
5
7
|
value: z.string(),
|
|
@@ -93,6 +95,54 @@ export class InvalidHumanInputResultError extends Error {
|
|
|
93
95
|
this.name = "InvalidHumanInputResultError";
|
|
94
96
|
}
|
|
95
97
|
}
|
|
98
|
+
export async function executeDurableHumanInputFlow(options) {
|
|
99
|
+
const sessionManager = options.sessionManager ??
|
|
100
|
+
new RunResumeSessionManager();
|
|
101
|
+
sessionManager.startRun({
|
|
102
|
+
runId: options.runId,
|
|
103
|
+
threadId: options.threadId,
|
|
104
|
+
});
|
|
105
|
+
let resolveCreatedRequest = null;
|
|
106
|
+
const createdRequestPromise = new Promise((resolve) => {
|
|
107
|
+
resolveCreatedRequest = resolve;
|
|
108
|
+
});
|
|
109
|
+
try {
|
|
110
|
+
const result = await waitForHumanInput({
|
|
111
|
+
sessionManager,
|
|
112
|
+
runId: options.runId,
|
|
113
|
+
toolCallId: options.toolCallId,
|
|
114
|
+
request: options.request,
|
|
115
|
+
onRequest: async (pendingRequest) => {
|
|
116
|
+
const currentRequest = await options.onRequest(pendingRequest);
|
|
117
|
+
if (!resolveCreatedRequest) {
|
|
118
|
+
throw new Error("Durable human input flow could not track the created request");
|
|
119
|
+
}
|
|
120
|
+
resolveCreatedRequest(currentRequest);
|
|
121
|
+
await options.onCreatedRequest?.(currentRequest);
|
|
122
|
+
void bridgeDurableHumanInputRequest({
|
|
123
|
+
sessionManager,
|
|
124
|
+
runId: options.runId,
|
|
125
|
+
toolCallId: options.toolCallId,
|
|
126
|
+
createdRequest: currentRequest,
|
|
127
|
+
timeoutMs: options.timeoutMs,
|
|
128
|
+
pollIntervalMs: options.pollIntervalMs,
|
|
129
|
+
getSnapshot: options.getSnapshot,
|
|
130
|
+
resolveSnapshot: options.resolveSnapshot,
|
|
131
|
+
});
|
|
132
|
+
},
|
|
133
|
+
});
|
|
134
|
+
const createdRequest = await createdRequestPromise;
|
|
135
|
+
sessionManager.completeRun(options.runId);
|
|
136
|
+
return {
|
|
137
|
+
result,
|
|
138
|
+
createdRequest,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
catch (error) {
|
|
142
|
+
sessionManager.failRun(options.runId);
|
|
143
|
+
throw error;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
96
146
|
export async function waitForHumanInput(options) {
|
|
97
147
|
options.sessionManager.prepareForSignal(options.runId, options.toolCallId);
|
|
98
148
|
const pendingRequest = HumanInputPendingRequestSchema.parse({
|
|
@@ -111,3 +161,51 @@ export async function waitForHumanInput(options) {
|
|
|
111
161
|
}
|
|
112
162
|
return parsed.data;
|
|
113
163
|
}
|
|
164
|
+
export async function waitForDurableHumanInputResolution(options) {
|
|
165
|
+
while (Date.now() < options.deadline) {
|
|
166
|
+
const snapshot = await options.getSnapshot();
|
|
167
|
+
const result = options.resolveSnapshot(snapshot);
|
|
168
|
+
if (result) {
|
|
169
|
+
return result;
|
|
170
|
+
}
|
|
171
|
+
await delay(options.pollIntervalMs);
|
|
172
|
+
}
|
|
173
|
+
throw new Error("Timed out while waiting for durable human input resolution");
|
|
174
|
+
}
|
|
175
|
+
async function bridgeDurableHumanInputRequest(input) {
|
|
176
|
+
try {
|
|
177
|
+
const resolved = await waitForDurableHumanInputResolution({
|
|
178
|
+
deadline: Date.now() + input.timeoutMs,
|
|
179
|
+
pollIntervalMs: input.pollIntervalMs,
|
|
180
|
+
getSnapshot: () => input.getSnapshot(input.createdRequest),
|
|
181
|
+
resolveSnapshot: input.resolveSnapshot,
|
|
182
|
+
});
|
|
183
|
+
submitHumanInputResumeValue(input.sessionManager, input.runId, input.toolCallId, {
|
|
184
|
+
result: resolved,
|
|
185
|
+
isError: false,
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
submitHumanInputResumeValue(input.sessionManager, input.runId, input.toolCallId, {
|
|
190
|
+
result: error instanceof Error ? error.message : String(error),
|
|
191
|
+
isError: true,
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
function submitHumanInputResumeValue(sessionManager, runId, toolCallId, value) {
|
|
196
|
+
try {
|
|
197
|
+
sessionManager.submitSignal(runId, {
|
|
198
|
+
waitKey: toolCallId,
|
|
199
|
+
value,
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
catch {
|
|
203
|
+
// Ignore late resume submissions once the local wait has already completed
|
|
204
|
+
// or the ephemeral session has been finalized.
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
function delay(ms) {
|
|
208
|
+
return new Promise((resolve) => {
|
|
209
|
+
dntShim.setTimeout(resolve, ms);
|
|
210
|
+
});
|
|
211
|
+
}
|
package/esm/src/agent/index.d.ts
CHANGED
|
@@ -128,7 +128,7 @@ export { type ConversationRunStreamMirror, createConversationRunStreamMirror, }
|
|
|
128
128
|
export { finalizeHostedDetached, type FinalizeHostedDetachedOptions, finalizeHostedResponse, type FinalizeHostedResponseOptions, type HostedDetachedFinalizationState, type HostedResponseFinalizationState, type HostedTerminalError, } from "./hosted-stream-finalization.js";
|
|
129
129
|
export { type ActiveConversationRunStatus, appendConversationRunEvents, AppendConversationRunEventsError, type AppendConversationRunEventsResponse, AppendConversationRunEventsResponseSchema, CompleteConversationRunResponseSchema, type ConversationAgentRunUsage, type ConversationRunAppendCursorResyncResult, type ConversationRunAppendExecutionOutcome, type ConversationRunAppendFailureOutcome, type ConversationRunAppendRecoveryOutcome, type ConversationRunBatchFlushOutcome, type ConversationRunEventQueueController, type ConversationRunProjection, ConversationRunProjectionSchema, type ConversationRunQueueFlushOutcome, ConversationRunStatusSchema, type ConversationRunTargets, ConversationRunTargetsSchema, ConversationRunTerminalStateError, createConversationAgentRun, createConversationRunEventQueueController, finalizeConversationAgentRun, flushConversationRunEventBatches, flushConversationRunEventQueue, getConversationRun, isActiveConversationRunStatus, isAppendableConversationRunProjection, isCursorMismatchConversationRunAppendError, isIgnorableConversationRunAppendError, monitorConversationRunStatus, parseAppendConversationRunEventsErrorBody, recoverConversationRunAppendExecution, recoverConversationRunAppendFailure, recoverConversationRunCursorMismatch, resolveConversationRunTargets, resyncConversationRunAppendCursor, type TerminalConversationRunStatus, } from "./durable.js";
|
|
130
130
|
export { buildInvokeAgentChildRunLifecycleCustomEvent, buildInvokeAgentChildRunProgressEvents, buildInvokeAgentChildRunStateDelta, type InvokeAgentChildRunLifecycleCustomEvent, InvokeAgentChildRunLifecycleCustomEventSchema, type InvokeAgentChildRunLifecycleValue, InvokeAgentChildRunLifecycleValueSchema, type InvokeAgentChildRunProgressEvent, type InvokeAgentChildRunProgressInput, type InvokeAgentChildRunStateDelta, InvokeAgentChildRunStateDeltaSchema, publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
|
|
131
|
-
export { type HostedChildLifecycleAdapter, type HostedChildLifecycleRunnerOptions, type HostedChildLifecycleRunResult, type HostedChildLifecycleTerminalState, runHostedChildLifecycle, } from "./hosted-child-lifecycle.js";
|
|
131
|
+
export { type HostedChildExecutionLifecycleOptions, type HostedChildExecutionLifecycleResult, type HostedChildLifecycleAdapter, type HostedChildLifecycleRunnerOptions, type HostedChildLifecycleRunResult, type HostedChildLifecycleTerminalState, runHostedChildExecutionLifecycle, runHostedChildLifecycle, } from "./hosted-child-lifecycle.js";
|
|
132
132
|
export { appendHostedChildMirrorChunk, closeHostedChildReasoningSegment, closeHostedChildTextSegment, createHostedChildMirrorContext, type HostedChildChunkMirror, type HostedChildMirrorContext, type HostedChildMirrorPart, type HostedChildMirrorState, isAlreadyMirroredHostedChunk, toMirroredHostedStreamPart, } from "./hosted-child-mirror.js";
|
|
133
133
|
export { type HostedChildRunIdentifiers, HostedChildTerminalStateError, type HostedChildTerminalStatus, monitorHostedChildRunStatus, resolveHostedChildTerminalErrorCode, } from "./hosted-child-status.js";
|
|
134
134
|
export { type HostedLifecycleAdapter, type HostedLifecycleExecution, type HostedLifecycleRunnerOptions, type HostedLifecycleRunResult, type HostedLifecycleTerminalState, runHostedLifecycle, } from "./hosted-lifecycle.js";
|
|
@@ -143,7 +143,7 @@ export { createDetachedRunTracker, type DetachedRunDrainResult, type DetachedRun
|
|
|
143
143
|
export { type AgUiCancelHandlerOptions, type AgUiResumeHandlerOptions, type AgUiResumeSignal, AgUiResumeSignalSchema, createAgUiCancelHandler, createAgUiResumeHandler, } from "./ag-ui-run-control.js";
|
|
144
144
|
export { type AgUiSseEvent, createAgUiRunErrorEvent, createAgUiSseErrorResponse, createAgUiSseResponse, normalizeAgUiMessages, parseAgUiRequest, parseAgUiRequestOrError, } from "./ag-ui-host-support.js";
|
|
145
145
|
export { type AgUiContextItem, type AgUiHandlerConfigWithAgent, type AgUiHandlerOptions, type AgUiInjectedTool, type AgUiRequest, AgUiRequestSchema, createAgUiHandler, } from "./ag-ui-handler.js";
|
|
146
|
-
export { type HumanInputField, type HumanInputFieldInput, HumanInputFieldSchema, type HumanInputOption, HumanInputOptionSchema, type HumanInputPendingRequest, HumanInputPendingRequestSchema, type HumanInputRequest, type HumanInputRequestInput, HumanInputRequestSchema, type HumanInputResult, HumanInputResultSchema, HumanInputResumeError, InvalidHumanInputResultError, waitForHumanInput, type WaitForHumanInputOptions, } from "./human-input.js";
|
|
146
|
+
export { type DurableHumanInputFlowResult, executeDurableHumanInputFlow, type ExecuteDurableHumanInputFlowOptions, type HumanInputField, type HumanInputFieldInput, HumanInputFieldSchema, type HumanInputOption, HumanInputOptionSchema, type HumanInputPendingRequest, HumanInputPendingRequestSchema, type HumanInputRequest, type HumanInputRequestInput, HumanInputRequestSchema, type HumanInputResult, HumanInputResultSchema, HumanInputResumeError, type HumanInputResumeValue, InvalidHumanInputResultError, waitForDurableHumanInputResolution, type WaitForDurableHumanInputResolutionOptions, waitForHumanInput, type WaitForHumanInputOptions, } from "./human-input.js";
|
|
147
147
|
export { type ChatHandlerBeforeStream, type ChatHandlerBeforeStreamContext, type ChatHandlerBeforeStreamResult, type ChatHandlerConfigWithAgent, type ChatHandlerMessageInput, type ChatHandlerOptions, createChatHandler, } from "./chat-handler.js";
|
|
148
148
|
export { AgentRuntime, RunAlreadyExistsError, RunCancelledError, RunNotActiveError, RunResumeSessionManager, type RunResumeSessionManagerOptions, type RunSessionStatus, type SubmitResumeValueOutcome, WaitConflictError, WaitNotPendingError, } from "./runtime/index.js";
|
|
149
149
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/agent/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AACH,OAAO,yBAAyB,CAAC;AAGjC,YAAY,EACV,KAAK,EACL,WAAW,EACX,YAAY,EACZ,eAAe,EACf,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,OAAO,IAAI,YAAY,EACvB,WAAW,EACX,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEnF,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,KAAK,MAAM,EACX,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,WAAW,EACX,KAAK,iBAAiB,EACtB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,EACX,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,GAClB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EACjC,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,+BAA+B,EACpC,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,8BAA8B,GACpC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,uBAAuB,EAC5B,sBAAsB,EACtB,KAAK,6BAA6B,EAClC,KAAK,gBAAgB,GACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,iCAAiC,EACtC,KAAK,yBAAyB,EAC9B,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,wBAAwB,GACzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,kCAAkC,EAClC,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,sBAAsB,EAC3B,gCAAgC,EAChC,6BAA6B,EAC7B,yBAAyB,EACzB,wCAAwC,GACzC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,KAAK,oCAAoC,GAC1C,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,KAAK,oCAAoC,GAC1C,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,KAAK,4BAA4B,EACjC,KAAK,iCAAiC,EACtC,kCAAkC,EAClC,KAAK,yCAAyC,GAC/C,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,KAAK,0BAA0B,EAC/B,gCAAgC,EAChC,KAAK,uCAAuC,GAC7C,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,KAAK,mCAAmC,GACzC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,+BAA+B,EAC/B,KAAK,oCAAoC,GAC1C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,gCAAgC,EAChC,KAAK,qCAAqC,GAC3C,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,6BAA6B,EAClC,KAAK,0BAA0B,EAC/B,uCAAuC,GACxC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,gCAAgC,EAChC,KAAK,qCAAqC,GAC3C,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,uBAAuB,EACvB,4BAA4B,EAC5B,0BAA0B,EAC1B,gCAAgC,EAChC,uBAAuB,EACvB,wCAAwC,EACxC,KAAK,QAAQ,EACb,KAAK,uBAAuB,EAC5B,KAAK,qCAAqC,EAC1C,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,mCAAmC,EACnC,uBAAuB,EACvB,oBAAoB,EACpB,6BAA6B,GAC9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,4BAA4B,EAC5B,KAAK,iCAAiC,EACtC,iCAAiC,EACjC,4BAA4B,EAC5B,KAAK,iCAAiC,EACtC,+BAA+B,EAC/B,KAAK,mCAAmC,EACxC,KAAK,kCAAkC,EACvC,KAAK,2BAA2B,EAChC,KAAK,+BAA+B,GACrC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,KAAK,sBAAsB,EAC3B,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,gCAAgC,EAChC,qCAAqC,EACrC,iCAAiC,EACjC,wBAAwB,GACzB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,4BAA4B,EACjC,mCAAmC,EACnC,KAAK,0CAA0C,GAChD,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,6BAA6B,EAC7B,KAAK,mCAAmC,EACxC,KAAK,yBAAyB,EAC9B,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,EAClC,gCAAgC,EAChC,KAAK,gCAAgC,GACtC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,wCAAwC,EAC7C,uCAAuC,EACvC,wCAAwC,EACxC,KAAK,+CAA+C,EACpD,8CAA8C,GAC/C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,oCAAoC,EACzC,uCAAuC,EACvC,KAAK,8CAA8C,EACnD,iCAAiC,GAClC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,qCAAqC,EACrC,6BAA6B,EAC7B,8BAA8B,GAC/B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EACL,KAAK,oBAAoB,EACzB,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,qCAAqC,GACtC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,iCAAiC,EACjC,oCAAoC,EACpC,kCAAkC,EAClC,4BAA4B,GAC7B,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,wCAAwC,EAC7C,KAAK,6BAA6B,EAClC,KAAK,iCAAiC,EACtC,2BAA2B,GAC5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,8BAA8B,EAC9B,gCAAgC,EAChC,4CAA4C,GAC7C,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,KAAK,mBAAmB,EACxB,kCAAkC,EAClC,KAAK,uBAAuB,EAC5B,6CAA6C,EAC7C,6CAA6C,EAC7C,oBAAoB,EACpB,uBAAuB,EACvB,2BAA2B,EAC3B,6BAA6B,GAC9B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,mCAAmC,EACxC,KAAK,sCAAsC,EAC3C,6BAA6B,EAC7B,kCAAkC,GACnC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,qCAAqC,EACrC,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACpC,KAAK,uCAAuC,EAC5C,KAAK,0CAA0C,EAC/C,KAAK,oCAAoC,EACzC,KAAK,qCAAqC,EAC1C,KAAK,6CAA6C,GACnD,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,iCAAiC,EACjC,iCAAiC,EACjC,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACnC,oCAAoC,EACpC,qCAAqC,EACrC,gCAAgC,GACjC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,+BAA+B,EAC/B,+BAA+B,EAC/B,KAAK,8BAA8B,EACnC,iCAAiC,EACjC,6CAA6C,GAC9C,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,iCAAiC,EACjC,KAAK,kCAAkC,EACvC,KAAK,gCAAgC,EACrC,KAAK,uCAAuC,EAC5C,KAAK,mCAAmC,EACxC,0CAA0C,EAC1C,sCAAsC,EACtC,gCAAgC,EAChC,2CAA2C,GAC5C,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,sCAAsC,EACtC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,GAClC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,0BAA0B,EAC1B,gCAAgC,EAChC,gCAAgC,EAChC,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,8BAA8B,EAC9B,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,oCAAoC,EACzC,KAAK,iCAAiC,EACtC,KAAK,iDAAiD,EACtD,KAAK,uCAAuC,EAC5C,KAAK,wCAAwC,EAC7C,KAAK,oDAAoD,EACzD,KAAK,sCAAsC,EAC3C,gCAAgC,GACjC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,2BAA2B,EAChC,iCAAiC,GAClC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,sBAAsB,EACtB,KAAK,6BAA6B,EAClC,sBAAsB,EACtB,KAAK,6BAA6B,EAClC,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACpC,KAAK,mBAAmB,GACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,KAAK,2BAA2B,EAChC,2BAA2B,EAC3B,gCAAgC,EAChC,KAAK,mCAAmC,EACxC,yCAAyC,EACzC,qCAAqC,EACrC,KAAK,yBAAyB,EAC9B,KAAK,uCAAuC,EAC5C,KAAK,qCAAqC,EAC1C,KAAK,mCAAmC,EACxC,KAAK,oCAAoC,EACzC,KAAK,gCAAgC,EACrC,KAAK,mCAAmC,EACxC,KAAK,yBAAyB,EAC9B,+BAA+B,EAC/B,KAAK,gCAAgC,EACrC,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,iCAAiC,EACjC,0BAA0B,EAC1B,yCAAyC,EACzC,4BAA4B,EAC5B,gCAAgC,EAChC,8BAA8B,EAC9B,kBAAkB,EAClB,6BAA6B,EAC7B,qCAAqC,EACrC,0CAA0C,EAC1C,qCAAqC,EACrC,4BAA4B,EAC5B,yCAAyC,EACzC,qCAAqC,EACrC,mCAAmC,EACnC,oCAAoC,EACpC,6BAA6B,EAC7B,iCAAiC,EACjC,KAAK,6BAA6B,GACnC,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,4CAA4C,EAC5C,sCAAsC,EACtC,kCAAkC,EAClC,KAAK,uCAAuC,EAC5C,6CAA6C,EAC7C,KAAK,iCAAiC,EACtC,uCAAuC,EACvC,KAAK,gCAAgC,EACrC,KAAK,gCAAgC,EACrC,KAAK,6BAA6B,EAClC,mCAAmC,EACnC,kCAAkC,GACnC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,EAClC,KAAK,iCAAiC,EACtC,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,2BAA2B,EAC3B,8BAA8B,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,KAAK,yBAAyB,EAC9B,6BAA6B,EAC7B,KAAK,yBAAyB,EAC9B,2BAA2B,EAC3B,mCAAmC,GACpC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,4BAA4B,EACjC,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,kCAAkC,EACvC,KAAK,0BAA0B,EAC/B,oCAAoC,GACrC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,kCAAkC,GACnC,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,mCAAmC,EACnC,KAAK,wCAAwC,EAC7C,yBAAyB,EACzB,0BAA0B,EAC1B,4BAA4B,EAC5B,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,2BAA2B,EAChC,iCAAiC,GAClC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,KAAK,kCAAkC,GACxC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,KAAK,yBAAyB,EAC9B,+BAA+B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,KAAK,6BAA6B,GACnC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,wBAAwB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,GAC/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,YAAY,EACjB,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,uBAAuB,EACvB,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,4BAA4B,EAC5B,iBAAiB,EACjB,KAAK,wBAAwB,GAC9B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,EACnC,KAAK,6BAA6B,EAClC,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,8BAA8B,EACnC,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/agent/index.ts"],"names":[],"mappings":"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"}
|
package/esm/src/agent/index.js
CHANGED
|
@@ -127,7 +127,7 @@ export { createConversationRunStreamMirror, } from "./conversation-run-stream-mi
|
|
|
127
127
|
export { finalizeHostedDetached, finalizeHostedResponse, } from "./hosted-stream-finalization.js";
|
|
128
128
|
export { appendConversationRunEvents, AppendConversationRunEventsError, AppendConversationRunEventsResponseSchema, CompleteConversationRunResponseSchema, ConversationRunProjectionSchema, ConversationRunStatusSchema, ConversationRunTargetsSchema, ConversationRunTerminalStateError, createConversationAgentRun, createConversationRunEventQueueController, finalizeConversationAgentRun, flushConversationRunEventBatches, flushConversationRunEventQueue, getConversationRun, isActiveConversationRunStatus, isAppendableConversationRunProjection, isCursorMismatchConversationRunAppendError, isIgnorableConversationRunAppendError, monitorConversationRunStatus, parseAppendConversationRunEventsErrorBody, recoverConversationRunAppendExecution, recoverConversationRunAppendFailure, recoverConversationRunCursorMismatch, resolveConversationRunTargets, resyncConversationRunAppendCursor, } from "./durable.js";
|
|
129
129
|
export { buildInvokeAgentChildRunLifecycleCustomEvent, buildInvokeAgentChildRunProgressEvents, buildInvokeAgentChildRunStateDelta, InvokeAgentChildRunLifecycleCustomEventSchema, InvokeAgentChildRunLifecycleValueSchema, InvokeAgentChildRunStateDeltaSchema, publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
|
|
130
|
-
export { runHostedChildLifecycle, } from "./hosted-child-lifecycle.js";
|
|
130
|
+
export { runHostedChildExecutionLifecycle, runHostedChildLifecycle, } from "./hosted-child-lifecycle.js";
|
|
131
131
|
export { appendHostedChildMirrorChunk, closeHostedChildReasoningSegment, closeHostedChildTextSegment, createHostedChildMirrorContext, isAlreadyMirroredHostedChunk, toMirroredHostedStreamPart, } from "./hosted-child-mirror.js";
|
|
132
132
|
export { HostedChildTerminalStateError, monitorHostedChildRunStatus, resolveHostedChildTerminalErrorCode, } from "./hosted-child-status.js";
|
|
133
133
|
export { runHostedLifecycle, } from "./hosted-lifecycle.js";
|
|
@@ -141,6 +141,6 @@ export { createDetachedRunTracker, } from "./detached-run-tracker.js";
|
|
|
141
141
|
export { AgUiResumeSignalSchema, createAgUiCancelHandler, createAgUiResumeHandler, } from "./ag-ui-run-control.js";
|
|
142
142
|
export { createAgUiRunErrorEvent, createAgUiSseErrorResponse, createAgUiSseResponse, normalizeAgUiMessages, parseAgUiRequest, parseAgUiRequestOrError, } from "./ag-ui-host-support.js";
|
|
143
143
|
export { AgUiRequestSchema, createAgUiHandler, } from "./ag-ui-handler.js";
|
|
144
|
-
export { HumanInputFieldSchema, HumanInputOptionSchema, HumanInputPendingRequestSchema, HumanInputRequestSchema, HumanInputResultSchema, HumanInputResumeError, InvalidHumanInputResultError, waitForHumanInput, } from "./human-input.js";
|
|
144
|
+
export { executeDurableHumanInputFlow, HumanInputFieldSchema, HumanInputOptionSchema, HumanInputPendingRequestSchema, HumanInputRequestSchema, HumanInputResultSchema, HumanInputResumeError, InvalidHumanInputResultError, waitForDurableHumanInputResolution, waitForHumanInput, } from "./human-input.js";
|
|
145
145
|
export { createChatHandler, } from "./chat-handler.js";
|
|
146
146
|
export { AgentRuntime, RunAlreadyExistsError, RunCancelledError, RunNotActiveError, RunResumeSessionManager, WaitConflictError, WaitNotPendingError, } from "./runtime/index.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.1.
|
|
1
|
+
export declare const VERSION = "0.1.336";
|
|
2
2
|
//# sourceMappingURL=version-constant.d.ts.map
|
package/package.json
CHANGED
package/src/deno.js
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildChildRunExecutionSnapshot,
|
|
3
|
+
type ChildRunExecutionResult,
|
|
4
|
+
type ChildRunExecutionSnapshot,
|
|
5
|
+
getChildRunSnapshotUsage,
|
|
6
|
+
} from "./child-run-execution-snapshot.js";
|
|
7
|
+
import { isChildRunAbortError } from "./child-run-execution-support.js";
|
|
8
|
+
import {
|
|
9
|
+
HostedChildTerminalStateError,
|
|
10
|
+
resolveHostedChildTerminalErrorCode,
|
|
11
|
+
} from "./hosted-child-status.js";
|
|
12
|
+
|
|
1
13
|
export interface HostedChildLifecycleTerminalState {
|
|
2
14
|
status: "completed" | "failed" | "cancelled";
|
|
3
15
|
usage?: {
|
|
@@ -61,6 +73,47 @@ export type HostedChildLifecycleRunResult<TResult> =
|
|
|
61
73
|
terminalState: HostedChildLifecycleTerminalState;
|
|
62
74
|
};
|
|
63
75
|
|
|
76
|
+
export type HostedChildExecutionLifecycleResult<
|
|
77
|
+
TLocalResult extends ChildRunExecutionResult,
|
|
78
|
+
> =
|
|
79
|
+
| {
|
|
80
|
+
status: "completed";
|
|
81
|
+
result: TLocalResult;
|
|
82
|
+
snapshot: ChildRunExecutionSnapshot;
|
|
83
|
+
terminalState: HostedChildLifecycleTerminalState;
|
|
84
|
+
}
|
|
85
|
+
| {
|
|
86
|
+
status: "failed" | "cancelled";
|
|
87
|
+
error: unknown;
|
|
88
|
+
terminalState: HostedChildLifecycleTerminalState;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
export interface HostedChildExecutionLifecycleOptions<
|
|
92
|
+
TLocalResult extends ChildRunExecutionResult,
|
|
93
|
+
> {
|
|
94
|
+
adapter: HostedChildLifecycleAdapter;
|
|
95
|
+
executionFailedCode: string;
|
|
96
|
+
abortSignal?: AbortSignal | undefined;
|
|
97
|
+
execute: () => Promise<TLocalResult> | TLocalResult;
|
|
98
|
+
getExecutionSnapshot: () => ChildRunExecutionSnapshot | null;
|
|
99
|
+
onLifecycleError?: (error: unknown) => Promise<void> | void;
|
|
100
|
+
skipTerminalPersistence?: (terminalState: HostedChildLifecycleTerminalState) => boolean;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
class HostedChildExecutionFailure extends Error {
|
|
104
|
+
constructor(
|
|
105
|
+
message: string,
|
|
106
|
+
readonly usage?: {
|
|
107
|
+
inputTokens: number;
|
|
108
|
+
outputTokens: number;
|
|
109
|
+
totalTokens: number;
|
|
110
|
+
},
|
|
111
|
+
) {
|
|
112
|
+
super(message);
|
|
113
|
+
this.name = "HostedChildExecutionFailure";
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
64
117
|
async function dispatchTerminalState(
|
|
65
118
|
adapter: HostedChildLifecycleAdapter,
|
|
66
119
|
terminalState: HostedChildLifecycleTerminalState,
|
|
@@ -119,3 +172,174 @@ export async function runHostedChildLifecycle<TResult>(
|
|
|
119
172
|
terminalState,
|
|
120
173
|
};
|
|
121
174
|
}
|
|
175
|
+
|
|
176
|
+
function toHostedChildLifecycleUsage(
|
|
177
|
+
usage: ChildRunExecutionSnapshot["usage"] | undefined,
|
|
178
|
+
): HostedChildLifecycleTerminalState["usage"] {
|
|
179
|
+
if (!usage) {
|
|
180
|
+
return undefined;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
return {
|
|
184
|
+
inputTokens: usage.inputTokens,
|
|
185
|
+
outputTokens: usage.outputTokens,
|
|
186
|
+
totalTokens: usage.totalTokens,
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
function wrapSkippableTerminalPersistence(
|
|
191
|
+
adapter: HostedChildLifecycleAdapter,
|
|
192
|
+
skipTerminalPersistence: HostedChildExecutionLifecycleOptions<
|
|
193
|
+
ChildRunExecutionResult
|
|
194
|
+
>["skipTerminalPersistence"],
|
|
195
|
+
): HostedChildLifecycleAdapter {
|
|
196
|
+
if (!skipTerminalPersistence) {
|
|
197
|
+
return adapter;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
return {
|
|
201
|
+
...adapter,
|
|
202
|
+
failed: async (terminalState) => {
|
|
203
|
+
if (skipTerminalPersistence(terminalState)) {
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
await adapter.failed?.(terminalState);
|
|
208
|
+
},
|
|
209
|
+
cancelled: async (terminalState) => {
|
|
210
|
+
if (skipTerminalPersistence(terminalState)) {
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
await adapter.cancelled?.(terminalState);
|
|
215
|
+
},
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
function resolveHostedChildExecutionErrorState(
|
|
220
|
+
error: unknown,
|
|
221
|
+
input: {
|
|
222
|
+
executionFailedCode: string;
|
|
223
|
+
abortSignal?: AbortSignal | undefined;
|
|
224
|
+
getExecutionSnapshot: () => ChildRunExecutionSnapshot | null;
|
|
225
|
+
},
|
|
226
|
+
): HostedChildLifecycleErrorState {
|
|
227
|
+
if (error instanceof HostedChildTerminalStateError) {
|
|
228
|
+
if (error.status === "completed") {
|
|
229
|
+
throw error;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
return {
|
|
233
|
+
status: error.status,
|
|
234
|
+
terminalErrorCode: resolveHostedChildTerminalErrorCode(error.status),
|
|
235
|
+
terminalErrorMessage: error.message,
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
if (error instanceof HostedChildExecutionFailure) {
|
|
240
|
+
return {
|
|
241
|
+
status: "failed",
|
|
242
|
+
terminalErrorCode: input.executionFailedCode,
|
|
243
|
+
terminalErrorMessage: error.message,
|
|
244
|
+
usage: toHostedChildLifecycleUsage(error.usage),
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
if (isChildRunAbortError(error) || input.abortSignal?.aborted) {
|
|
249
|
+
return {
|
|
250
|
+
status: "cancelled",
|
|
251
|
+
terminalErrorCode: "CANCELLED",
|
|
252
|
+
terminalErrorMessage: "Child run cancelled",
|
|
253
|
+
usage: toHostedChildLifecycleUsage(getChildRunSnapshotUsage(input.getExecutionSnapshot())),
|
|
254
|
+
};
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
return {
|
|
258
|
+
status: "failed",
|
|
259
|
+
terminalErrorCode: input.executionFailedCode,
|
|
260
|
+
terminalErrorMessage: error instanceof Error ? error.message : String(error),
|
|
261
|
+
usage: toHostedChildLifecycleUsage(getChildRunSnapshotUsage(input.getExecutionSnapshot())),
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
export async function runHostedChildExecutionLifecycle<
|
|
266
|
+
TLocalResult extends ChildRunExecutionResult,
|
|
267
|
+
>(
|
|
268
|
+
options: HostedChildExecutionLifecycleOptions<TLocalResult>,
|
|
269
|
+
): Promise<HostedChildExecutionLifecycleResult<TLocalResult>> {
|
|
270
|
+
const adapter = wrapSkippableTerminalPersistence(
|
|
271
|
+
options.adapter,
|
|
272
|
+
options.skipTerminalPersistence,
|
|
273
|
+
);
|
|
274
|
+
|
|
275
|
+
try {
|
|
276
|
+
const lifecycleResult = await runHostedChildLifecycle({
|
|
277
|
+
adapter,
|
|
278
|
+
execute: async () => {
|
|
279
|
+
const result = await options.execute();
|
|
280
|
+
const snapshot = options.getExecutionSnapshot() ?? buildChildRunExecutionSnapshot(result);
|
|
281
|
+
|
|
282
|
+
if (!snapshot.success) {
|
|
283
|
+
throw new HostedChildExecutionFailure(snapshot.error ?? "Unknown error", snapshot.usage);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
return {
|
|
287
|
+
result,
|
|
288
|
+
snapshot,
|
|
289
|
+
};
|
|
290
|
+
},
|
|
291
|
+
resolveCompletedState: ({ snapshot }) => ({
|
|
292
|
+
status: "completed",
|
|
293
|
+
usage: toHostedChildLifecycleUsage(snapshot.usage),
|
|
294
|
+
}),
|
|
295
|
+
resolveErrorState: (error) =>
|
|
296
|
+
resolveHostedChildExecutionErrorState(error, {
|
|
297
|
+
executionFailedCode: options.executionFailedCode,
|
|
298
|
+
abortSignal: options.abortSignal,
|
|
299
|
+
getExecutionSnapshot: options.getExecutionSnapshot,
|
|
300
|
+
}),
|
|
301
|
+
onLifecycleError: options.onLifecycleError,
|
|
302
|
+
});
|
|
303
|
+
|
|
304
|
+
if (lifecycleResult.status !== "completed") {
|
|
305
|
+
return lifecycleResult;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
return {
|
|
309
|
+
status: "completed",
|
|
310
|
+
result: lifecycleResult.result.result,
|
|
311
|
+
snapshot: lifecycleResult.result.snapshot,
|
|
312
|
+
terminalState: lifecycleResult.terminalState,
|
|
313
|
+
};
|
|
314
|
+
} catch (error) {
|
|
315
|
+
if (error instanceof HostedChildTerminalStateError) {
|
|
316
|
+
return {
|
|
317
|
+
status: error.status === "cancelled" ? "cancelled" : "failed",
|
|
318
|
+
error,
|
|
319
|
+
terminalState: {
|
|
320
|
+
status: error.status,
|
|
321
|
+
terminalErrorCode: resolveHostedChildTerminalErrorCode(error.status),
|
|
322
|
+
terminalErrorMessage: error.message,
|
|
323
|
+
},
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
const terminalState = resolveHostedChildExecutionErrorState(error, {
|
|
328
|
+
executionFailedCode: options.executionFailedCode,
|
|
329
|
+
abortSignal: options.abortSignal,
|
|
330
|
+
getExecutionSnapshot: options.getExecutionSnapshot,
|
|
331
|
+
});
|
|
332
|
+
|
|
333
|
+
try {
|
|
334
|
+
await dispatchTerminalState(adapter, terminalState);
|
|
335
|
+
} catch (lifecycleError) {
|
|
336
|
+
await options.onLifecycleError?.(lifecycleError);
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
return {
|
|
340
|
+
status: terminalState.status,
|
|
341
|
+
error,
|
|
342
|
+
terminalState,
|
|
343
|
+
};
|
|
344
|
+
}
|
|
345
|
+
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as dntShim from "../../_dnt.shims.js";
|
|
1
2
|
import { z } from "zod";
|
|
2
3
|
import { AgUiRuntimeRunIdSchema } from "./runtime-ag-ui-contract.js";
|
|
3
4
|
import { RunResumeSessionManager } from "./runtime/index.js";
|
|
@@ -98,11 +99,42 @@ export type HumanInputRequestInput = z.input<typeof HumanInputRequestSchema>;
|
|
|
98
99
|
export type HumanInputResult = z.infer<typeof HumanInputResultSchema>;
|
|
99
100
|
export type HumanInputPendingRequest = z.infer<typeof HumanInputPendingRequestSchema>;
|
|
100
101
|
|
|
101
|
-
type HumanInputResumeValue = {
|
|
102
|
+
export type HumanInputResumeValue = {
|
|
102
103
|
result: unknown;
|
|
103
104
|
isError: boolean;
|
|
104
105
|
};
|
|
105
106
|
|
|
107
|
+
export type DurableHumanInputFlowResult<TCreatedRequest> = {
|
|
108
|
+
result: HumanInputResult;
|
|
109
|
+
createdRequest: TCreatedRequest;
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
export interface ExecuteDurableHumanInputFlowOptions<
|
|
113
|
+
TCreatedRequest,
|
|
114
|
+
TSnapshot,
|
|
115
|
+
> {
|
|
116
|
+
sessionManager?: RunResumeSessionManager<HumanInputResumeValue> | undefined;
|
|
117
|
+
runId: string;
|
|
118
|
+
threadId: string;
|
|
119
|
+
toolCallId: string;
|
|
120
|
+
request: HumanInputRequestInput;
|
|
121
|
+
timeoutMs: number;
|
|
122
|
+
pollIntervalMs: number;
|
|
123
|
+
onRequest: (
|
|
124
|
+
request: HumanInputPendingRequest,
|
|
125
|
+
) => TCreatedRequest | Promise<TCreatedRequest>;
|
|
126
|
+
onCreatedRequest?: ((request: TCreatedRequest) => void | Promise<void>) | undefined;
|
|
127
|
+
getSnapshot: (request: TCreatedRequest) => TSnapshot | Promise<TSnapshot>;
|
|
128
|
+
resolveSnapshot: (snapshot: TSnapshot) => HumanInputResult | undefined;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
export interface WaitForDurableHumanInputResolutionOptions<TSnapshot> {
|
|
132
|
+
deadline: number;
|
|
133
|
+
pollIntervalMs: number;
|
|
134
|
+
getSnapshot: () => TSnapshot | Promise<TSnapshot>;
|
|
135
|
+
resolveSnapshot: (snapshot: TSnapshot) => HumanInputResult | undefined;
|
|
136
|
+
}
|
|
137
|
+
|
|
106
138
|
export interface WaitForHumanInputOptions {
|
|
107
139
|
sessionManager: RunResumeSessionManager<HumanInputResumeValue>;
|
|
108
140
|
runId: string;
|
|
@@ -127,6 +159,64 @@ export class InvalidHumanInputResultError extends Error {
|
|
|
127
159
|
}
|
|
128
160
|
}
|
|
129
161
|
|
|
162
|
+
export async function executeDurableHumanInputFlow<
|
|
163
|
+
TCreatedRequest,
|
|
164
|
+
TSnapshot,
|
|
165
|
+
>(
|
|
166
|
+
options: ExecuteDurableHumanInputFlowOptions<TCreatedRequest, TSnapshot>,
|
|
167
|
+
): Promise<DurableHumanInputFlowResult<TCreatedRequest>> {
|
|
168
|
+
const sessionManager = options.sessionManager ??
|
|
169
|
+
new RunResumeSessionManager<HumanInputResumeValue>();
|
|
170
|
+
sessionManager.startRun({
|
|
171
|
+
runId: options.runId,
|
|
172
|
+
threadId: options.threadId,
|
|
173
|
+
});
|
|
174
|
+
|
|
175
|
+
let resolveCreatedRequest: ((request: TCreatedRequest) => void) | null = null;
|
|
176
|
+
const createdRequestPromise = new Promise<TCreatedRequest>((resolve) => {
|
|
177
|
+
resolveCreatedRequest = resolve;
|
|
178
|
+
});
|
|
179
|
+
|
|
180
|
+
try {
|
|
181
|
+
const result = await waitForHumanInput({
|
|
182
|
+
sessionManager,
|
|
183
|
+
runId: options.runId,
|
|
184
|
+
toolCallId: options.toolCallId,
|
|
185
|
+
request: options.request,
|
|
186
|
+
onRequest: async (pendingRequest) => {
|
|
187
|
+
const currentRequest = await options.onRequest(pendingRequest);
|
|
188
|
+
if (!resolveCreatedRequest) {
|
|
189
|
+
throw new Error("Durable human input flow could not track the created request");
|
|
190
|
+
}
|
|
191
|
+
resolveCreatedRequest(currentRequest);
|
|
192
|
+
await options.onCreatedRequest?.(currentRequest);
|
|
193
|
+
|
|
194
|
+
void bridgeDurableHumanInputRequest({
|
|
195
|
+
sessionManager,
|
|
196
|
+
runId: options.runId,
|
|
197
|
+
toolCallId: options.toolCallId,
|
|
198
|
+
createdRequest: currentRequest,
|
|
199
|
+
timeoutMs: options.timeoutMs,
|
|
200
|
+
pollIntervalMs: options.pollIntervalMs,
|
|
201
|
+
getSnapshot: options.getSnapshot,
|
|
202
|
+
resolveSnapshot: options.resolveSnapshot,
|
|
203
|
+
});
|
|
204
|
+
},
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
const createdRequest = await createdRequestPromise;
|
|
208
|
+
|
|
209
|
+
sessionManager.completeRun(options.runId);
|
|
210
|
+
return {
|
|
211
|
+
result,
|
|
212
|
+
createdRequest,
|
|
213
|
+
};
|
|
214
|
+
} catch (error) {
|
|
215
|
+
sessionManager.failRun(options.runId);
|
|
216
|
+
throw error;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
130
220
|
export async function waitForHumanInput(
|
|
131
221
|
options: WaitForHumanInputOptions,
|
|
132
222
|
): Promise<HumanInputResult> {
|
|
@@ -151,3 +241,76 @@ export async function waitForHumanInput(
|
|
|
151
241
|
|
|
152
242
|
return parsed.data;
|
|
153
243
|
}
|
|
244
|
+
|
|
245
|
+
export async function waitForDurableHumanInputResolution<TSnapshot>(
|
|
246
|
+
options: WaitForDurableHumanInputResolutionOptions<TSnapshot>,
|
|
247
|
+
): Promise<HumanInputResult> {
|
|
248
|
+
while (Date.now() < options.deadline) {
|
|
249
|
+
const snapshot = await options.getSnapshot();
|
|
250
|
+
const result = options.resolveSnapshot(snapshot);
|
|
251
|
+
|
|
252
|
+
if (result) {
|
|
253
|
+
return result;
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
await delay(options.pollIntervalMs);
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
throw new Error("Timed out while waiting for durable human input resolution");
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
async function bridgeDurableHumanInputRequest<
|
|
263
|
+
TCreatedRequest,
|
|
264
|
+
TSnapshot,
|
|
265
|
+
>(input: {
|
|
266
|
+
sessionManager: RunResumeSessionManager<HumanInputResumeValue>;
|
|
267
|
+
runId: string;
|
|
268
|
+
toolCallId: string;
|
|
269
|
+
createdRequest: TCreatedRequest;
|
|
270
|
+
timeoutMs: number;
|
|
271
|
+
pollIntervalMs: number;
|
|
272
|
+
getSnapshot: (request: TCreatedRequest) => TSnapshot | Promise<TSnapshot>;
|
|
273
|
+
resolveSnapshot: (snapshot: TSnapshot) => HumanInputResult | undefined;
|
|
274
|
+
}): Promise<void> {
|
|
275
|
+
try {
|
|
276
|
+
const resolved = await waitForDurableHumanInputResolution({
|
|
277
|
+
deadline: Date.now() + input.timeoutMs,
|
|
278
|
+
pollIntervalMs: input.pollIntervalMs,
|
|
279
|
+
getSnapshot: () => input.getSnapshot(input.createdRequest),
|
|
280
|
+
resolveSnapshot: input.resolveSnapshot,
|
|
281
|
+
});
|
|
282
|
+
|
|
283
|
+
submitHumanInputResumeValue(input.sessionManager, input.runId, input.toolCallId, {
|
|
284
|
+
result: resolved,
|
|
285
|
+
isError: false,
|
|
286
|
+
});
|
|
287
|
+
} catch (error) {
|
|
288
|
+
submitHumanInputResumeValue(input.sessionManager, input.runId, input.toolCallId, {
|
|
289
|
+
result: error instanceof Error ? error.message : String(error),
|
|
290
|
+
isError: true,
|
|
291
|
+
});
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
function submitHumanInputResumeValue(
|
|
296
|
+
sessionManager: RunResumeSessionManager<HumanInputResumeValue>,
|
|
297
|
+
runId: string,
|
|
298
|
+
toolCallId: string,
|
|
299
|
+
value: HumanInputResumeValue,
|
|
300
|
+
) {
|
|
301
|
+
try {
|
|
302
|
+
sessionManager.submitSignal(runId, {
|
|
303
|
+
waitKey: toolCallId,
|
|
304
|
+
value,
|
|
305
|
+
});
|
|
306
|
+
} catch {
|
|
307
|
+
// Ignore late resume submissions once the local wait has already completed
|
|
308
|
+
// or the ephemeral session has been finalized.
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
function delay(ms: number): Promise<void> {
|
|
313
|
+
return new Promise((resolve) => {
|
|
314
|
+
dntShim.setTimeout(resolve, ms);
|
|
315
|
+
});
|
|
316
|
+
}
|
package/src/src/agent/index.ts
CHANGED
|
@@ -527,10 +527,13 @@ export {
|
|
|
527
527
|
publishInvokeAgentChildRunProgress,
|
|
528
528
|
} from "./invoke-agent-child-runs.js";
|
|
529
529
|
export {
|
|
530
|
+
type HostedChildExecutionLifecycleOptions,
|
|
531
|
+
type HostedChildExecutionLifecycleResult,
|
|
530
532
|
type HostedChildLifecycleAdapter,
|
|
531
533
|
type HostedChildLifecycleRunnerOptions,
|
|
532
534
|
type HostedChildLifecycleRunResult,
|
|
533
535
|
type HostedChildLifecycleTerminalState,
|
|
536
|
+
runHostedChildExecutionLifecycle,
|
|
534
537
|
runHostedChildLifecycle,
|
|
535
538
|
} from "./hosted-child-lifecycle.js";
|
|
536
539
|
export {
|
|
@@ -644,6 +647,9 @@ export {
|
|
|
644
647
|
createAgUiHandler,
|
|
645
648
|
} from "./ag-ui-handler.js";
|
|
646
649
|
export {
|
|
650
|
+
type DurableHumanInputFlowResult,
|
|
651
|
+
executeDurableHumanInputFlow,
|
|
652
|
+
type ExecuteDurableHumanInputFlowOptions,
|
|
647
653
|
type HumanInputField,
|
|
648
654
|
type HumanInputFieldInput,
|
|
649
655
|
HumanInputFieldSchema,
|
|
@@ -657,7 +663,10 @@ export {
|
|
|
657
663
|
type HumanInputResult,
|
|
658
664
|
HumanInputResultSchema,
|
|
659
665
|
HumanInputResumeError,
|
|
666
|
+
type HumanInputResumeValue,
|
|
660
667
|
InvalidHumanInputResultError,
|
|
668
|
+
waitForDurableHumanInputResolution,
|
|
669
|
+
type WaitForDurableHumanInputResolutionOptions,
|
|
661
670
|
waitForHumanInput,
|
|
662
671
|
type WaitForHumanInputOptions,
|
|
663
672
|
} from "./human-input.js";
|