veryfront 0.1.254 → 0.1.256

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.254",
3
+ "version": "0.1.256",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "workspace": [
@@ -1,5 +1,6 @@
1
1
  import { type ConversationAgentRunUsage, type ConversationRunProjection } from "./durable.js";
2
2
  import { type InvokeAgentChildRunProgressEvent, type InvokeAgentChildRunProgressInput } from "./invoke-agent-child-runs.js";
3
+ import type { ChatStreamEvent } from "../chat/protocol.js";
3
4
  import type { HostedChildLifecycleAdapter } from "./hosted-child-lifecycle.js";
4
5
  import type { HostedLifecycleAdapter, HostedLifecycleTerminalState } from "./hosted-lifecycle.js";
5
6
  export interface ConversationHostedLifecycleFinalizeInput {
@@ -22,6 +23,7 @@ export interface CreateConversationHostedLifecycleAdapterOptions<TChunk> {
22
23
  }) => Promise<ConversationHostedLifecycleFinalizeInput> | ConversationHostedLifecycleFinalizeInput;
23
24
  }
24
25
  export declare function createConversationHostedLifecycleAdapter<TChunk>(options: CreateConversationHostedLifecycleAdapterOptions<TChunk>): HostedLifecycleAdapter<ConversationRunProjection, TChunk>;
26
+ export declare function createConversationHostedStreamLifecycleAdapter(options: Omit<CreateConversationHostedLifecycleAdapterOptions<ChatStreamEvent>, "mapChunkToEvents">): HostedLifecycleAdapter<ConversationRunProjection, ChatStreamEvent>;
25
27
  export interface ConversationChildLifecycleContext {
26
28
  authToken: string;
27
29
  apiUrl: string;
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-hosted-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/src/agent/conversation-hosted-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAE/B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,gCAAgC,EACrC,KAAK,gCAAgC,EAEtC,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,2BAA2B,EAE5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAElG,MAAM,WAAW,wCAAwC;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,yBAAyB,CAAC;IAClC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,+CAA+C,CAAC,MAAM;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CACR,KAAK,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE,KAChC,OAAO,CAAC,yBAAyB,CAAC,GAAG,yBAAyB,CAAC;IACpE,gBAAgB,CAAC,EAAE,CACjB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,yBAAyB,KAC3B,OAAO,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,GAAG,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;IAC9E,oBAAoB,EAAE,CAAC,KAAK,EAAE;QAC5B,GAAG,EAAE,yBAAyB,CAAC;QAC/B,aAAa,EAAE,4BAA4B,CAAC;KAC7C,KACG,OAAO,CAAC,wCAAwC,CAAC,GACjD,wCAAwC,CAAC;CAC9C;AAED,wBAAgB,wCAAwC,CAAC,MAAM,EAC7D,OAAO,EAAE,+CAA+C,CAAC,MAAM,CAAC,GAC/D,sBAAsB,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAuD3D;AAED,MAAM,WAAW,iCAAiC;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,gCAAgC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9F,QAAQ,EAAE,IAAI,CAAC,gCAAgC,EAAE,QAAQ,CAAC,CAAC;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAkCD,wBAAgB,uCAAuC,CACrD,GAAG,EAAE,iCAAiC,GACrC,2BAA2B,CAkD7B"}
1
+ {"version":3,"file":"conversation-hosted-lifecycle.d.ts","sourceRoot":"","sources":["../../../src/src/agent/conversation-hosted-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,yBAAyB,EAE/B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,KAAK,gCAAgC,EACrC,KAAK,gCAAgC,EAEtC,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EACV,2BAA2B,EAE5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAElG,MAAM,WAAW,wCAAwC;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,yBAAyB,CAAC;IAClC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,+CAA+C,CAAC,MAAM;IACrE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CACR,KAAK,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE,KAChC,OAAO,CAAC,yBAAyB,CAAC,GAAG,yBAAyB,CAAC;IACpE,gBAAgB,CAAC,EAAE,CACjB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,yBAAyB,KAC3B,OAAO,CAAC,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,GAAG,SAAS,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;IAC9E,oBAAoB,EAAE,CAAC,KAAK,EAAE;QAC5B,GAAG,EAAE,yBAAyB,CAAC;QAC/B,aAAa,EAAE,4BAA4B,CAAC;KAC7C,KACG,OAAO,CAAC,wCAAwC,CAAC,GACjD,wCAAwC,CAAC;CAC9C;AAED,wBAAgB,wCAAwC,CAAC,MAAM,EAC7D,OAAO,EAAE,+CAA+C,CAAC,MAAM,CAAC,GAC/D,sBAAsB,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAuD3D;AAED,wBAAgB,8CAA8C,CAC5D,OAAO,EAAE,IAAI,CACX,+CAA+C,CAAC,eAAe,CAAC,EAChE,kBAAkB,CACnB,GACA,sBAAsB,CAAC,yBAAyB,EAAE,eAAe,CAAC,CAKpE;AAED,MAAM,WAAW,iCAAiC;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,gCAAgC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9F,QAAQ,EAAE,IAAI,CAAC,gCAAgC,EAAE,QAAQ,CAAC,CAAC;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAkCD,wBAAgB,uCAAuC,CACrD,GAAG,EAAE,iCAAiC,GACrC,2BAA2B,CAkD7B"}
@@ -1,4 +1,5 @@
1
1
  import { appendConversationRunEvents, finalizeConversationAgentRun, } from "./durable.js";
2
+ import { prepareConversationRunStreamEvents } from "./conversation-run-event-preparation.js";
2
3
  import { publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
3
4
  export function createConversationHostedLifecycleAdapter(options) {
4
5
  return {
@@ -54,6 +55,12 @@ export function createConversationHostedLifecycleAdapter(options) {
54
55
  },
55
56
  };
56
57
  }
58
+ export function createConversationHostedStreamLifecycleAdapter(options) {
59
+ return createConversationHostedLifecycleAdapter({
60
+ ...options,
61
+ mapChunkToEvents: (chunk) => prepareConversationRunStreamEvents([chunk]),
62
+ });
63
+ }
57
64
  function toConversationChildUsage(usage) {
58
65
  if (!usage) {
59
66
  return undefined;
@@ -0,0 +1,29 @@
1
+ import { type ConversationRunProjection } from "./durable.js";
2
+ import type { HostedLifecycleTerminalState } from "./hosted-lifecycle.js";
3
+ export interface ConversationHostedTerminalStateInput {
4
+ status: HostedLifecycleTerminalState["status"];
5
+ metadata?: HostedLifecycleTerminalState["metadata"];
6
+ terminalErrorCode?: string | null;
7
+ terminalErrorMessage?: string | null;
8
+ }
9
+ export interface CreateConversationHostedTerminalAdapterOptions {
10
+ authToken: string;
11
+ apiUrl: string;
12
+ run: ConversationRunProjection | null;
13
+ fallbackModelId: string;
14
+ resolveProvider: (modelId: string) => string;
15
+ onTerminalState?: (terminalState: HostedLifecycleTerminalState) => Promise<void> | void;
16
+ }
17
+ export interface ConversationHostedTerminalAdapter {
18
+ toTerminalState: (state: ConversationHostedTerminalStateInput) => HostedLifecycleTerminalState;
19
+ finalizeRun: (terminalState: HostedLifecycleTerminalState) => Promise<void>;
20
+ cancelRun: (terminalState: HostedLifecycleTerminalState) => Promise<void>;
21
+ onTerminalState: (terminalState: HostedLifecycleTerminalState) => Promise<void>;
22
+ dispatch: (state: ConversationHostedTerminalStateInput) => Promise<HostedLifecycleTerminalState>;
23
+ }
24
+ export declare function toConversationHostedTerminalState(input: {
25
+ fallbackModelId: string;
26
+ state: ConversationHostedTerminalStateInput;
27
+ }): HostedLifecycleTerminalState;
28
+ export declare function createConversationHostedTerminalAdapter(options: CreateConversationHostedTerminalAdapterOptions): ConversationHostedTerminalAdapter;
29
+ //# sourceMappingURL=conversation-hosted-terminal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-hosted-terminal.d.ts","sourceRoot":"","sources":["../../../src/src/agent/conversation-hosted-terminal.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,yBAAyB,EAE/B,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAE1E,MAAM,WAAW,oCAAoC;IACnD,MAAM,EAAE,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAC/C,QAAQ,CAAC,EAAE,4BAA4B,CAAC,UAAU,CAAC,CAAC;IACpD,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,8CAA8C;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC7C,eAAe,CAAC,EAAE,CAAC,aAAa,EAAE,4BAA4B,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACzF;AAED,MAAM,WAAW,iCAAiC;IAChD,eAAe,EAAE,CAAC,KAAK,EAAE,oCAAoC,KAAK,4BAA4B,CAAC;IAC/F,WAAW,EAAE,CAAC,aAAa,EAAE,4BAA4B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,SAAS,EAAE,CAAC,aAAa,EAAE,4BAA4B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,eAAe,EAAE,CAAC,aAAa,EAAE,4BAA4B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,QAAQ,EAAE,CAAC,KAAK,EAAE,oCAAoC,KAAK,OAAO,CAAC,4BAA4B,CAAC,CAAC;CAClG;AAqCD,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,oCAAoC,CAAC;CAC7C,GAAG,4BAA4B,CAqB/B;AAED,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,8CAA8C,GACtD,iCAAiC,CAsDnC"}
@@ -0,0 +1,93 @@
1
+ import { finalizeConversationAgentRun, } from "./durable.js";
2
+ function buildConversationHostedLifecycleUsage(usage) {
3
+ if (!usage) {
4
+ return undefined;
5
+ }
6
+ return {
7
+ ...(usage.inputTokens !== undefined ? { inputTokens: usage.inputTokens } : {}),
8
+ ...(usage.outputTokens !== undefined ? { outputTokens: usage.outputTokens } : {}),
9
+ ...(usage.cachedInputTokens !== undefined
10
+ ? { cachedInputTokens: usage.cachedInputTokens }
11
+ : {}),
12
+ };
13
+ }
14
+ function buildConversationAgentRunUsage(usage) {
15
+ if (!usage) {
16
+ return undefined;
17
+ }
18
+ const inputTokens = usage.inputTokens ?? 0;
19
+ const outputTokens = usage.outputTokens ?? 0;
20
+ return {
21
+ inputTokens,
22
+ outputTokens,
23
+ totalTokens: inputTokens + outputTokens,
24
+ };
25
+ }
26
+ export function toConversationHostedTerminalState(input) {
27
+ const modelId = input.state.metadata?.modelId ?? input.fallbackModelId;
28
+ const usage = buildConversationHostedLifecycleUsage(input.state.metadata?.usage);
29
+ return {
30
+ status: input.state.status,
31
+ ...(modelId || usage
32
+ ? {
33
+ metadata: {
34
+ ...(modelId ? { modelId } : {}),
35
+ ...(usage ? { usage } : {}),
36
+ },
37
+ }
38
+ : {}),
39
+ ...(input.state.terminalErrorCode !== undefined
40
+ ? { terminalErrorCode: input.state.terminalErrorCode }
41
+ : {}),
42
+ ...(input.state.terminalErrorMessage !== undefined
43
+ ? { terminalErrorMessage: input.state.terminalErrorMessage }
44
+ : {}),
45
+ };
46
+ }
47
+ export function createConversationHostedTerminalAdapter(options) {
48
+ let durableRunFinalized = false;
49
+ const finalizeDurableRun = async (terminalState, status) => {
50
+ if (!options.run || durableRunFinalized) {
51
+ return;
52
+ }
53
+ durableRunFinalized = true;
54
+ const modelId = terminalState.metadata?.modelId ?? options.fallbackModelId;
55
+ await finalizeConversationAgentRun({
56
+ authToken: options.authToken,
57
+ apiUrl: options.apiUrl,
58
+ conversationId: options.run.conversationId,
59
+ runId: options.run.runId,
60
+ status,
61
+ model: modelId,
62
+ provider: options.resolveProvider(modelId),
63
+ usage: buildConversationAgentRunUsage(terminalState.metadata?.usage),
64
+ terminalErrorCode: terminalState.terminalErrorCode,
65
+ terminalErrorMessage: terminalState.terminalErrorMessage,
66
+ });
67
+ };
68
+ return {
69
+ toTerminalState: (state) => toConversationHostedTerminalState({
70
+ fallbackModelId: options.fallbackModelId,
71
+ state,
72
+ }),
73
+ finalizeRun: (terminalState) => finalizeDurableRun(terminalState, terminalState.status),
74
+ cancelRun: (terminalState) => finalizeDurableRun(terminalState, "cancelled"),
75
+ onTerminalState: async (terminalState) => {
76
+ await options.onTerminalState?.(terminalState);
77
+ },
78
+ dispatch: async (state) => {
79
+ const terminalState = toConversationHostedTerminalState({
80
+ fallbackModelId: options.fallbackModelId,
81
+ state,
82
+ });
83
+ if (terminalState.status === "cancelled") {
84
+ await finalizeDurableRun(terminalState, "cancelled");
85
+ }
86
+ else {
87
+ await finalizeDurableRun(terminalState, terminalState.status);
88
+ }
89
+ await options.onTerminalState?.(terminalState);
90
+ return terminalState;
91
+ },
92
+ };
93
+ }
@@ -0,0 +1,21 @@
1
+ import { type ChatStreamEvent } from "../chat/protocol.js";
2
+ import { type ConversationRunEvent, ConversationRunEventEncoder } from "./conversation-run-events.js";
3
+ import { type ConversationRunMirror, type ConversationRunMirrorRetryScheduledState, type ConversationRunMirrorStoppedState } from "./conversation-run-mirror.js";
4
+ import { type ConversationRunEventQueueController } from "./durable.js";
5
+ export interface ConversationRunStreamMirror {
6
+ handleStreamEvent(event: ChatStreamEvent): void;
7
+ appendEvents(events: ConversationRunEvent[]): void;
8
+ flush(): Promise<void>;
9
+ getSnapshot(): ReturnType<ConversationRunMirror["getSnapshot"]>;
10
+ dispose(): void;
11
+ }
12
+ export declare function createConversationRunStreamMirror(input: {
13
+ queueController: ConversationRunEventQueueController;
14
+ immediateFlushEventCount: number;
15
+ encoder?: ConversationRunEventEncoder;
16
+ flushDelayMs?: number;
17
+ getRetryDelayMs?: (consecutiveFailures: number) => number;
18
+ onRetryScheduled?: (state: ConversationRunMirrorRetryScheduledState) => Promise<void> | void;
19
+ onStopped?: (state: ConversationRunMirrorStoppedState) => Promise<void> | void;
20
+ }): ConversationRunStreamMirror;
21
+ //# sourceMappingURL=conversation-run-stream-mirror.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conversation-run-stream-mirror.d.ts","sourceRoot":"","sources":["../../../src/src/agent/conversation-run-stream-mirror.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACL,KAAK,oBAAoB,EACzB,2BAA2B,EAC5B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,wCAAwC,EAC7C,KAAK,iCAAiC,EAEvC,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,KAAK,mCAAmC,EAAE,MAAM,cAAc,CAAC;AAExE,MAAM,WAAW,2BAA2B;IAC1C,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;IAChD,YAAY,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC;IACnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,WAAW,IAAI,UAAU,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC;IAChE,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,eAAe,EAAE,mCAAmC,CAAC;IACrD,wBAAwB,EAAE,MAAM,CAAC;IACjC,OAAO,CAAC,EAAE,2BAA2B,CAAC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,CAAC,mBAAmB,EAAE,MAAM,KAAK,MAAM,CAAC;IAC1D,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,wCAAwC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC7F,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,iCAAiC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAChF,GAAG,2BAA2B,CA4B9B"}
@@ -0,0 +1,31 @@
1
+ import { ConversationRunEventEncoder, } from "./conversation-run-events.js";
2
+ import { createConversationRunMirror, } from "./conversation-run-mirror.js";
3
+ import { normalizeConversationRunEvents } from "./conversation-run-event-normalization.js";
4
+ export function createConversationRunStreamMirror(input) {
5
+ const encoder = input.encoder ?? new ConversationRunEventEncoder();
6
+ const mirror = createConversationRunMirror({
7
+ queueController: input.queueController,
8
+ immediateFlushEventCount: input.immediateFlushEventCount,
9
+ ...(input.flushDelayMs !== undefined ? { flushDelayMs: input.flushDelayMs } : {}),
10
+ ...(input.getRetryDelayMs ? { getRetryDelayMs: input.getRetryDelayMs } : {}),
11
+ ...(input.onRetryScheduled ? { onRetryScheduled: input.onRetryScheduled } : {}),
12
+ ...(input.onStopped ? { onStopped: input.onStopped } : {}),
13
+ });
14
+ return {
15
+ handleStreamEvent(event) {
16
+ mirror.enqueue(normalizeConversationRunEvents(encoder.encode(event)));
17
+ },
18
+ appendEvents(events) {
19
+ mirror.enqueue(normalizeConversationRunEvents(events));
20
+ },
21
+ flush() {
22
+ return mirror.flush();
23
+ },
24
+ getSnapshot() {
25
+ return mirror.getSnapshot();
26
+ },
27
+ dispose() {
28
+ mirror.dispose();
29
+ },
30
+ };
31
+ }
@@ -92,11 +92,13 @@ export { type AgUiBrowserResponseEncoder, type AgUiBrowserResponseExecution, typ
92
92
  export { type ConversationRunContext, createConversationRunContext, } from "./conversation-run-context.js";
93
93
  export { type ConversationRootRunContext, type ConversationRootRunDescriptor, createConversationRootRunContext, createConversationRootRunStartAdapter, prepareConversationRootRunContext, startConversationRootRun, } from "./conversation-root-run-context.js";
94
94
  export { bootstrapConversationAgentRun, type BootstrapConversationAgentRunResult, type ConversationMessageRecord, ConversationMessageRecordSchema, type ConversationRecord, ConversationRecordSchema, createConversationMessage, createConversationRecord, ensureConversationProjectLink, fetchConversationRecord, } from "./conversation-bootstrap.js";
95
- export { type ConversationChildLifecycleContext, type ConversationHostedLifecycleFinalizeInput, createConversationChildLifecycleAdapter, createConversationHostedLifecycleAdapter, type CreateConversationHostedLifecycleAdapterOptions, } from "./conversation-hosted-lifecycle.js";
95
+ export { type ConversationChildLifecycleContext, type ConversationHostedLifecycleFinalizeInput, createConversationChildLifecycleAdapter, createConversationHostedLifecycleAdapter, type CreateConversationHostedLifecycleAdapterOptions, createConversationHostedStreamLifecycleAdapter, } from "./conversation-hosted-lifecycle.js";
96
+ export { type ConversationHostedTerminalAdapter, type ConversationHostedTerminalStateInput, createConversationHostedTerminalAdapter, type CreateConversationHostedTerminalAdapterOptions, toConversationHostedTerminalState, } from "./conversation-hosted-terminal.js";
96
97
  export { getConversationRunEventJsonByteLength, normalizeConversationRunEvent, normalizeConversationRunEvents, } from "./conversation-run-event-normalization.js";
97
98
  export { type ConversationRunEvent, ConversationRunEventEncoder, ConversationRunEventSchema, conversationRunEventTypes, encodeConversationRunEvents, normalizeEncodedConversationRunEvents, } from "./conversation-run-events.js";
98
99
  export { prepareConversationRunExternalEvents, prepareConversationRunStreamEvents, } from "./conversation-run-event-preparation.js";
99
100
  export { type ConversationRunMirror, type ConversationRunMirrorRetryScheduledState, type ConversationRunMirrorSnapshot, type ConversationRunMirrorStoppedState, createConversationRunMirror, } from "./conversation-run-mirror.js";
101
+ export { type ConversationRunStreamMirror, createConversationRunStreamMirror, } from "./conversation-run-stream-mirror.js";
100
102
  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";
101
103
  export { buildInvokeAgentChildRunLifecycleCustomEvent, buildInvokeAgentChildRunProgressEvents, buildInvokeAgentChildRunStateDelta, type InvokeAgentChildRunLifecycleCustomEvent, InvokeAgentChildRunLifecycleCustomEventSchema, type InvokeAgentChildRunLifecycleValue, InvokeAgentChildRunLifecycleValueSchema, type InvokeAgentChildRunProgressEvent, type InvokeAgentChildRunProgressInput, type InvokeAgentChildRunStateDelta, InvokeAgentChildRunStateDeltaSchema, publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
102
104
  export { type HostedChildLifecycleAdapter, type HostedChildLifecycleRunnerOptions, type HostedChildLifecycleRunResult, type HostedChildLifecycleTerminalState, runHostedChildLifecycle, } from "./hosted-child-lifecycle.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/agent/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/agent/index.ts"],"names":[],"mappings":"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"}
@@ -91,11 +91,13 @@ export { createAgUiBrowserResponseStream, } from "./ag-ui-browser-response-strea
91
91
  export { createConversationRunContext, } from "./conversation-run-context.js";
92
92
  export { createConversationRootRunContext, createConversationRootRunStartAdapter, prepareConversationRootRunContext, startConversationRootRun, } from "./conversation-root-run-context.js";
93
93
  export { bootstrapConversationAgentRun, ConversationMessageRecordSchema, ConversationRecordSchema, createConversationMessage, createConversationRecord, ensureConversationProjectLink, fetchConversationRecord, } from "./conversation-bootstrap.js";
94
- export { createConversationChildLifecycleAdapter, createConversationHostedLifecycleAdapter, } from "./conversation-hosted-lifecycle.js";
94
+ export { createConversationChildLifecycleAdapter, createConversationHostedLifecycleAdapter, createConversationHostedStreamLifecycleAdapter, } from "./conversation-hosted-lifecycle.js";
95
+ export { createConversationHostedTerminalAdapter, toConversationHostedTerminalState, } from "./conversation-hosted-terminal.js";
95
96
  export { getConversationRunEventJsonByteLength, normalizeConversationRunEvent, normalizeConversationRunEvents, } from "./conversation-run-event-normalization.js";
96
97
  export { ConversationRunEventEncoder, ConversationRunEventSchema, conversationRunEventTypes, encodeConversationRunEvents, normalizeEncodedConversationRunEvents, } from "./conversation-run-events.js";
97
98
  export { prepareConversationRunExternalEvents, prepareConversationRunStreamEvents, } from "./conversation-run-event-preparation.js";
98
99
  export { createConversationRunMirror, } from "./conversation-run-mirror.js";
100
+ export { createConversationRunStreamMirror, } from "./conversation-run-stream-mirror.js";
99
101
  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";
100
102
  export { buildInvokeAgentChildRunLifecycleCustomEvent, buildInvokeAgentChildRunProgressEvents, buildInvokeAgentChildRunStateDelta, InvokeAgentChildRunLifecycleCustomEventSchema, InvokeAgentChildRunLifecycleValueSchema, InvokeAgentChildRunStateDeltaSchema, publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
101
103
  export { runHostedChildLifecycle, } from "./hosted-child-lifecycle.js";
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.1.254";
1
+ export declare const VERSION = "0.1.256";
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.254";
3
+ export const VERSION = "0.1.256";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "veryfront",
3
- "version": "0.1.254",
3
+ "version": "0.1.256",
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.254",
3
+ "version": "0.1.256",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "workspace": [
@@ -4,11 +4,13 @@ import {
4
4
  type ConversationRunProjection,
5
5
  finalizeConversationAgentRun,
6
6
  } from "./durable.js";
7
+ import { prepareConversationRunStreamEvents } from "./conversation-run-event-preparation.js";
7
8
  import {
8
9
  type InvokeAgentChildRunProgressEvent,
9
10
  type InvokeAgentChildRunProgressInput,
10
11
  publishInvokeAgentChildRunProgress,
11
12
  } from "./invoke-agent-child-runs.js";
13
+ import type { ChatStreamEvent } from "../chat/protocol.js";
12
14
  import type {
13
15
  HostedChildLifecycleAdapter,
14
16
  HostedChildLifecycleTerminalState,
@@ -100,6 +102,18 @@ export function createConversationHostedLifecycleAdapter<TChunk>(
100
102
  };
101
103
  }
102
104
 
105
+ export function createConversationHostedStreamLifecycleAdapter(
106
+ options: Omit<
107
+ CreateConversationHostedLifecycleAdapterOptions<ChatStreamEvent>,
108
+ "mapChunkToEvents"
109
+ >,
110
+ ): HostedLifecycleAdapter<ConversationRunProjection, ChatStreamEvent> {
111
+ return createConversationHostedLifecycleAdapter({
112
+ ...options,
113
+ mapChunkToEvents: (chunk) => prepareConversationRunStreamEvents([chunk]),
114
+ });
115
+ }
116
+
103
117
  export interface ConversationChildLifecycleContext {
104
118
  authToken: string;
105
119
  apiUrl: string;
@@ -0,0 +1,149 @@
1
+ import {
2
+ type ConversationAgentRunUsage,
3
+ type ConversationRunProjection,
4
+ finalizeConversationAgentRun,
5
+ } from "./durable.js";
6
+ import type { HostedLifecycleTerminalState } from "./hosted-lifecycle.js";
7
+
8
+ export interface ConversationHostedTerminalStateInput {
9
+ status: HostedLifecycleTerminalState["status"];
10
+ metadata?: HostedLifecycleTerminalState["metadata"];
11
+ terminalErrorCode?: string | null;
12
+ terminalErrorMessage?: string | null;
13
+ }
14
+
15
+ export interface CreateConversationHostedTerminalAdapterOptions {
16
+ authToken: string;
17
+ apiUrl: string;
18
+ run: ConversationRunProjection | null;
19
+ fallbackModelId: string;
20
+ resolveProvider: (modelId: string) => string;
21
+ onTerminalState?: (terminalState: HostedLifecycleTerminalState) => Promise<void> | void;
22
+ }
23
+
24
+ export interface ConversationHostedTerminalAdapter {
25
+ toTerminalState: (state: ConversationHostedTerminalStateInput) => HostedLifecycleTerminalState;
26
+ finalizeRun: (terminalState: HostedLifecycleTerminalState) => Promise<void>;
27
+ cancelRun: (terminalState: HostedLifecycleTerminalState) => Promise<void>;
28
+ onTerminalState: (terminalState: HostedLifecycleTerminalState) => Promise<void>;
29
+ dispatch: (state: ConversationHostedTerminalStateInput) => Promise<HostedLifecycleTerminalState>;
30
+ }
31
+
32
+ type HostedLifecycleUsage = NonNullable<HostedLifecycleTerminalState["metadata"]>["usage"];
33
+
34
+ function buildConversationHostedLifecycleUsage(
35
+ usage: HostedLifecycleUsage | undefined,
36
+ ): HostedLifecycleUsage | undefined {
37
+ if (!usage) {
38
+ return undefined;
39
+ }
40
+
41
+ return {
42
+ ...(usage.inputTokens !== undefined ? { inputTokens: usage.inputTokens } : {}),
43
+ ...(usage.outputTokens !== undefined ? { outputTokens: usage.outputTokens } : {}),
44
+ ...(usage.cachedInputTokens !== undefined
45
+ ? { cachedInputTokens: usage.cachedInputTokens }
46
+ : {}),
47
+ };
48
+ }
49
+
50
+ function buildConversationAgentRunUsage(
51
+ usage: HostedLifecycleUsage | undefined,
52
+ ): ConversationAgentRunUsage | undefined {
53
+ if (!usage) {
54
+ return undefined;
55
+ }
56
+
57
+ const inputTokens = usage.inputTokens ?? 0;
58
+ const outputTokens = usage.outputTokens ?? 0;
59
+
60
+ return {
61
+ inputTokens,
62
+ outputTokens,
63
+ totalTokens: inputTokens + outputTokens,
64
+ };
65
+ }
66
+
67
+ export function toConversationHostedTerminalState(input: {
68
+ fallbackModelId: string;
69
+ state: ConversationHostedTerminalStateInput;
70
+ }): HostedLifecycleTerminalState {
71
+ const modelId = input.state.metadata?.modelId ?? input.fallbackModelId;
72
+ const usage = buildConversationHostedLifecycleUsage(input.state.metadata?.usage);
73
+
74
+ return {
75
+ status: input.state.status,
76
+ ...(modelId || usage
77
+ ? {
78
+ metadata: {
79
+ ...(modelId ? { modelId } : {}),
80
+ ...(usage ? { usage } : {}),
81
+ },
82
+ }
83
+ : {}),
84
+ ...(input.state.terminalErrorCode !== undefined
85
+ ? { terminalErrorCode: input.state.terminalErrorCode }
86
+ : {}),
87
+ ...(input.state.terminalErrorMessage !== undefined
88
+ ? { terminalErrorMessage: input.state.terminalErrorMessage }
89
+ : {}),
90
+ };
91
+ }
92
+
93
+ export function createConversationHostedTerminalAdapter(
94
+ options: CreateConversationHostedTerminalAdapterOptions,
95
+ ): ConversationHostedTerminalAdapter {
96
+ let durableRunFinalized = false;
97
+
98
+ const finalizeDurableRun = async (
99
+ terminalState: HostedLifecycleTerminalState,
100
+ status: HostedLifecycleTerminalState["status"],
101
+ ): Promise<void> => {
102
+ if (!options.run || durableRunFinalized) {
103
+ return;
104
+ }
105
+
106
+ durableRunFinalized = true;
107
+ const modelId = terminalState.metadata?.modelId ?? options.fallbackModelId;
108
+
109
+ await finalizeConversationAgentRun({
110
+ authToken: options.authToken,
111
+ apiUrl: options.apiUrl,
112
+ conversationId: options.run.conversationId,
113
+ runId: options.run.runId,
114
+ status,
115
+ model: modelId,
116
+ provider: options.resolveProvider(modelId),
117
+ usage: buildConversationAgentRunUsage(terminalState.metadata?.usage),
118
+ terminalErrorCode: terminalState.terminalErrorCode,
119
+ terminalErrorMessage: terminalState.terminalErrorMessage,
120
+ });
121
+ };
122
+
123
+ return {
124
+ toTerminalState: (state) =>
125
+ toConversationHostedTerminalState({
126
+ fallbackModelId: options.fallbackModelId,
127
+ state,
128
+ }),
129
+ finalizeRun: (terminalState) => finalizeDurableRun(terminalState, terminalState.status),
130
+ cancelRun: (terminalState) => finalizeDurableRun(terminalState, "cancelled"),
131
+ onTerminalState: async (terminalState) => {
132
+ await options.onTerminalState?.(terminalState);
133
+ },
134
+ dispatch: async (state) => {
135
+ const terminalState = toConversationHostedTerminalState({
136
+ fallbackModelId: options.fallbackModelId,
137
+ state,
138
+ });
139
+
140
+ if (terminalState.status === "cancelled") {
141
+ await finalizeDurableRun(terminalState, "cancelled");
142
+ } else {
143
+ await finalizeDurableRun(terminalState, terminalState.status);
144
+ }
145
+ await options.onTerminalState?.(terminalState);
146
+ return terminalState;
147
+ },
148
+ };
149
+ }
@@ -0,0 +1,59 @@
1
+ import { type ChatStreamEvent } from "../chat/protocol.js";
2
+ import {
3
+ type ConversationRunEvent,
4
+ ConversationRunEventEncoder,
5
+ } from "./conversation-run-events.js";
6
+ import {
7
+ type ConversationRunMirror,
8
+ type ConversationRunMirrorRetryScheduledState,
9
+ type ConversationRunMirrorStoppedState,
10
+ createConversationRunMirror,
11
+ } from "./conversation-run-mirror.js";
12
+ import { normalizeConversationRunEvents } from "./conversation-run-event-normalization.js";
13
+ import { type ConversationRunEventQueueController } from "./durable.js";
14
+
15
+ export interface ConversationRunStreamMirror {
16
+ handleStreamEvent(event: ChatStreamEvent): void;
17
+ appendEvents(events: ConversationRunEvent[]): void;
18
+ flush(): Promise<void>;
19
+ getSnapshot(): ReturnType<ConversationRunMirror["getSnapshot"]>;
20
+ dispose(): void;
21
+ }
22
+
23
+ export function createConversationRunStreamMirror(input: {
24
+ queueController: ConversationRunEventQueueController;
25
+ immediateFlushEventCount: number;
26
+ encoder?: ConversationRunEventEncoder;
27
+ flushDelayMs?: number;
28
+ getRetryDelayMs?: (consecutiveFailures: number) => number;
29
+ onRetryScheduled?: (state: ConversationRunMirrorRetryScheduledState) => Promise<void> | void;
30
+ onStopped?: (state: ConversationRunMirrorStoppedState) => Promise<void> | void;
31
+ }): ConversationRunStreamMirror {
32
+ const encoder = input.encoder ?? new ConversationRunEventEncoder();
33
+ const mirror = createConversationRunMirror({
34
+ queueController: input.queueController,
35
+ immediateFlushEventCount: input.immediateFlushEventCount,
36
+ ...(input.flushDelayMs !== undefined ? { flushDelayMs: input.flushDelayMs } : {}),
37
+ ...(input.getRetryDelayMs ? { getRetryDelayMs: input.getRetryDelayMs } : {}),
38
+ ...(input.onRetryScheduled ? { onRetryScheduled: input.onRetryScheduled } : {}),
39
+ ...(input.onStopped ? { onStopped: input.onStopped } : {}),
40
+ });
41
+
42
+ return {
43
+ handleStreamEvent(event) {
44
+ mirror.enqueue(normalizeConversationRunEvents(encoder.encode(event)));
45
+ },
46
+ appendEvents(events) {
47
+ mirror.enqueue(normalizeConversationRunEvents(events));
48
+ },
49
+ flush() {
50
+ return mirror.flush();
51
+ },
52
+ getSnapshot() {
53
+ return mirror.getSnapshot();
54
+ },
55
+ dispose() {
56
+ mirror.dispose();
57
+ },
58
+ };
59
+ }
@@ -210,7 +210,15 @@ export {
210
210
  createConversationChildLifecycleAdapter,
211
211
  createConversationHostedLifecycleAdapter,
212
212
  type CreateConversationHostedLifecycleAdapterOptions,
213
+ createConversationHostedStreamLifecycleAdapter,
213
214
  } from "./conversation-hosted-lifecycle.js";
215
+ export {
216
+ type ConversationHostedTerminalAdapter,
217
+ type ConversationHostedTerminalStateInput,
218
+ createConversationHostedTerminalAdapter,
219
+ type CreateConversationHostedTerminalAdapterOptions,
220
+ toConversationHostedTerminalState,
221
+ } from "./conversation-hosted-terminal.js";
214
222
  export {
215
223
  getConversationRunEventJsonByteLength,
216
224
  normalizeConversationRunEvent,
@@ -235,6 +243,10 @@ export {
235
243
  type ConversationRunMirrorStoppedState,
236
244
  createConversationRunMirror,
237
245
  } from "./conversation-run-mirror.js";
246
+ export {
247
+ type ConversationRunStreamMirror,
248
+ createConversationRunStreamMirror,
249
+ } from "./conversation-run-stream-mirror.js";
238
250
  export {
239
251
  type ActiveConversationRunStatus,
240
252
  appendConversationRunEvents,
@@ -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.254";
3
+ export const VERSION = "0.1.256";