veryfront 0.1.419 → 0.1.420

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.419",
3
+ "version": "0.1.420",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "workspace": [
@@ -0,0 +1,81 @@
1
+ import type { ChatUiMessage, ChatUiMessageChunk, MessageMetadata } from "../chat/types.js";
2
+ import type { HostedChatRuntimeStreamResult } from "./hosted-chat-runtime-contract.js";
3
+ import type { HostedLifecycleTerminalState } from "./hosted-lifecycle.js";
4
+ import { type ConversationHostedTerminalRuntimeAdapter, type ConversationHostedTerminalStateInput } from "./conversation-hosted-terminal.js";
5
+ import { type MirroredToolChunkState } from "./mirrored-tool-chunk-state.js";
6
+ import { type FinalizeHostedResponseOptions, type HostedDetachedFinalizationState, type HostedResponseFinalizationState } from "./hosted-stream-finalization.js";
7
+ import type { ConversationRunChunkMirror } from "./conversation-run-chunk-mirror.js";
8
+ import type { createChatStreamWatchdog } from "../chat/stream-watchdog.js";
9
+ export interface HostedChatExecutionRuntime {
10
+ agentUIStream: AsyncIterable<ChatUiMessageChunk<MessageMetadata>>;
11
+ fail: (error: unknown) => Promise<void>;
12
+ waitForFinish: () => Promise<void>;
13
+ }
14
+ export interface HostedChatExecutionRuntimeLogger {
15
+ error: (message: string, metadata?: Record<string, unknown>) => void;
16
+ warn: (message: string, metadata?: Record<string, unknown>) => void;
17
+ }
18
+ export interface HostedChatExecutionRunContext {
19
+ withContext: <T>(fn: () => T) => T;
20
+ setMessageId?: (messageId: string) => void;
21
+ }
22
+ export interface HostedChatExecutionLifecycleAdapter extends ConversationHostedTerminalRuntimeAdapter {
23
+ durableRootRun: {
24
+ runId: string;
25
+ messageId?: string | null;
26
+ } | null;
27
+ durableRunMirror: ConversationRunChunkMirror | null;
28
+ }
29
+ export type HostedChatExecutionRootStreamWatchdog = ReturnType<typeof createChatStreamWatchdog>;
30
+ export interface HostedChatExecutionRuntimeBootstrap {
31
+ cleanup: () => Promise<void>;
32
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
33
+ rootStreamWatchdog: HostedChatExecutionRootStreamWatchdog;
34
+ streamResult: HostedChatRuntimeStreamResult;
35
+ streamingMessageId: string | null;
36
+ capturedMessageId: string | null;
37
+ capturedConversationId?: string;
38
+ mirroredToolChunkState: MirroredToolChunkState;
39
+ }
40
+ export interface CreateHostedChatExecutionRuntimeInput {
41
+ agentId: string;
42
+ modelId: string;
43
+ originalMessages: ChatUiMessage[];
44
+ responseMessageId?: string;
45
+ runContext: HostedChatExecutionRunContext;
46
+ abortSignal: AbortSignal;
47
+ bootstrap: HostedChatExecutionRuntimeBootstrap;
48
+ logger?: HostedChatExecutionRuntimeLogger;
49
+ incompleteToolCallsPartErrorText?: string;
50
+ }
51
+ type SharedFinalizationHooks = Pick<FinalizeHostedResponseOptions<ChatUiMessage, ChatUiMessageChunk<MessageMetadata>>, "resolveEmptyTerminalError" | "appendFallbackChunk" | "flushMirror" | "dispatchTerminalState" | "resolveTerminalState" | "cleanup" | "streamError">;
52
+ export declare function toHostedChatExecutionFinalState(input: ConversationHostedTerminalStateInput): HostedLifecycleTerminalState;
53
+ export declare function cleanupAfterHostedChatExecutionFinalization(input: {
54
+ cleanup: () => Promise<void>;
55
+ logger?: HostedChatExecutionRuntimeLogger;
56
+ }): Promise<void>;
57
+ export declare function createHostedChatStreamFinalizationHooks(input: {
58
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
59
+ cleanup: () => Promise<void>;
60
+ streamError: unknown;
61
+ logger?: HostedChatExecutionRuntimeLogger;
62
+ }): SharedFinalizationHooks;
63
+ export declare function createHostedChatFinalizeResponseBuildState(input: {
64
+ responseMessage: ChatUiMessage;
65
+ isAborted: boolean;
66
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
67
+ mirroredToolChunkState: MirroredToolChunkState;
68
+ capturedMessageId: string | null;
69
+ incompleteToolCallsPartErrorText: string;
70
+ }): (finalStep: unknown) => Promise<HostedResponseFinalizationState<ChatUiMessage, ChatUiMessageChunk<MessageMetadata>>>;
71
+ export declare function createHostedChatFinalizeDetachedBuildState(input: {
72
+ capturedMessageId: string | null;
73
+ isAborted: boolean;
74
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
75
+ mirroredToolChunkState: MirroredToolChunkState;
76
+ mirroredDurableOutput: boolean;
77
+ incompleteToolCallsPartErrorText: string;
78
+ }): (finalStep: unknown) => Promise<HostedDetachedFinalizationState<ChatUiMessageChunk<MessageMetadata>>>;
79
+ export declare function createHostedChatExecutionRuntime(input: CreateHostedChatExecutionRuntimeInput): HostedChatExecutionRuntime;
80
+ export {};
81
+ //# sourceMappingURL=hosted-chat-execution-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hosted-chat-execution-runtime.d.ts","sourceRoot":"","sources":["../../../src/src/agent/hosted-chat-execution-runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,284 @@
1
+ import { buildChatStreamChunkMessageMetadata, extractChatMessageMetadata, } from "../chat/chat-ui-message-helpers.js";
2
+ import { getLastStreamStep } from "../chat/final-step-fallback.js";
3
+ import { buildDetachedFallbackChunks, buildDetachedFallbackMessageState, buildFinalizedMessageFallbackChunks, buildFinalizedMessageState, } from "./hosted-finalized-message.js";
4
+ import { dispatchConversationHostedStreamErrorState, dispatchConversationHostedTerminalState, resolveConversationHostedTerminalState, toConversationHostedTerminalState, } from "./conversation-hosted-terminal.js";
5
+ import { createHostedMirroredUiStream, } from "./mirrored-tool-chunk-state.js";
6
+ import { finalizeHostedDetached, finalizeHostedResponse, } from "./hosted-stream-finalization.js";
7
+ import { getEmptyHostedFinalizedMessageTerminalError, getHostedStreamErrorText, shouldFailEmptyHostedFinalizedMessage, } from "./hosted-stream-terminal-error.js";
8
+ const INCOMPLETE_TOOL_CALLS_PART_ERROR_TEXT = "Assistant ended before tool execution completed";
9
+ const FINALIZATION_TERMINAL_STATE_FALLBACK_MODEL_ID = "";
10
+ export function toHostedChatExecutionFinalState(input) {
11
+ return toConversationHostedTerminalState({
12
+ state: input,
13
+ fallbackModelId: FINALIZATION_TERMINAL_STATE_FALLBACK_MODEL_ID,
14
+ });
15
+ }
16
+ export async function cleanupAfterHostedChatExecutionFinalization(input) {
17
+ await input.cleanup().catch((cleanupError) => {
18
+ input.logger?.error("Runtime cleanup failed during finalization", {
19
+ error: cleanupError instanceof Error ? cleanupError.message : String(cleanupError),
20
+ });
21
+ });
22
+ }
23
+ export function createHostedChatStreamFinalizationHooks(input) {
24
+ return {
25
+ resolveEmptyTerminalError: ({ finalStep, streamError }) => getEmptyHostedFinalizedMessageTerminalError({ finalStep, streamError }),
26
+ appendFallbackChunk: (chunk) => input.lifecycleAdapter.durableRunMirror?.handleChunk(chunk),
27
+ flushMirror: () => input.lifecycleAdapter.durableRunMirror?.flush(),
28
+ dispatchTerminalState: async (terminalState) => {
29
+ await dispatchConversationHostedTerminalState(input.lifecycleAdapter, terminalState);
30
+ },
31
+ resolveTerminalState: ({ isAborted, hasIncompleteToolParts }) => toHostedChatExecutionFinalState(resolveConversationHostedTerminalState({ isAborted, hasIncompleteToolParts })),
32
+ cleanup: () => cleanupAfterHostedChatExecutionFinalization({
33
+ cleanup: input.cleanup,
34
+ logger: input.logger,
35
+ }),
36
+ streamError: input.streamError,
37
+ };
38
+ }
39
+ export function createHostedChatFinalizeResponseBuildState(input) {
40
+ return async (finalStep) => {
41
+ const { persistedMessage, sanitizedFinalizedMessage, hasIncompleteFinalizedToolParts } = buildFinalizedMessageState({
42
+ responseMessage: input.responseMessage,
43
+ isAborted: input.isAborted,
44
+ finalStep,
45
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
46
+ });
47
+ return {
48
+ persistedMessage,
49
+ finalizedMessage: sanitizedFinalizedMessage,
50
+ fallbackChunks: sanitizedFinalizedMessage.parts.length > 0 && input.lifecycleAdapter.durableRunMirror
51
+ ? buildFinalizedMessageFallbackChunks({
52
+ persistedMessage,
53
+ sanitizedFinalizedMessage,
54
+ finalStep,
55
+ mirroredToolChunkState: input.mirroredToolChunkState,
56
+ capturedMessageId: input.capturedMessageId,
57
+ hasIncompleteFinalizedToolParts,
58
+ })
59
+ : [],
60
+ hasIncompleteToolParts: hasIncompleteFinalizedToolParts,
61
+ metadata: extractChatMessageMetadata(sanitizedFinalizedMessage.metadata),
62
+ };
63
+ };
64
+ }
65
+ export function createHostedChatFinalizeDetachedBuildState(input) {
66
+ return async (finalStep) => {
67
+ const { finalizedFallbackMessage, hasIncompleteFallbackToolParts } = buildDetachedFallbackMessageState({
68
+ capturedMessageId: input.capturedMessageId,
69
+ finalStep,
70
+ isAborted: input.isAborted,
71
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
72
+ });
73
+ const fallbackParts = finalizedFallbackMessage.parts;
74
+ return {
75
+ hasContent: fallbackParts.length > 0,
76
+ fallbackChunks: fallbackParts.length > 0 && input.lifecycleAdapter.durableRunMirror &&
77
+ input.capturedMessageId
78
+ ? buildDetachedFallbackChunks({
79
+ fallbackParts,
80
+ finalStep,
81
+ mirroredToolChunkState: input.mirroredToolChunkState,
82
+ mirroredDurableOutput: input.mirroredDurableOutput,
83
+ capturedMessageId: input.capturedMessageId,
84
+ hasIncompleteFallbackToolParts,
85
+ })
86
+ : [],
87
+ hasIncompleteToolParts: hasIncompleteFallbackToolParts,
88
+ };
89
+ };
90
+ }
91
+ async function finalizeExecutionFailure(input) {
92
+ await dispatchConversationHostedStreamErrorState(input.lifecycleAdapter, input.error).catch((finalizeError) => {
93
+ input.logger?.error(input.logMessage, {
94
+ conversationId: input.conversationId,
95
+ runId: input.runId,
96
+ error: finalizeError instanceof Error ? finalizeError.message : String(finalizeError),
97
+ });
98
+ });
99
+ }
100
+ function createStreamMessageMetadataBuilder(input) {
101
+ return ({ part }) => buildChatStreamChunkMessageMetadata({
102
+ agentId: input.agentId,
103
+ modelId: input.modelId,
104
+ ...(input.lifecycleAdapter.durableRootRun
105
+ ? { runId: input.lifecycleAdapter.durableRootRun.runId }
106
+ : {}),
107
+ ...(input.streamingMessageId ? { streamingMessageId: input.streamingMessageId } : {}),
108
+ part: {
109
+ type: part.type,
110
+ ...("totalUsage" in part ? { totalUsage: part.totalUsage } : {}),
111
+ },
112
+ });
113
+ }
114
+ function logCleanupError(input) {
115
+ input.logger?.error("Runtime cleanup failed", {
116
+ error: input.error instanceof Error ? input.error.message : String(input.error),
117
+ });
118
+ }
119
+ async function finalizeResponseFinish(input) {
120
+ const hooks = createHostedChatStreamFinalizationHooks({
121
+ lifecycleAdapter: input.lifecycleAdapter,
122
+ cleanup: input.cleanup,
123
+ streamError: input.lastStreamError,
124
+ logger: input.logger,
125
+ });
126
+ const buildState = createHostedChatFinalizeResponseBuildState({
127
+ responseMessage: input.responseMessage,
128
+ isAborted: input.isAborted,
129
+ lifecycleAdapter: input.lifecycleAdapter,
130
+ mirroredToolChunkState: input.mirroredToolChunkState,
131
+ capturedMessageId: input.capturedMessageId,
132
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
133
+ });
134
+ await finalizeHostedResponse({
135
+ isAborted: input.isAborted,
136
+ getFinalStep: () => getLastStreamStep(input.streamResult),
137
+ buildState,
138
+ shouldFailEmptyMessage: ({ isAborted, message }) => shouldFailEmptyHostedFinalizedMessage({ isAborted, message }),
139
+ ...hooks,
140
+ });
141
+ }
142
+ async function finalizeDetachedStreamEnd(input) {
143
+ const hooks = createHostedChatStreamFinalizationHooks({
144
+ lifecycleAdapter: input.lifecycleAdapter,
145
+ cleanup: input.cleanup,
146
+ streamError: input.lastStreamError,
147
+ logger: input.logger,
148
+ });
149
+ const buildState = createHostedChatFinalizeDetachedBuildState({
150
+ capturedMessageId: input.capturedMessageId,
151
+ isAborted: input.isAborted,
152
+ lifecycleAdapter: input.lifecycleAdapter,
153
+ mirroredToolChunkState: input.mirroredToolChunkState,
154
+ mirroredDurableOutput: input.mirroredDurableOutput,
155
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
156
+ });
157
+ await finalizeHostedDetached({
158
+ isAborted: input.isAborted,
159
+ mirroredDurableOutput: input.mirroredDurableOutput,
160
+ getFinalStep: () => getLastStreamStep(input.streamResult),
161
+ buildState,
162
+ ...hooks,
163
+ });
164
+ }
165
+ function resolveStreamingMessageId(input) {
166
+ const streamingMessageId = input.lifecycleAdapter.durableRootRun?.messageId ?? null;
167
+ if (input.conversationId && !streamingMessageId) {
168
+ throw new Error("DURABLE_CHAT_ROOT_REQUIRES_CONVERSATION");
169
+ }
170
+ if (streamingMessageId) {
171
+ input.runContext.setMessageId?.(streamingMessageId);
172
+ }
173
+ return streamingMessageId;
174
+ }
175
+ export function createHostedChatExecutionRuntime(input) {
176
+ let finishPromise = Promise.resolve();
177
+ let lastStreamError = null;
178
+ let finishHandlerStarted = false;
179
+ let mirroredDurableOutput = false;
180
+ const incompleteToolCallsPartErrorText = input.incompleteToolCallsPartErrorText ??
181
+ INCOMPLETE_TOOL_CALLS_PART_ERROR_TEXT;
182
+ const streamingMessageId = resolveStreamingMessageId({
183
+ conversationId: input.bootstrap.capturedConversationId,
184
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
185
+ runContext: input.runContext,
186
+ });
187
+ const finalizeDetachedStreamEndIfNeeded = async () => {
188
+ if (finishHandlerStarted) {
189
+ return;
190
+ }
191
+ finishHandlerStarted = true;
192
+ await finalizeDetachedStreamEnd({
193
+ capturedMessageId: input.bootstrap.capturedMessageId,
194
+ streamResult: input.bootstrap.streamResult,
195
+ isAborted: input.abortSignal.aborted,
196
+ lastStreamError,
197
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
198
+ mirroredToolChunkState: input.bootstrap.mirroredToolChunkState,
199
+ mirroredDurableOutput,
200
+ incompleteToolCallsPartErrorText,
201
+ cleanup: input.bootstrap.cleanup,
202
+ logger: input.logger,
203
+ });
204
+ };
205
+ const fail = async (error) => {
206
+ await input.runContext.withContext(async () => {
207
+ input.bootstrap.rootStreamWatchdog.dispose();
208
+ await input.bootstrap.cleanup().catch((cleanupError) => {
209
+ logCleanupError({ error: cleanupError, logger: input.logger });
210
+ });
211
+ await finalizeExecutionFailure({
212
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
213
+ error,
214
+ conversationId: input.bootstrap.capturedConversationId,
215
+ runId: input.bootstrap.lifecycleAdapter.durableRootRun?.runId,
216
+ logMessage: "Failed to mark durable chat root run as failed",
217
+ logger: input.logger,
218
+ });
219
+ });
220
+ };
221
+ const streamOptions = {
222
+ sendReasoning: true,
223
+ originalMessages: input.originalMessages,
224
+ onError: (error) => {
225
+ lastStreamError = error;
226
+ return input.runContext.withContext(() => getHostedStreamErrorText(error));
227
+ },
228
+ onFinish: ({ responseMessage, isAborted }) => {
229
+ finishHandlerStarted = true;
230
+ finishPromise = input.runContext.withContext(() => finalizeResponseFinish({
231
+ responseMessage,
232
+ isAborted,
233
+ streamResult: input.bootstrap.streamResult,
234
+ lastStreamError,
235
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
236
+ mirroredToolChunkState: input.bootstrap.mirroredToolChunkState,
237
+ capturedMessageId: input.bootstrap.capturedMessageId,
238
+ incompleteToolCallsPartErrorText,
239
+ cleanup: input.bootstrap.cleanup,
240
+ logger: input.logger,
241
+ }).catch((error) => finalizeExecutionFailure({
242
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
243
+ error,
244
+ conversationId: input.bootstrap.capturedConversationId,
245
+ runId: input.bootstrap.lifecycleAdapter.durableRootRun?.runId,
246
+ logMessage: "Failed to finalize durable chat root run",
247
+ logger: input.logger,
248
+ })));
249
+ },
250
+ messageMetadata: createStreamMessageMetadataBuilder({
251
+ agentId: input.agentId,
252
+ modelId: input.modelId,
253
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
254
+ streamingMessageId,
255
+ }),
256
+ };
257
+ if (input.responseMessageId) {
258
+ const responseMessageId = input.responseMessageId;
259
+ streamOptions.generateMessageId = () => responseMessageId;
260
+ }
261
+ const agentUIStream = input.bootstrap.streamResult.toUIMessageStream(streamOptions);
262
+ return {
263
+ agentUIStream: createHostedMirroredUiStream({
264
+ sourceStream: agentUIStream,
265
+ rootStreamWatchdog: input.bootstrap.rootStreamWatchdog,
266
+ mirroredToolChunkState: input.bootstrap.mirroredToolChunkState,
267
+ appendChunk: (chunk) => input.bootstrap.lifecycleAdapter.durableRunMirror?.handleChunk(chunk),
268
+ setMirroredOutput: (value) => {
269
+ mirroredDurableOutput = value;
270
+ },
271
+ logger: input.logger,
272
+ }),
273
+ fail,
274
+ waitForFinish: async () => {
275
+ try {
276
+ await finalizeDetachedStreamEndIfNeeded();
277
+ await finishPromise;
278
+ }
279
+ finally {
280
+ input.bootstrap.rootStreamWatchdog.dispose();
281
+ }
282
+ },
283
+ };
284
+ }
@@ -156,6 +156,7 @@ export { buildChildRunExecutionSnapshot, buildChildRunFailureResult, buildChildR
156
156
  export { type ConversationRunChunkMirror, type ConversationRunChunkMirrorApiOptions, type ConversationRunChunkMirrorOptions, type ConversationRunChunkMirrorPrepareChunkEventsInput, type ConversationRunChunkMirrorPreparedChunk, type ConversationRunChunkMirrorPreparedEvents, type ConversationRunChunkMirrorPrepareExternalEventsInput, type ConversationRunChunkMirrorQueueOptions, createConversationRunChunkMirror, createHostedConversationRunChunkMirror, type HostedConversationRunChunkMirrorInstrumentation, type HostedConversationRunChunkMirrorOptions, type HostedConversationRunChunkMirrorTraceAttributes, } from "./conversation-run-chunk-mirror.js";
157
157
  export { type ConversationRunStreamMirror, createConversationRunStreamMirror, } from "./conversation-run-stream-mirror.js";
158
158
  export { buildDetachedFallbackChunks, type BuildDetachedFallbackChunksInput, type BuildDetachedFallbackMessageInput, buildDetachedFallbackMessageState, buildFinalizedMessageFallbackChunks, type BuildFinalizedMessageFallbackChunksInput, buildFinalizedMessageState, type BuildFinalizedMessageStateInput, type DetachedFallbackMessageState, type FinalizedMessageState, } from "./hosted-finalized-message.js";
159
+ export { cleanupAfterHostedChatExecutionFinalization, createHostedChatExecutionRuntime, type CreateHostedChatExecutionRuntimeInput, createHostedChatFinalizeDetachedBuildState, createHostedChatFinalizeResponseBuildState, createHostedChatStreamFinalizationHooks, type HostedChatExecutionLifecycleAdapter, type HostedChatExecutionRootStreamWatchdog, type HostedChatExecutionRunContext, type HostedChatExecutionRuntime, type HostedChatExecutionRuntimeBootstrap, type HostedChatExecutionRuntimeLogger, toHostedChatExecutionFinalState, } from "./hosted-chat-execution-runtime.js";
159
160
  export { finalizeHostedDetached, type FinalizeHostedDetachedOptions, finalizeHostedResponse, type FinalizeHostedResponseOptions, type HostedDetachedFinalizationState, type HostedResponseFinalizationState, type HostedTerminalError, } from "./hosted-stream-finalization.js";
160
161
  export { getEmptyHostedFinalizedMessageTerminalError, getHostedStreamErrorText, type HostedStreamTerminalError, shouldFailEmptyHostedFinalizedMessage, } from "./hosted-stream-terminal-error.js";
161
162
  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";
@@ -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,EACL,KAAK,+BAA+B,EACpC,KAAK,kCAAkC,EACvC,gCAAgC,EAChC,KAAK,qCAAqC,EAC1C,mCAAmC,EACnC,KAAK,wCAAwC,GAC9C,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,8BAA8B,EAC9B,0BAA0B,EAC1B,yCAAyC,EACzC,yCAAyC,EACzC,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,EAClC,KAAK,oBAAoB,GAC1B,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,iBAAiB,EACtB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,yBAAyB,GAC/B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,mCAAmC,EACnC,KAAK,wCAAwC,EAC7C,8CAA8C,EAC9C,KAAK,8BAA8B,EACnC,oCAAoC,EACpC,KAAK,0BAA0B,EAC/B,gCAAgC,GACjC,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,EAClC,KAAK,0BAA0B,GAChC,MAAM,sBAAsB,CAAC;AAC9B,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,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,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,0BAA0B,EAC/B,2BAA2B,EAC3B,yBAAyB,EACzB,uBAAuB,EACvB,yBAAyB,EACzB,8BAA8B,EAC9B,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,8BAA8B,CAAC;AACtC,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,EACL,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,4BAA4B,EAC5B,+BAA+B,EAC/B,qCAAqC,EACrC,+BAA+B,GAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mCAAmC,EACnC,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EACxC,KAAK,oCAAoC,GAC1C,MAAM,wCAAwC,CAAC;AAEhD,YAAY,EACV,sBAAsB,EACtB,gCAAgC,EAChC,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAC9B,gCAAgC,EAChC,4BAA4B,EAC5B,6BAA6B,EAC7B,yCAAyC,GAC1C,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EACL,8DAA8D,EAC9D,gDAAgD,EAChD,qDAAqD,EACrD,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,uBAAuB,EACvB,gCAAgC,EAChC,oCAAoC,GACrC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,yBAAyB,EACzB,kCAAkC,EAClC,KAAK,+BAA+B,EACpC,KAAK,iCAAiC,EACtC,KAAK,kCAAkC,EACvC,iCAAiC,EACjC,KAAK,sCAAsC,EAC3C,oCAAoC,GACrC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,8BAA8B,EAC9B,qCAAqC,EACrC,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,oBAAoB,EACpB,KAAK,0BAA0B,EAC/B,gCAAgC,EAChC,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,uBAAuB,EACvB,KAAK,yBAAyB,EAC9B,+BAA+B,EAC/B,2BAA2B,EAC3B,KAAK,yBAAyB,EAC9B,+BAA+B,EAC/B,KAAK,sBAAsB,EAC3B,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,EACtB,KAAK,2BAA2B,EAChC,iCAAiC,EACjC,mCAAmC,GACpC,MAAM,wCAAwC,CAAC;AAChD,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,6BAA6B,EAClC,mCAAmC,EACnC,KAAK,0CAA0C,EAC/C,iCAAiC,EACjC,qCAAqC,EACrC,iCAAiC,EACjC,6CAA6C,GAC9C,MAAM,0CAA0C,CAAC;AAClD,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,wCAAwC,EACxC,KAAK,uCAAuC,EAC5C,KAAK,+BAA+B,GACrC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAClG,OAAO,EACL,gCAAgC,EAChC,KAAK,qCAAqC,GAC3C,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,KAAK,0BAA0B,EAC/B,4BAA4B,EAC5B,gCAAgC,EAChC,uBAAuB,EACvB,mCAAmC,EACnC,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,6BAA6B,EAClC,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,4BAA4B,EAC5B,mCAAmC,EACnC,uBAAuB,EACvB,uBAAuB,EACvB,KAAK,4BAA4B,EACjC,oBAAoB,EACpB,KAAK,yBAAyB,EAC9B,6BAA6B,EAC7B,qBAAqB,EACrB,KAAK,0BAA0B,EAC/B,kCAAkC,EAClC,KAAK,uCAAuC,GAC7C,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,gCAAgC,EAChC,mCAAmC,EACnC,KAAK,kCAAkC,GACxC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,+BAA+B,EAC/B,sCAAsC,EACtC,KAAK,2CAA2C,EAChD,KAAK,yBAAyB,EAC9B,KAAK,8BAA8B,EACnC,KAAK,kCAAkC,EACvC,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,iCAAiC,GACvC,MAAM,oCAAoC,CAAC;AAC5C,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,KAAK,gCAAgC,EACrC,KAAK,8BAA8B,EACnC,mCAAmC,EACnC,KAAK,0CAA0C,EAC/C,uCAAuC,EACvC,KAAK,4CAA4C,GAClD,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,6BAA6B,EAC7B,KAAK,mCAAmC,EACxC,KAAK,qCAAqC,EAC1C,KAAK,yBAAyB,EAC9B,+BAA+B,EAC/B,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,6BAA6B,EAC7B,uBAAuB,EACvB,wCAAwC,EACxC,8BAA8B,EAC9B,KAAK,qCAAqC,EAC1C,oCAAoC,GACrC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,0CAA0C,EAC1C,KAAK,+CAA+C,EACpD,0CAA0C,EAC1C,kDAAkD,EAClD,6BAA6B,EAC7B,KAAK,kCAAkC,EACvC,KAAK,oCAAoC,EACzC,KAAK,kCAAkC,EACvC,KAAK,kCAAkC,EACvC,KAAK,8BAA8B,EACnC,KAAK,qCAAqC,EAC1C,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,iCAAiC,GACvC,MAAM,0CAA0C,CAAC;AAClD,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,+CAA+C,EAC/C,6DAA6D,EAC7D,oDAAoD,EACpD,KAAK,iCAAiC,EACtC,KAAK,wCAAwC,EAC7C,KAAK,oCAAoC,EACzC,KAAK,yCAAyC,EAC9C,uCAAuC,EACvC,KAAK,8CAA8C,EACnD,0CAA0C,EAC1C,uCAAuC,EACvC,yCAAyC,EACzC,sCAAsC,EACtC,KAAK,2CAA2C,EAChD,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,6BAA6B,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,GACjC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,yCAAyC,EACzC,KAAK,gDAAgD,GACtD,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,mBAAmB,EACnB,KAAK,6BAA6B,EAClC,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,KAAK,mCAAmC,EACxC,KAAK,sCAAsC,EAC3C,6BAA6B,EAC7B,kCAAkC,GACnC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,qCAAqC,EACrC,2CAA2C,EAC3C,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACpC,KAAK,uCAAuC,EAC5C,KAAK,0CAA0C,EAC/C,KAAK,oCAAoC,EACzC,KAAK,yCAAyC,EAC9C,KAAK,qCAAqC,EAC1C,KAAK,wCAAwC,EAC7C,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,6BAA6B,EAC7B,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,8BAA8B,EAC9B,mCAAmC,EACnC,KAAK,wCAAwC,EAC7C,sCAAsC,GACvC,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,kCAAkC,EAClC,+BAA+B,EAC/B,wCAAwC,EACxC,8CAA8C,EAC9C,iDAAiD,EACjD,KAAK,kDAAkD,EACvD,+BAA+B,EAC/B,KAAK,yCAAyC,EAC9C,KAAK,8BAA8B,EACnC,yCAAyC,EACzC,wCAAwC,EACxC,iCAAiC,EACjC,wCAAwC,EACxC,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,wCAAwC,EACxC,iCAAiC,EACjC,KAAK,4BAA4B,EACjC,uCAAuC,EACvC,+BAA+B,GAChC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,gCAAgC,EAChC,KAAK,8BAA8B,EACnC,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,EAC7B,qBAAqB,EACrB,+BAA+B,EAC/B,gCAAgC,EAChC,yCAAyC,EACzC,8BAA8B,GAC/B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,EAClC,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,GACrC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,qCAAqC,EACrC,iCAAiC,EACjC,gCAAgC,EAChC,2BAA2B,EAC3B,uBAAuB,EACvB,8BAA8B,EAC9B,oCAAoC,EACpC,2CAA2C,EAC3C,8BAA8B,EAC9B,KAAK,gCAAgC,GACtC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,+BAA+B,EAC/B,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,gCAAgC,EAChC,+BAA+B,EAC/B,KAAK,6BAA6B,EAClC,wBAAwB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,gCAAgC,EACrC,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,GAC9B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,EAC3B,kCAAkC,EAClC,KAAK,0BAA0B,EAC/B,yBAAyB,EACzB,yBAAyB,EACzB,KAAK,0BAA0B,EAC/B,KAAK,kCAAkC,EACvC,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,6BAA6B,EAC7B,KAAK,0BAA0B,GAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,sCAAsC,EACtC,mCAAmC,EACnC,KAAK,4BAA4B,EACjC,KAAK,4BAA4B,EACjC,KAAK,6BAA6B,EAClC,iCAAiC,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,EAChC,sCAAsC,EACtC,KAAK,+CAA+C,EACpD,KAAK,uCAAuC,EAC5C,KAAK,+CAA+C,GACrD,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,KAAK,2BAA2B,EAChC,iCAAiC,GAClC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,2BAA2B,EAC3B,KAAK,gCAAgC,EACrC,KAAK,iCAAiC,EACtC,iCAAiC,EACjC,mCAAmC,EACnC,KAAK,wCAAwC,EAC7C,0BAA0B,EAC1B,KAAK,+BAA+B,EACpC,KAAK,4BAA4B,EACjC,KAAK,qBAAqB,GAC3B,MAAM,+BAA+B,CAAC;AACvC,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,2CAA2C,EAC3C,wBAAwB,EACxB,KAAK,yBAAyB,EAC9B,qCAAqC,GACtC,MAAM,mCAAmC,CAAC;AAC3C,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,oCAAoC,EACzC,KAAK,mCAAmC,EACxC,KAAK,2BAA2B,EAChC,KAAK,iCAAiC,EACtC,KAAK,6BAA6B,EAClC,KAAK,iCAAiC,EACtC,gCAAgC,EAChC,uBAAuB,EACvB,wCAAwC,GACzC,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,0DAA0D,EAC1D,KAAK,kCAAkC,EACvC,KAAK,wCAAwC,EAC7C,yCAAyC,EACzC,KAAK,8CAA8C,GACpD,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,6BAA6B,EAClC,wCAAwC,EACxC,KAAK,6CAA6C,GACnD,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,mCAAmC,EACxC,KAAK,4BAA4B,EACjC,6BAA6B,EAC7B,6BAA6B,EAC7B,KAAK,yBAAyB,EAC9B,8BAA8B,EAC9B,2BAA2B,EAC3B,KAAK,gCAAgC,EACrC,mCAAmC,EACnC,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,2BAA2B,EAC3B,gCAAgC,EAChC,KAAK,qCAAqC,EAC1C,oBAAoB,EACpB,4BAA4B,EAC5B,KAAK,iCAAiC,EACtC,4BAA4B,EAC5B,+BAA+B,EAC/B,KAAK,gCAAgC,EACrC,KAAK,4BAA4B,EACjC,KAAK,8BAA8B,EACnC,4BAA4B,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,4BAA4B,GAC7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,KAAK,iCAAiC,EACtC,KAAK,2BAA2B,EAChC,iCAAiC,GAClC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,4BAA4B,EAC5B,8BAA8B,EAC9B,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,6BAA6B,EAC7B,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,yBAAyB,EACzB,KAAK,0BAA0B,GAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mCAAmC,EACnC,kBAAkB,EAClB,+BAA+B,EAC/B,gCAAgC,EAChC,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,eAAe,EACf,6BAA6B,EAC7B,oCAAoC,EACpC,KAAK,kBAAkB,EACvB,wBAAwB,EACxB,sBAAsB,EACtB,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,2BAA2B,EAChC,4BAA4B,EAC5B,KAAK,mCAAmC,EACxC,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,KAAK,qBAAqB,EAC1B,4BAA4B,EAC5B,kCAAkC,EAClC,KAAK,yCAAyC,EAC9C,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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"}
@@ -154,6 +154,7 @@ export { buildChildRunExecutionSnapshot, buildChildRunFailureResult, buildChildR
154
154
  export { createConversationRunChunkMirror, createHostedConversationRunChunkMirror, } from "./conversation-run-chunk-mirror.js";
155
155
  export { createConversationRunStreamMirror, } from "./conversation-run-stream-mirror.js";
156
156
  export { buildDetachedFallbackChunks, buildDetachedFallbackMessageState, buildFinalizedMessageFallbackChunks, buildFinalizedMessageState, } from "./hosted-finalized-message.js";
157
+ export { cleanupAfterHostedChatExecutionFinalization, createHostedChatExecutionRuntime, createHostedChatFinalizeDetachedBuildState, createHostedChatFinalizeResponseBuildState, createHostedChatStreamFinalizationHooks, toHostedChatExecutionFinalState, } from "./hosted-chat-execution-runtime.js";
157
158
  export { finalizeHostedDetached, finalizeHostedResponse, } from "./hosted-stream-finalization.js";
158
159
  export { getEmptyHostedFinalizedMessageTerminalError, getHostedStreamErrorText, shouldFailEmptyHostedFinalizedMessage, } from "./hosted-stream-terminal-error.js";
159
160
  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";
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.1.419";
1
+ export declare const VERSION = "0.1.420";
2
2
  //# sourceMappingURL=version-constant.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
- export const VERSION = "0.1.419";
3
+ export const VERSION = "0.1.420";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "veryfront",
3
- "version": "0.1.419",
3
+ "version": "0.1.420",
4
4
  "description": "The simplest way to build AI-powered apps",
5
5
  "keywords": [
6
6
  "react",
package/src/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.419",
3
+ "version": "0.1.420",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "workspace": [
@@ -4,7 +4,7 @@
4
4
 
5
5
  // See https://github.com/facebook/react/blob/main/packages/react-dom/client.js to see how the exports are declared,
6
6
 
7
- import React = require("https://esm.sh/@types/react@19.2.14/index.d.ts");
7
+ import React = require("https://esm.sh/@types/react@19.2.3/index.d.ts");
8
8
 
9
9
  export {};
10
10
 
@@ -18,7 +18,6 @@ interface KeyboardEvent extends Event {}
18
18
  interface MouseEvent extends Event {}
19
19
  interface TouchEvent extends Event {}
20
20
  interface PointerEvent extends Event {}
21
- interface SubmitEvent extends Event {}
22
21
  interface ToggleEvent extends Event {}
23
22
  interface TransitionEvent extends Event {}
24
23
  interface UIEvent extends Event {}
@@ -16,7 +16,6 @@ type NativeKeyboardEvent = KeyboardEvent;
16
16
  type NativeMouseEvent = MouseEvent;
17
17
  type NativeTouchEvent = TouchEvent;
18
18
  type NativePointerEvent = PointerEvent;
19
- type NativeSubmitEvent = SubmitEvent;
20
19
  type NativeToggleEvent = ToggleEvent;
21
20
  type NativeTransitionEvent = TransitionEvent;
22
21
  type NativeUIEvent = UIEvent;
@@ -226,20 +225,12 @@ declare namespace React {
226
225
 
227
226
  type ComponentState = any;
228
227
 
229
- interface DO_NOT_USE_OR_YOU_WILL_BE_FIRED_EXPERIMENTAL_KEY_TYPES {}
230
-
231
228
  /**
232
229
  * A value which uniquely identifies a node among items in an array.
233
230
  *
234
231
  * @see {@link https://react.dev/learn/rendering-lists#keeping-list-items-in-order-with-key React Docs}
235
232
  */
236
- type Key =
237
- | string
238
- | number
239
- | bigint
240
- | DO_NOT_USE_OR_YOU_WILL_BE_FIRED_EXPERIMENTAL_KEY_TYPES[
241
- keyof DO_NOT_USE_OR_YOU_WILL_BE_FIRED_EXPERIMENTAL_KEY_TYPES
242
- ];
233
+ type Key = string | number | bigint;
243
234
 
244
235
  /**
245
236
  * @internal The props any component can receive.
@@ -1893,7 +1884,7 @@ declare namespace React {
1893
1884
  *
1894
1885
  * @param callback A synchronous, void callback that will execute as a single, complete React commit.
1895
1886
  *
1896
- * @see {@link https://reactjs.org/blog/2019/02/06/react-v16.8.0.html#testing-hooks}
1887
+ * @see https://reactjs.org/blog/2019/02/06/react-v16.8.0.html#testing-hooks
1897
1888
  */
1898
1889
  // NOTES
1899
1890
  // - the order of these signatures matters - typescript will check the signatures in source order.
@@ -1935,31 +1926,7 @@ declare namespace React {
1935
1926
  reducer: (state: State, action: Action) => State,
1936
1927
  ): [State, (action: Action) => void];
1937
1928
 
1938
- interface UntrackedReactPromise<T> extends PromiseLike<T> {
1939
- status?: void;
1940
- }
1941
-
1942
- export interface PendingReactPromise<T> extends PromiseLike<T> {
1943
- status: "pending";
1944
- }
1945
-
1946
- export interface FulfilledReactPromise<T> extends PromiseLike<T> {
1947
- status: "fulfilled";
1948
- value: T;
1949
- }
1950
-
1951
- export interface RejectedReactPromise<T> extends PromiseLike<T> {
1952
- status: "rejected";
1953
- reason: unknown;
1954
- }
1955
-
1956
- export type ReactPromise<T> =
1957
- | UntrackedReactPromise<T>
1958
- | PendingReactPromise<T>
1959
- | FulfilledReactPromise<T>
1960
- | RejectedReactPromise<T>;
1961
-
1962
- export type Usable<T> = ReactPromise<T> | Context<T>;
1929
+ export type Usable<T> = PromiseLike<T> | Context<T>;
1963
1930
 
1964
1931
  export function use<T>(usable: Usable<T>): T;
1965
1932
 
@@ -2074,28 +2041,15 @@ declare namespace React {
2074
2041
  target: EventTarget & Target;
2075
2042
  }
2076
2043
 
2077
- /**
2078
- * @deprecated FormEvent doesn't actually exist.
2079
- * You probably meant to use {@link ChangeEvent}, {@link InputEvent}, {@link SubmitEvent}, or just {@link SyntheticEvent} instead
2080
- * depending on the event type.
2081
- */
2082
2044
  interface FormEvent<T = Element> extends SyntheticEvent<T> {
2083
2045
  }
2084
2046
 
2085
2047
  interface InvalidEvent<T = Element> extends SyntheticEvent<T> {
2048
+ target: EventTarget & T;
2086
2049
  }
2087
2050
 
2088
- /**
2089
- * change events bubble in React so their target is generally unknown.
2090
- * Only for form elements we know their target type because form events can't
2091
- * be nested.
2092
- * This type exists purely to narrow `target` for form elements. It doesn't
2093
- * reflect a DOM event. Change events are just fired as standard {@link SyntheticEvent}.
2094
- */
2095
- interface ChangeEvent<CurrentTarget = Element, Target = Element> extends SyntheticEvent<CurrentTarget> {
2096
- // TODO: This is wrong for change event handlers on arbitrary. Should
2097
- // be EventTarget & Target, but kept for backward compatibility until React 20.
2098
- target: EventTarget & CurrentTarget;
2051
+ interface ChangeEvent<T = Element> extends SyntheticEvent<T> {
2052
+ target: EventTarget & T;
2099
2053
  }
2100
2054
 
2101
2055
  interface InputEvent<T = Element> extends SyntheticEvent<T, NativeInputEvent> {
@@ -2165,13 +2119,6 @@ declare namespace React {
2165
2119
  shiftKey: boolean;
2166
2120
  }
2167
2121
 
2168
- interface SubmitEvent<T = Element> extends SyntheticEvent<T, NativeSubmitEvent> {
2169
- // `submitter` is available in react@canary
2170
- // submitter: HTMLElement | null;
2171
- // SubmitEvents are always targetted at HTMLFormElements.
2172
- target: EventTarget & HTMLFormElement;
2173
- }
2174
-
2175
2122
  interface TouchEvent<T = Element> extends UIEvent<T, NativeTouchEvent> {
2176
2123
  altKey: boolean;
2177
2124
  changedTouches: TouchList;
@@ -2227,19 +2174,11 @@ declare namespace React {
2227
2174
  type CompositionEventHandler<T = Element> = EventHandler<CompositionEvent<T>>;
2228
2175
  type DragEventHandler<T = Element> = EventHandler<DragEvent<T>>;
2229
2176
  type FocusEventHandler<T = Element> = EventHandler<FocusEvent<T>>;
2230
- /**
2231
- * @deprecated FormEventHandler doesn't actually exist.
2232
- * You probably meant to use {@link ChangeEventHandler}, {@link InputEventHandler}, {@link SubmitEventHandler}, or just {@link EventHandler} instead
2233
- * depending on the event type.
2234
- */
2235
2177
  type FormEventHandler<T = Element> = EventHandler<FormEvent<T>>;
2236
- type ChangeEventHandler<CurrentTarget = Element, Target = Element> = EventHandler<
2237
- ChangeEvent<CurrentTarget, Target>
2238
- >;
2178
+ type ChangeEventHandler<T = Element> = EventHandler<ChangeEvent<T>>;
2239
2179
  type InputEventHandler<T = Element> = EventHandler<InputEvent<T>>;
2240
2180
  type KeyboardEventHandler<T = Element> = EventHandler<KeyboardEvent<T>>;
2241
2181
  type MouseEventHandler<T = Element> = EventHandler<MouseEvent<T>>;
2242
- type SubmitEventHandler<T = Element> = EventHandler<SubmitEvent<T>>;
2243
2182
  type TouchEventHandler<T = Element> = EventHandler<TouchEvent<T>>;
2244
2183
  type PointerEventHandler<T = Element> = EventHandler<PointerEvent<T>>;
2245
2184
  type UIEventHandler<T = Element> = EventHandler<UIEvent<T>>;
@@ -2293,19 +2232,19 @@ declare namespace React {
2293
2232
  onBlur?: FocusEventHandler<T> | undefined;
2294
2233
  onBlurCapture?: FocusEventHandler<T> | undefined;
2295
2234
 
2296
- // form related Events
2297
- onChange?: ChangeEventHandler<T> | undefined;
2298
- onChangeCapture?: ChangeEventHandler<T> | undefined;
2235
+ // Form Events
2236
+ onChange?: FormEventHandler<T> | undefined;
2237
+ onChangeCapture?: FormEventHandler<T> | undefined;
2299
2238
  onBeforeInput?: InputEventHandler<T> | undefined;
2300
- onBeforeInputCapture?: InputEventHandler<T> | undefined;
2301
- onInput?: InputEventHandler<T> | undefined;
2302
- onInputCapture?: InputEventHandler<T> | undefined;
2303
- onReset?: ReactEventHandler<T> | undefined;
2304
- onResetCapture?: ReactEventHandler<T> | undefined;
2305
- onSubmit?: SubmitEventHandler<T> | undefined;
2306
- onSubmitCapture?: SubmitEventHandler<T> | undefined;
2307
- onInvalid?: ReactEventHandler<T> | undefined;
2308
- onInvalidCapture?: ReactEventHandler<T> | undefined;
2239
+ onBeforeInputCapture?: FormEventHandler<T> | undefined;
2240
+ onInput?: FormEventHandler<T> | undefined;
2241
+ onInputCapture?: FormEventHandler<T> | undefined;
2242
+ onReset?: FormEventHandler<T> | undefined;
2243
+ onResetCapture?: FormEventHandler<T> | undefined;
2244
+ onSubmit?: FormEventHandler<T> | undefined;
2245
+ onSubmitCapture?: FormEventHandler<T> | undefined;
2246
+ onInvalid?: FormEventHandler<T> | undefined;
2247
+ onInvalidCapture?: FormEventHandler<T> | undefined;
2309
2248
 
2310
2249
  // Image Events
2311
2250
  onLoad?: ReactEventHandler<T> | undefined;
@@ -2849,7 +2788,7 @@ declare namespace React {
2849
2788
 
2850
2789
  // Living Standard
2851
2790
  /**
2852
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/inert}
2791
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/inert
2853
2792
  */
2854
2793
  inert?: boolean | undefined;
2855
2794
  /**
@@ -3312,9 +3251,7 @@ declare namespace React {
3312
3251
  value?: string | readonly string[] | number | undefined;
3313
3252
  width?: number | string | undefined;
3314
3253
 
3315
- // No other element dispatching change events can be nested in a <input>
3316
- // so we know the target will be a HTMLInputElement.
3317
- onChange?: ChangeEventHandler<T, HTMLInputElement> | undefined;
3254
+ onChange?: ChangeEventHandler<T> | undefined;
3318
3255
  }
3319
3256
 
3320
3257
  interface KeygenHTMLAttributes<T> extends HTMLAttributes<T> {
@@ -3479,9 +3416,7 @@ declare namespace React {
3479
3416
  required?: boolean | undefined;
3480
3417
  size?: number | undefined;
3481
3418
  value?: string | readonly string[] | number | undefined;
3482
- // No other element dispatching change events can be nested in a <select>
3483
- // so we know the target will be a HTMLSelectElement.
3484
- onChange?: ChangeEventHandler<T, HTMLSelectElement> | undefined;
3419
+ onChange?: ChangeEventHandler<T> | undefined;
3485
3420
  }
3486
3421
 
3487
3422
  interface SourceHTMLAttributes<T> extends HTMLAttributes<T> {
@@ -3533,9 +3468,7 @@ declare namespace React {
3533
3468
  value?: string | readonly string[] | number | undefined;
3534
3469
  wrap?: string | undefined;
3535
3470
 
3536
- // No other element dispatching change events can be nested in a <textarea>
3537
- // so we know the target will be a HTMLTextAreaElement.
3538
- onChange?: ChangeEventHandler<T, HTMLTextAreaElement> | undefined;
3471
+ onChange?: ChangeEventHandler<T> | undefined;
3539
3472
  }
3540
3473
 
3541
3474
  interface TdHTMLAttributes<T> extends HTMLAttributes<T> {
@@ -3607,9 +3540,6 @@ declare namespace React {
3607
3540
  method?: string | undefined;
3608
3541
  min?: number | string | undefined;
3609
3542
  name?: string | undefined;
3610
- nonce?: string | undefined;
3611
- part?: string | undefined;
3612
- slot?: string | undefined;
3613
3543
  style?: CSSProperties | undefined;
3614
3544
  target?: string | undefined;
3615
3545
  type?: string | undefined;
@@ -4127,6 +4057,7 @@ declare namespace React {
4127
4057
  * Captures which component contained the exception, and its ancestors.
4128
4058
  */
4129
4059
  componentStack?: string | null;
4060
+ digest?: string | null;
4130
4061
  }
4131
4062
 
4132
4063
  // Keep in sync with JSX namespace in ./jsx-runtime.d.ts and ./jsx-dev-runtime.d.ts
@@ -4,7 +4,7 @@
4
4
 
5
5
  // See https://github.com/facebook/react/blob/main/packages/react-dom/client.js to see how the exports are declared,
6
6
 
7
- import React = require("https://esm.sh/@types/react@19.2.14/index.d.ts");
7
+ import React = require("https://esm.sh/@types/react@19.2.3/index.d.ts");
8
8
 
9
9
  export {};
10
10
 
@@ -0,0 +1,501 @@
1
+ import {
2
+ buildChatStreamChunkMessageMetadata,
3
+ extractChatMessageMetadata,
4
+ } from "../chat/chat-ui-message-helpers.js";
5
+ import { getLastStreamStep } from "../chat/final-step-fallback.js";
6
+ import type { ChatUiMessage, ChatUiMessageChunk, MessageMetadata } from "../chat/types.js";
7
+ import {
8
+ buildDetachedFallbackChunks,
9
+ buildDetachedFallbackMessageState,
10
+ buildFinalizedMessageFallbackChunks,
11
+ buildFinalizedMessageState,
12
+ } from "./hosted-finalized-message.js";
13
+ import type {
14
+ HostedChatRuntimeStreamResult,
15
+ HostedChatRuntimeToUiMessageStreamOptions,
16
+ } from "./hosted-chat-runtime-contract.js";
17
+ import type { HostedLifecycleTerminalState } from "./hosted-lifecycle.js";
18
+ import {
19
+ type ConversationHostedTerminalRuntimeAdapter,
20
+ type ConversationHostedTerminalStateInput,
21
+ dispatchConversationHostedStreamErrorState,
22
+ dispatchConversationHostedTerminalState,
23
+ resolveConversationHostedTerminalState,
24
+ toConversationHostedTerminalState,
25
+ } from "./conversation-hosted-terminal.js";
26
+ import {
27
+ createHostedMirroredUiStream,
28
+ type MirroredToolChunkState,
29
+ } from "./mirrored-tool-chunk-state.js";
30
+ import {
31
+ finalizeHostedDetached,
32
+ finalizeHostedResponse,
33
+ type FinalizeHostedResponseOptions,
34
+ type HostedDetachedFinalizationState,
35
+ type HostedResponseFinalizationState,
36
+ } from "./hosted-stream-finalization.js";
37
+ import {
38
+ getEmptyHostedFinalizedMessageTerminalError,
39
+ getHostedStreamErrorText,
40
+ shouldFailEmptyHostedFinalizedMessage,
41
+ } from "./hosted-stream-terminal-error.js";
42
+ import type { ConversationRunChunkMirror } from "./conversation-run-chunk-mirror.js";
43
+ import type { BuildChatStreamChunkMessageMetadataInput } from "../chat/chat-ui-message-helpers.js";
44
+ import type { createChatStreamWatchdog } from "../chat/stream-watchdog.js";
45
+
46
+ const INCOMPLETE_TOOL_CALLS_PART_ERROR_TEXT = "Assistant ended before tool execution completed";
47
+
48
+ const FINALIZATION_TERMINAL_STATE_FALLBACK_MODEL_ID = "";
49
+
50
+ export interface HostedChatExecutionRuntime {
51
+ agentUIStream: AsyncIterable<ChatUiMessageChunk<MessageMetadata>>;
52
+ fail: (error: unknown) => Promise<void>;
53
+ waitForFinish: () => Promise<void>;
54
+ }
55
+
56
+ export interface HostedChatExecutionRuntimeLogger {
57
+ error: (message: string, metadata?: Record<string, unknown>) => void;
58
+ warn: (message: string, metadata?: Record<string, unknown>) => void;
59
+ }
60
+
61
+ export interface HostedChatExecutionRunContext {
62
+ withContext: <T>(fn: () => T) => T;
63
+ setMessageId?: (messageId: string) => void;
64
+ }
65
+
66
+ export interface HostedChatExecutionLifecycleAdapter
67
+ extends ConversationHostedTerminalRuntimeAdapter {
68
+ durableRootRun: {
69
+ runId: string;
70
+ messageId?: string | null;
71
+ } | null;
72
+ durableRunMirror: ConversationRunChunkMirror | null;
73
+ }
74
+
75
+ export type HostedChatExecutionRootStreamWatchdog = ReturnType<typeof createChatStreamWatchdog>;
76
+
77
+ export interface HostedChatExecutionRuntimeBootstrap {
78
+ cleanup: () => Promise<void>;
79
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
80
+ rootStreamWatchdog: HostedChatExecutionRootStreamWatchdog;
81
+ streamResult: HostedChatRuntimeStreamResult;
82
+ streamingMessageId: string | null;
83
+ capturedMessageId: string | null;
84
+ capturedConversationId?: string;
85
+ mirroredToolChunkState: MirroredToolChunkState;
86
+ }
87
+
88
+ export interface CreateHostedChatExecutionRuntimeInput {
89
+ agentId: string;
90
+ modelId: string;
91
+ originalMessages: ChatUiMessage[];
92
+ responseMessageId?: string;
93
+ runContext: HostedChatExecutionRunContext;
94
+ abortSignal: AbortSignal;
95
+ bootstrap: HostedChatExecutionRuntimeBootstrap;
96
+ logger?: HostedChatExecutionRuntimeLogger;
97
+ incompleteToolCallsPartErrorText?: string;
98
+ }
99
+
100
+ type SharedFinalizationHooks = Pick<
101
+ FinalizeHostedResponseOptions<ChatUiMessage, ChatUiMessageChunk<MessageMetadata>>,
102
+ | "resolveEmptyTerminalError"
103
+ | "appendFallbackChunk"
104
+ | "flushMirror"
105
+ | "dispatchTerminalState"
106
+ | "resolveTerminalState"
107
+ | "cleanup"
108
+ | "streamError"
109
+ >;
110
+
111
+ export function toHostedChatExecutionFinalState(
112
+ input: ConversationHostedTerminalStateInput,
113
+ ): HostedLifecycleTerminalState {
114
+ return toConversationHostedTerminalState({
115
+ state: input,
116
+ fallbackModelId: FINALIZATION_TERMINAL_STATE_FALLBACK_MODEL_ID,
117
+ });
118
+ }
119
+
120
+ export async function cleanupAfterHostedChatExecutionFinalization(input: {
121
+ cleanup: () => Promise<void>;
122
+ logger?: HostedChatExecutionRuntimeLogger;
123
+ }): Promise<void> {
124
+ await input.cleanup().catch((cleanupError: unknown) => {
125
+ input.logger?.error("Runtime cleanup failed during finalization", {
126
+ error: cleanupError instanceof Error ? cleanupError.message : String(cleanupError),
127
+ });
128
+ });
129
+ }
130
+
131
+ export function createHostedChatStreamFinalizationHooks(input: {
132
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
133
+ cleanup: () => Promise<void>;
134
+ streamError: unknown;
135
+ logger?: HostedChatExecutionRuntimeLogger;
136
+ }): SharedFinalizationHooks {
137
+ return {
138
+ resolveEmptyTerminalError: (
139
+ { finalStep, streamError }: { finalStep: unknown; streamError?: unknown | null },
140
+ ) => getEmptyHostedFinalizedMessageTerminalError({ finalStep, streamError }),
141
+ appendFallbackChunk: (chunk: ChatUiMessageChunk<MessageMetadata>) =>
142
+ input.lifecycleAdapter.durableRunMirror?.handleChunk(chunk),
143
+ flushMirror: () => input.lifecycleAdapter.durableRunMirror?.flush(),
144
+ dispatchTerminalState: async (terminalState) => {
145
+ await dispatchConversationHostedTerminalState(input.lifecycleAdapter, terminalState);
146
+ },
147
+ resolveTerminalState: ({ isAborted, hasIncompleteToolParts }: {
148
+ isAborted: boolean;
149
+ hasIncompleteToolParts: boolean;
150
+ }) =>
151
+ toHostedChatExecutionFinalState(
152
+ resolveConversationHostedTerminalState({ isAborted, hasIncompleteToolParts }),
153
+ ),
154
+ cleanup: () =>
155
+ cleanupAfterHostedChatExecutionFinalization({
156
+ cleanup: input.cleanup,
157
+ logger: input.logger,
158
+ }),
159
+ streamError: input.streamError,
160
+ };
161
+ }
162
+
163
+ export function createHostedChatFinalizeResponseBuildState(input: {
164
+ responseMessage: ChatUiMessage;
165
+ isAborted: boolean;
166
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
167
+ mirroredToolChunkState: MirroredToolChunkState;
168
+ capturedMessageId: string | null;
169
+ incompleteToolCallsPartErrorText: string;
170
+ }): (
171
+ finalStep: unknown,
172
+ ) => Promise<HostedResponseFinalizationState<ChatUiMessage, ChatUiMessageChunk<MessageMetadata>>> {
173
+ return async (finalStep) => {
174
+ const { persistedMessage, sanitizedFinalizedMessage, hasIncompleteFinalizedToolParts } =
175
+ buildFinalizedMessageState({
176
+ responseMessage: input.responseMessage,
177
+ isAborted: input.isAborted,
178
+ finalStep,
179
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
180
+ });
181
+
182
+ return {
183
+ persistedMessage,
184
+ finalizedMessage: sanitizedFinalizedMessage,
185
+ fallbackChunks:
186
+ sanitizedFinalizedMessage.parts.length > 0 && input.lifecycleAdapter.durableRunMirror
187
+ ? buildFinalizedMessageFallbackChunks({
188
+ persistedMessage,
189
+ sanitizedFinalizedMessage,
190
+ finalStep,
191
+ mirroredToolChunkState: input.mirroredToolChunkState,
192
+ capturedMessageId: input.capturedMessageId,
193
+ hasIncompleteFinalizedToolParts,
194
+ })
195
+ : [],
196
+ hasIncompleteToolParts: hasIncompleteFinalizedToolParts,
197
+ metadata: extractChatMessageMetadata(sanitizedFinalizedMessage.metadata),
198
+ };
199
+ };
200
+ }
201
+
202
+ export function createHostedChatFinalizeDetachedBuildState(input: {
203
+ capturedMessageId: string | null;
204
+ isAborted: boolean;
205
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
206
+ mirroredToolChunkState: MirroredToolChunkState;
207
+ mirroredDurableOutput: boolean;
208
+ incompleteToolCallsPartErrorText: string;
209
+ }): (
210
+ finalStep: unknown,
211
+ ) => Promise<HostedDetachedFinalizationState<ChatUiMessageChunk<MessageMetadata>>> {
212
+ return async (finalStep) => {
213
+ const { finalizedFallbackMessage, hasIncompleteFallbackToolParts } =
214
+ buildDetachedFallbackMessageState({
215
+ capturedMessageId: input.capturedMessageId,
216
+ finalStep,
217
+ isAborted: input.isAborted,
218
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
219
+ });
220
+ const fallbackParts = finalizedFallbackMessage.parts;
221
+
222
+ return {
223
+ hasContent: fallbackParts.length > 0,
224
+ fallbackChunks: fallbackParts.length > 0 && input.lifecycleAdapter.durableRunMirror &&
225
+ input.capturedMessageId
226
+ ? buildDetachedFallbackChunks({
227
+ fallbackParts,
228
+ finalStep,
229
+ mirroredToolChunkState: input.mirroredToolChunkState,
230
+ mirroredDurableOutput: input.mirroredDurableOutput,
231
+ capturedMessageId: input.capturedMessageId,
232
+ hasIncompleteFallbackToolParts,
233
+ })
234
+ : [],
235
+ hasIncompleteToolParts: hasIncompleteFallbackToolParts,
236
+ };
237
+ };
238
+ }
239
+
240
+ async function finalizeExecutionFailure(input: {
241
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
242
+ error: unknown;
243
+ conversationId?: string;
244
+ runId?: string;
245
+ logMessage: string;
246
+ logger?: HostedChatExecutionRuntimeLogger;
247
+ }): Promise<void> {
248
+ await dispatchConversationHostedStreamErrorState(input.lifecycleAdapter, input.error).catch(
249
+ (finalizeError) => {
250
+ input.logger?.error(input.logMessage, {
251
+ conversationId: input.conversationId,
252
+ runId: input.runId,
253
+ error: finalizeError instanceof Error ? finalizeError.message : String(finalizeError),
254
+ });
255
+ },
256
+ );
257
+ }
258
+
259
+ function createStreamMessageMetadataBuilder(input: {
260
+ agentId: string;
261
+ modelId: string;
262
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
263
+ streamingMessageId: string | null;
264
+ }): HostedChatRuntimeToUiMessageStreamOptions["messageMetadata"] {
265
+ return ({ part }) =>
266
+ buildChatStreamChunkMessageMetadata(
267
+ {
268
+ agentId: input.agentId,
269
+ modelId: input.modelId,
270
+ ...(input.lifecycleAdapter.durableRootRun
271
+ ? { runId: input.lifecycleAdapter.durableRootRun.runId }
272
+ : {}),
273
+ ...(input.streamingMessageId ? { streamingMessageId: input.streamingMessageId } : {}),
274
+ part: {
275
+ type: part.type,
276
+ ...("totalUsage" in part ? { totalUsage: part.totalUsage } : {}),
277
+ },
278
+ } satisfies BuildChatStreamChunkMessageMetadataInput,
279
+ );
280
+ }
281
+
282
+ function logCleanupError(input: {
283
+ error: unknown;
284
+ logger?: HostedChatExecutionRuntimeLogger;
285
+ }): void {
286
+ input.logger?.error("Runtime cleanup failed", {
287
+ error: input.error instanceof Error ? input.error.message : String(input.error),
288
+ });
289
+ }
290
+
291
+ async function finalizeResponseFinish(input: {
292
+ responseMessage: ChatUiMessage;
293
+ isAborted: boolean;
294
+ streamResult: { steps: PromiseLike<readonly unknown[]> };
295
+ lastStreamError: unknown;
296
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
297
+ mirroredToolChunkState: MirroredToolChunkState;
298
+ capturedMessageId: string | null;
299
+ incompleteToolCallsPartErrorText: string;
300
+ cleanup: () => Promise<void>;
301
+ logger?: HostedChatExecutionRuntimeLogger;
302
+ }): Promise<void> {
303
+ const hooks = createHostedChatStreamFinalizationHooks({
304
+ lifecycleAdapter: input.lifecycleAdapter,
305
+ cleanup: input.cleanup,
306
+ streamError: input.lastStreamError,
307
+ logger: input.logger,
308
+ });
309
+ const buildState = createHostedChatFinalizeResponseBuildState({
310
+ responseMessage: input.responseMessage,
311
+ isAborted: input.isAborted,
312
+ lifecycleAdapter: input.lifecycleAdapter,
313
+ mirroredToolChunkState: input.mirroredToolChunkState,
314
+ capturedMessageId: input.capturedMessageId,
315
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
316
+ });
317
+
318
+ await finalizeHostedResponse({
319
+ isAborted: input.isAborted,
320
+ getFinalStep: () => getLastStreamStep(input.streamResult),
321
+ buildState,
322
+ shouldFailEmptyMessage: ({ isAborted, message }) =>
323
+ shouldFailEmptyHostedFinalizedMessage({ isAborted, message }),
324
+ ...hooks,
325
+ });
326
+ }
327
+
328
+ async function finalizeDetachedStreamEnd(input: {
329
+ capturedMessageId: string | null;
330
+ streamResult: { steps: PromiseLike<readonly unknown[]> };
331
+ isAborted: boolean;
332
+ lastStreamError: unknown;
333
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
334
+ mirroredToolChunkState: MirroredToolChunkState;
335
+ mirroredDurableOutput: boolean;
336
+ incompleteToolCallsPartErrorText: string;
337
+ cleanup: () => Promise<void>;
338
+ logger?: HostedChatExecutionRuntimeLogger;
339
+ }): Promise<void> {
340
+ const hooks = createHostedChatStreamFinalizationHooks({
341
+ lifecycleAdapter: input.lifecycleAdapter,
342
+ cleanup: input.cleanup,
343
+ streamError: input.lastStreamError,
344
+ logger: input.logger,
345
+ });
346
+ const buildState = createHostedChatFinalizeDetachedBuildState({
347
+ capturedMessageId: input.capturedMessageId,
348
+ isAborted: input.isAborted,
349
+ lifecycleAdapter: input.lifecycleAdapter,
350
+ mirroredToolChunkState: input.mirroredToolChunkState,
351
+ mirroredDurableOutput: input.mirroredDurableOutput,
352
+ incompleteToolCallsPartErrorText: input.incompleteToolCallsPartErrorText,
353
+ });
354
+
355
+ await finalizeHostedDetached({
356
+ isAborted: input.isAborted,
357
+ mirroredDurableOutput: input.mirroredDurableOutput,
358
+ getFinalStep: () => getLastStreamStep(input.streamResult),
359
+ buildState,
360
+ ...hooks,
361
+ });
362
+ }
363
+
364
+ function resolveStreamingMessageId(input: {
365
+ conversationId?: string;
366
+ lifecycleAdapter: HostedChatExecutionLifecycleAdapter;
367
+ runContext: HostedChatExecutionRunContext;
368
+ }): string | null {
369
+ const streamingMessageId = input.lifecycleAdapter.durableRootRun?.messageId ?? null;
370
+ if (input.conversationId && !streamingMessageId) {
371
+ throw new Error("DURABLE_CHAT_ROOT_REQUIRES_CONVERSATION");
372
+ }
373
+
374
+ if (streamingMessageId) {
375
+ input.runContext.setMessageId?.(streamingMessageId);
376
+ }
377
+
378
+ return streamingMessageId;
379
+ }
380
+
381
+ export function createHostedChatExecutionRuntime(
382
+ input: CreateHostedChatExecutionRuntimeInput,
383
+ ): HostedChatExecutionRuntime {
384
+ let finishPromise: Promise<void> = Promise.resolve();
385
+ let lastStreamError: unknown = null;
386
+ let finishHandlerStarted = false;
387
+ let mirroredDurableOutput = false;
388
+ const incompleteToolCallsPartErrorText = input.incompleteToolCallsPartErrorText ??
389
+ INCOMPLETE_TOOL_CALLS_PART_ERROR_TEXT;
390
+ const streamingMessageId = resolveStreamingMessageId({
391
+ conversationId: input.bootstrap.capturedConversationId,
392
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
393
+ runContext: input.runContext,
394
+ });
395
+
396
+ const finalizeDetachedStreamEndIfNeeded = async () => {
397
+ if (finishHandlerStarted) {
398
+ return;
399
+ }
400
+
401
+ finishHandlerStarted = true;
402
+ await finalizeDetachedStreamEnd({
403
+ capturedMessageId: input.bootstrap.capturedMessageId,
404
+ streamResult: input.bootstrap.streamResult,
405
+ isAborted: input.abortSignal.aborted,
406
+ lastStreamError,
407
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
408
+ mirroredToolChunkState: input.bootstrap.mirroredToolChunkState,
409
+ mirroredDurableOutput,
410
+ incompleteToolCallsPartErrorText,
411
+ cleanup: input.bootstrap.cleanup,
412
+ logger: input.logger,
413
+ });
414
+ };
415
+
416
+ const fail = async (error: unknown) => {
417
+ await input.runContext.withContext(async () => {
418
+ input.bootstrap.rootStreamWatchdog.dispose();
419
+ await input.bootstrap.cleanup().catch((cleanupError: unknown) => {
420
+ logCleanupError({ error: cleanupError, logger: input.logger });
421
+ });
422
+ await finalizeExecutionFailure({
423
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
424
+ error,
425
+ conversationId: input.bootstrap.capturedConversationId,
426
+ runId: input.bootstrap.lifecycleAdapter.durableRootRun?.runId,
427
+ logMessage: "Failed to mark durable chat root run as failed",
428
+ logger: input.logger,
429
+ });
430
+ });
431
+ };
432
+
433
+ const streamOptions: HostedChatRuntimeToUiMessageStreamOptions = {
434
+ sendReasoning: true,
435
+ originalMessages: input.originalMessages,
436
+ onError: (error) => {
437
+ lastStreamError = error;
438
+ return input.runContext.withContext(() => getHostedStreamErrorText(error));
439
+ },
440
+ onFinish: ({ responseMessage, isAborted }) => {
441
+ finishHandlerStarted = true;
442
+ finishPromise = input.runContext.withContext(() =>
443
+ finalizeResponseFinish({
444
+ responseMessage,
445
+ isAborted,
446
+ streamResult: input.bootstrap.streamResult,
447
+ lastStreamError,
448
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
449
+ mirroredToolChunkState: input.bootstrap.mirroredToolChunkState,
450
+ capturedMessageId: input.bootstrap.capturedMessageId,
451
+ incompleteToolCallsPartErrorText,
452
+ cleanup: input.bootstrap.cleanup,
453
+ logger: input.logger,
454
+ }).catch((error) =>
455
+ finalizeExecutionFailure({
456
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
457
+ error,
458
+ conversationId: input.bootstrap.capturedConversationId,
459
+ runId: input.bootstrap.lifecycleAdapter.durableRootRun?.runId,
460
+ logMessage: "Failed to finalize durable chat root run",
461
+ logger: input.logger,
462
+ })
463
+ )
464
+ );
465
+ },
466
+ messageMetadata: createStreamMessageMetadataBuilder({
467
+ agentId: input.agentId,
468
+ modelId: input.modelId,
469
+ lifecycleAdapter: input.bootstrap.lifecycleAdapter,
470
+ streamingMessageId,
471
+ }),
472
+ };
473
+
474
+ if (input.responseMessageId) {
475
+ const responseMessageId = input.responseMessageId;
476
+ streamOptions.generateMessageId = () => responseMessageId;
477
+ }
478
+ const agentUIStream = input.bootstrap.streamResult.toUIMessageStream(streamOptions);
479
+
480
+ return {
481
+ agentUIStream: createHostedMirroredUiStream({
482
+ sourceStream: agentUIStream,
483
+ rootStreamWatchdog: input.bootstrap.rootStreamWatchdog,
484
+ mirroredToolChunkState: input.bootstrap.mirroredToolChunkState,
485
+ appendChunk: (chunk) => input.bootstrap.lifecycleAdapter.durableRunMirror?.handleChunk(chunk),
486
+ setMirroredOutput: (value) => {
487
+ mirroredDurableOutput = value;
488
+ },
489
+ logger: input.logger,
490
+ }),
491
+ fail,
492
+ waitForFinish: async () => {
493
+ try {
494
+ await finalizeDetachedStreamEndIfNeeded();
495
+ await finishPromise;
496
+ } finally {
497
+ input.bootstrap.rootStreamWatchdog.dispose();
498
+ }
499
+ },
500
+ };
501
+ }
@@ -799,6 +799,21 @@ export {
799
799
  type DetachedFallbackMessageState,
800
800
  type FinalizedMessageState,
801
801
  } from "./hosted-finalized-message.js";
802
+ export {
803
+ cleanupAfterHostedChatExecutionFinalization,
804
+ createHostedChatExecutionRuntime,
805
+ type CreateHostedChatExecutionRuntimeInput,
806
+ createHostedChatFinalizeDetachedBuildState,
807
+ createHostedChatFinalizeResponseBuildState,
808
+ createHostedChatStreamFinalizationHooks,
809
+ type HostedChatExecutionLifecycleAdapter,
810
+ type HostedChatExecutionRootStreamWatchdog,
811
+ type HostedChatExecutionRunContext,
812
+ type HostedChatExecutionRuntime,
813
+ type HostedChatExecutionRuntimeBootstrap,
814
+ type HostedChatExecutionRuntimeLogger,
815
+ toHostedChatExecutionFinalState,
816
+ } from "./hosted-chat-execution-runtime.js";
802
817
  export {
803
818
  finalizeHostedDetached,
804
819
  type FinalizeHostedDetachedOptions,
@@ -1,3 +1,3 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
- export const VERSION = "0.1.419";
3
+ export const VERSION = "0.1.420";