veryfront 0.1.235 → 0.1.237
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/deno.js +1 -1
- package/esm/src/agent/conversation-hosted-lifecycle.d.ts +37 -0
- package/esm/src/agent/conversation-hosted-lifecycle.d.ts.map +1 -0
- package/esm/src/agent/conversation-hosted-lifecycle.js +131 -0
- package/esm/src/agent/durable.d.ts.map +1 -1
- package/esm/src/agent/durable.js +12 -10
- package/esm/src/agent/index.d.ts +1 -0
- package/esm/src/agent/index.d.ts.map +1 -1
- package/esm/src/agent/index.js +1 -0
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/package.json +1 -1
- package/src/deno.js +1 -1
- package/src/src/agent/conversation-hosted-lifecycle.ts +199 -0
- package/src/src/agent/durable.ts +16 -14
- package/src/src/agent/index.ts +7 -0
- package/src/src/utils/version-constant.ts +1 -1
package/esm/deno.js
CHANGED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { type ConversationAgentRunUsage, type ConversationRunProjection } from "./durable.js";
|
|
2
|
+
import { type InvokeAgentChildRunProgressEvent, type InvokeAgentChildRunProgressInput } from "./invoke-agent-child-runs.js";
|
|
3
|
+
import type { HostedChildLifecycleAdapter } from "./hosted-child-lifecycle.js";
|
|
4
|
+
import type { HostedLifecycleAdapter, HostedLifecycleTerminalState } from "./hosted-lifecycle.js";
|
|
5
|
+
export interface ConversationHostedLifecycleFinalizeInput {
|
|
6
|
+
model: string;
|
|
7
|
+
provider: string;
|
|
8
|
+
usage?: ConversationAgentRunUsage;
|
|
9
|
+
terminalErrorCode?: string | null;
|
|
10
|
+
terminalErrorMessage?: string | null;
|
|
11
|
+
}
|
|
12
|
+
export interface CreateConversationHostedLifecycleAdapterOptions<TChunk> {
|
|
13
|
+
authToken: string;
|
|
14
|
+
apiUrl: string;
|
|
15
|
+
startRun: (input: {
|
|
16
|
+
abortSignal: AbortSignal;
|
|
17
|
+
}) => Promise<ConversationRunProjection> | ConversationRunProjection;
|
|
18
|
+
mapChunkToEvents?: (chunk: TChunk, run: ConversationRunProjection) => Promise<readonly unknown[] | unknown[]> | readonly unknown[] | unknown[];
|
|
19
|
+
resolveFinalizeInput: (input: {
|
|
20
|
+
run: ConversationRunProjection;
|
|
21
|
+
terminalState: HostedLifecycleTerminalState;
|
|
22
|
+
}) => Promise<ConversationHostedLifecycleFinalizeInput> | ConversationHostedLifecycleFinalizeInput;
|
|
23
|
+
}
|
|
24
|
+
export declare function createConversationHostedLifecycleAdapter<TChunk>(options: CreateConversationHostedLifecycleAdapterOptions<TChunk>): HostedLifecycleAdapter<ConversationRunProjection, TChunk>;
|
|
25
|
+
export interface ConversationChildLifecycleContext {
|
|
26
|
+
authToken: string;
|
|
27
|
+
apiUrl: string;
|
|
28
|
+
parentConversationId: string;
|
|
29
|
+
parentRunId: string;
|
|
30
|
+
projectId?: string | null;
|
|
31
|
+
publishParentRunEvents?: (events: InvokeAgentChildRunProgressEvent[]) => Promise<void> | void;
|
|
32
|
+
progress: Omit<InvokeAgentChildRunProgressInput, "status">;
|
|
33
|
+
model: string;
|
|
34
|
+
provider: string;
|
|
35
|
+
}
|
|
36
|
+
export declare function createConversationChildLifecycleAdapter(ctx: ConversationChildLifecycleContext): HostedChildLifecycleAdapter;
|
|
37
|
+
//# sourceMappingURL=conversation-hosted-lifecycle.d.ts.map
|
|
@@ -0,0 +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"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { appendConversationRunEvents, finalizeConversationAgentRun, } from "./durable.js";
|
|
2
|
+
import { publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
|
|
3
|
+
export function createConversationHostedLifecycleAdapter(options) {
|
|
4
|
+
return {
|
|
5
|
+
startRun: options.startRun,
|
|
6
|
+
appendEvents: options.mapChunkToEvents
|
|
7
|
+
? async (run, chunk) => {
|
|
8
|
+
const events = [...await options.mapChunkToEvents(chunk, run)];
|
|
9
|
+
if (events.length === 0) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const appended = await appendConversationRunEvents({
|
|
13
|
+
authToken: options.authToken,
|
|
14
|
+
apiUrl: options.apiUrl,
|
|
15
|
+
conversationId: run.conversationId,
|
|
16
|
+
runId: run.runId,
|
|
17
|
+
expectedPreviousEventId: run.latestEventId,
|
|
18
|
+
expectedPreviousExternalEventSequence: run.latestExternalEventSequence,
|
|
19
|
+
events,
|
|
20
|
+
});
|
|
21
|
+
run.latestEventId = appended.latestEventId;
|
|
22
|
+
run.latestExternalEventSequence = appended.latestExternalEventSequence;
|
|
23
|
+
}
|
|
24
|
+
: undefined,
|
|
25
|
+
finalizeRun: async (run, terminalState) => {
|
|
26
|
+
const finalizeInput = await options.resolveFinalizeInput({ run, terminalState });
|
|
27
|
+
await finalizeConversationAgentRun({
|
|
28
|
+
authToken: options.authToken,
|
|
29
|
+
apiUrl: options.apiUrl,
|
|
30
|
+
conversationId: run.conversationId,
|
|
31
|
+
runId: run.runId,
|
|
32
|
+
status: terminalState.status,
|
|
33
|
+
model: finalizeInput.model,
|
|
34
|
+
provider: finalizeInput.provider,
|
|
35
|
+
usage: finalizeInput.usage,
|
|
36
|
+
terminalErrorCode: finalizeInput.terminalErrorCode,
|
|
37
|
+
terminalErrorMessage: finalizeInput.terminalErrorMessage,
|
|
38
|
+
});
|
|
39
|
+
},
|
|
40
|
+
cancelRun: async (run, terminalState) => {
|
|
41
|
+
const finalizeInput = await options.resolveFinalizeInput({ run, terminalState });
|
|
42
|
+
await finalizeConversationAgentRun({
|
|
43
|
+
authToken: options.authToken,
|
|
44
|
+
apiUrl: options.apiUrl,
|
|
45
|
+
conversationId: run.conversationId,
|
|
46
|
+
runId: run.runId,
|
|
47
|
+
status: "cancelled",
|
|
48
|
+
model: finalizeInput.model,
|
|
49
|
+
provider: finalizeInput.provider,
|
|
50
|
+
usage: finalizeInput.usage,
|
|
51
|
+
terminalErrorCode: finalizeInput.terminalErrorCode,
|
|
52
|
+
terminalErrorMessage: finalizeInput.terminalErrorMessage,
|
|
53
|
+
});
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function toConversationChildUsage(usage) {
|
|
58
|
+
if (!usage) {
|
|
59
|
+
return undefined;
|
|
60
|
+
}
|
|
61
|
+
const inputTokens = usage.inputTokens ?? 0;
|
|
62
|
+
const outputTokens = usage.outputTokens ?? 0;
|
|
63
|
+
return {
|
|
64
|
+
inputTokens,
|
|
65
|
+
outputTokens,
|
|
66
|
+
totalTokens: usage.totalTokens ?? inputTokens + outputTokens,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
async function publishConversationChildProgress(ctx, status) {
|
|
70
|
+
await publishInvokeAgentChildRunProgress({
|
|
71
|
+
authToken: ctx.authToken,
|
|
72
|
+
apiUrl: ctx.apiUrl,
|
|
73
|
+
conversationId: ctx.parentConversationId,
|
|
74
|
+
runId: ctx.parentRunId,
|
|
75
|
+
...(ctx.projectId !== undefined ? { projectId: ctx.projectId } : {}),
|
|
76
|
+
...ctx.progress,
|
|
77
|
+
status,
|
|
78
|
+
...(ctx.publishParentRunEvents ? { publishParentRunEvents: ctx.publishParentRunEvents } : {}),
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
export function createConversationChildLifecycleAdapter(ctx) {
|
|
82
|
+
return {
|
|
83
|
+
pending: () => publishConversationChildProgress(ctx, "pending"),
|
|
84
|
+
running: () => publishConversationChildProgress(ctx, "running"),
|
|
85
|
+
completed: async (terminalState) => {
|
|
86
|
+
await finalizeConversationAgentRun({
|
|
87
|
+
authToken: ctx.authToken,
|
|
88
|
+
apiUrl: ctx.apiUrl,
|
|
89
|
+
conversationId: ctx.progress.childConversationId,
|
|
90
|
+
runId: ctx.progress.childRunId,
|
|
91
|
+
status: "completed",
|
|
92
|
+
model: ctx.model,
|
|
93
|
+
provider: ctx.provider,
|
|
94
|
+
usage: toConversationChildUsage(terminalState.usage),
|
|
95
|
+
terminalErrorCode: null,
|
|
96
|
+
terminalErrorMessage: null,
|
|
97
|
+
});
|
|
98
|
+
await publishConversationChildProgress(ctx, "completed");
|
|
99
|
+
},
|
|
100
|
+
failed: async (terminalState) => {
|
|
101
|
+
await finalizeConversationAgentRun({
|
|
102
|
+
authToken: ctx.authToken,
|
|
103
|
+
apiUrl: ctx.apiUrl,
|
|
104
|
+
conversationId: ctx.progress.childConversationId,
|
|
105
|
+
runId: ctx.progress.childRunId,
|
|
106
|
+
status: "failed",
|
|
107
|
+
model: ctx.model,
|
|
108
|
+
provider: ctx.provider,
|
|
109
|
+
usage: toConversationChildUsage(terminalState.usage),
|
|
110
|
+
terminalErrorCode: terminalState.terminalErrorCode ?? "FAILED",
|
|
111
|
+
terminalErrorMessage: terminalState.terminalErrorMessage ?? "Unknown error",
|
|
112
|
+
});
|
|
113
|
+
await publishConversationChildProgress(ctx, "failed");
|
|
114
|
+
},
|
|
115
|
+
cancelled: async (terminalState) => {
|
|
116
|
+
await finalizeConversationAgentRun({
|
|
117
|
+
authToken: ctx.authToken,
|
|
118
|
+
apiUrl: ctx.apiUrl,
|
|
119
|
+
conversationId: ctx.progress.childConversationId,
|
|
120
|
+
runId: ctx.progress.childRunId,
|
|
121
|
+
status: "cancelled",
|
|
122
|
+
model: ctx.model,
|
|
123
|
+
provider: ctx.provider,
|
|
124
|
+
usage: toConversationChildUsage(terminalState.usage),
|
|
125
|
+
terminalErrorCode: terminalState.terminalErrorCode ?? "CANCELLED",
|
|
126
|
+
terminalErrorMessage: terminalState.terminalErrorMessage ?? "Child run cancelled",
|
|
127
|
+
});
|
|
128
|
+
await publishConversationChildProgress(ctx, "cancelled");
|
|
129
|
+
},
|
|
130
|
+
};
|
|
131
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durable.d.ts","sourceRoot":"","sources":["../../../src/src/agent/durable.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"durable.d.ts","sourceRoot":"","sources":["../../../src/src/agent/durable.ts"],"names":[],"mappings":"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"}
|
package/esm/src/agent/durable.js
CHANGED
|
@@ -293,23 +293,15 @@ export async function monitorConversationRunStatus(input) {
|
|
|
293
293
|
if (input.abortSignal?.aborted) {
|
|
294
294
|
return;
|
|
295
295
|
}
|
|
296
|
+
let run;
|
|
296
297
|
try {
|
|
297
|
-
|
|
298
|
+
run = await getConversationRun({
|
|
298
299
|
authToken: input.authToken,
|
|
299
300
|
apiUrl: input.apiUrl,
|
|
300
301
|
conversationId: input.conversationId,
|
|
301
302
|
runId: input.runId,
|
|
302
303
|
abortSignal: input.abortSignal,
|
|
303
304
|
});
|
|
304
|
-
if (isActiveConversationRunStatus(run.status)) {
|
|
305
|
-
continue;
|
|
306
|
-
}
|
|
307
|
-
if (run.status === "completed" ||
|
|
308
|
-
run.status === "failed" ||
|
|
309
|
-
run.status === "cancelled") {
|
|
310
|
-
await input.onTerminal(new ConversationRunTerminalStateError(run, run.status));
|
|
311
|
-
}
|
|
312
|
-
return;
|
|
313
305
|
}
|
|
314
306
|
catch (error) {
|
|
315
307
|
if (input.abortSignal?.aborted) {
|
|
@@ -319,7 +311,17 @@ export async function monitorConversationRunStatus(input) {
|
|
|
319
311
|
return;
|
|
320
312
|
}
|
|
321
313
|
await input.onPollError?.(error);
|
|
314
|
+
continue;
|
|
322
315
|
}
|
|
316
|
+
if (isActiveConversationRunStatus(run.status)) {
|
|
317
|
+
continue;
|
|
318
|
+
}
|
|
319
|
+
if (run.status === "completed" ||
|
|
320
|
+
run.status === "failed" ||
|
|
321
|
+
run.status === "cancelled") {
|
|
322
|
+
await input.onTerminal(new ConversationRunTerminalStateError(run, run.status));
|
|
323
|
+
}
|
|
324
|
+
return;
|
|
323
325
|
}
|
|
324
326
|
}
|
|
325
327
|
export async function appendConversationRunEvents(input) {
|
package/esm/src/agent/index.d.ts
CHANGED
|
@@ -90,6 +90,7 @@ export { normalizeAgUiRuntimeMessages } from "./ag-ui-runtime-support.js";
|
|
|
90
90
|
export { type AgUiBrowserEncodedEvent, type AgUiBrowserEncoderState, type AgUiBrowserRunFinishedMetadata, type AgUiRuntimeStreamEvent, buildAgUiBrowserFinalizeResponse, createAgUiBrowserEncoderState, finalizeAgUiBrowserEvents, mapRuntimeStreamEventToAgUiBrowserEvents, } from "./ag-ui-browser-encoder.js";
|
|
91
91
|
export { type AgUiBrowserResponseEncoder, type AgUiBrowserResponseExecution, type AgUiBrowserResponseRequestState, createAgUiBrowserResponseStream, type CreateAgUiBrowserResponseStreamInput, } from "./ag-ui-browser-response-stream.js";
|
|
92
92
|
export { bootstrapConversationAgentRun, type BootstrapConversationAgentRunResult, type ConversationMessageRecord, ConversationMessageRecordSchema, type ConversationRecord, ConversationRecordSchema, createConversationMessage, createConversationRecord, ensureConversationProjectLink, fetchConversationRecord, } from "./conversation-bootstrap.js";
|
|
93
|
+
export { type ConversationChildLifecycleContext, type ConversationHostedLifecycleFinalizeInput, createConversationChildLifecycleAdapter, createConversationHostedLifecycleAdapter, type CreateConversationHostedLifecycleAdapterOptions, } from "./conversation-hosted-lifecycle.js";
|
|
93
94
|
export { type ActiveConversationRunStatus, appendConversationRunEvents, AppendConversationRunEventsError, type AppendConversationRunEventsResponse, AppendConversationRunEventsResponseSchema, CompleteConversationRunResponseSchema, type ConversationAgentRunUsage, type ConversationRunProjection, ConversationRunProjectionSchema, ConversationRunStatusSchema, type ConversationRunTargets, ConversationRunTargetsSchema, ConversationRunTerminalStateError, createConversationAgentRun, finalizeConversationAgentRun, getConversationRun, isActiveConversationRunStatus, isCursorMismatchConversationRunAppendError, isIgnorableConversationRunAppendError, monitorConversationRunStatus, parseAppendConversationRunEventsErrorBody, resolveConversationRunTargets, type TerminalConversationRunStatus, } from "./durable.js";
|
|
94
95
|
export { buildInvokeAgentChildRunLifecycleCustomEvent, buildInvokeAgentChildRunProgressEvents, buildInvokeAgentChildRunStateDelta, type InvokeAgentChildRunLifecycleCustomEvent, InvokeAgentChildRunLifecycleCustomEventSchema, type InvokeAgentChildRunLifecycleValue, InvokeAgentChildRunLifecycleValueSchema, type InvokeAgentChildRunProgressEvent, type InvokeAgentChildRunProgressInput, type InvokeAgentChildRunStateDelta, InvokeAgentChildRunStateDeltaSchema, publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
|
|
95
96
|
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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"}
|
package/esm/src/agent/index.js
CHANGED
|
@@ -89,6 +89,7 @@ export { normalizeAgUiRuntimeMessages } from "./ag-ui-runtime-support.js";
|
|
|
89
89
|
export { buildAgUiBrowserFinalizeResponse, createAgUiBrowserEncoderState, finalizeAgUiBrowserEvents, mapRuntimeStreamEventToAgUiBrowserEvents, } from "./ag-ui-browser-encoder.js";
|
|
90
90
|
export { createAgUiBrowserResponseStream, } from "./ag-ui-browser-response-stream.js";
|
|
91
91
|
export { bootstrapConversationAgentRun, ConversationMessageRecordSchema, ConversationRecordSchema, createConversationMessage, createConversationRecord, ensureConversationProjectLink, fetchConversationRecord, } from "./conversation-bootstrap.js";
|
|
92
|
+
export { createConversationChildLifecycleAdapter, createConversationHostedLifecycleAdapter, } from "./conversation-hosted-lifecycle.js";
|
|
92
93
|
export { appendConversationRunEvents, AppendConversationRunEventsError, AppendConversationRunEventsResponseSchema, CompleteConversationRunResponseSchema, ConversationRunProjectionSchema, ConversationRunStatusSchema, ConversationRunTargetsSchema, ConversationRunTerminalStateError, createConversationAgentRun, finalizeConversationAgentRun, getConversationRun, isActiveConversationRunStatus, isCursorMismatchConversationRunAppendError, isIgnorableConversationRunAppendError, monitorConversationRunStatus, parseAppendConversationRunEventsErrorBody, resolveConversationRunTargets, } from "./durable.js";
|
|
93
94
|
export { buildInvokeAgentChildRunLifecycleCustomEvent, buildInvokeAgentChildRunProgressEvents, buildInvokeAgentChildRunStateDelta, InvokeAgentChildRunLifecycleCustomEventSchema, InvokeAgentChildRunLifecycleValueSchema, InvokeAgentChildRunStateDeltaSchema, publishInvokeAgentChildRunProgress, } from "./invoke-agent-child-runs.js";
|
|
94
95
|
export { runHostedChildLifecycle, } from "./hosted-child-lifecycle.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.1.
|
|
1
|
+
export declare const VERSION = "0.1.237";
|
|
2
2
|
//# sourceMappingURL=version-constant.d.ts.map
|
package/package.json
CHANGED
package/src/deno.js
CHANGED
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import {
|
|
2
|
+
appendConversationRunEvents,
|
|
3
|
+
type ConversationAgentRunUsage,
|
|
4
|
+
type ConversationRunProjection,
|
|
5
|
+
finalizeConversationAgentRun,
|
|
6
|
+
} from "./durable.js";
|
|
7
|
+
import {
|
|
8
|
+
type InvokeAgentChildRunProgressEvent,
|
|
9
|
+
type InvokeAgentChildRunProgressInput,
|
|
10
|
+
publishInvokeAgentChildRunProgress,
|
|
11
|
+
} from "./invoke-agent-child-runs.js";
|
|
12
|
+
import type {
|
|
13
|
+
HostedChildLifecycleAdapter,
|
|
14
|
+
HostedChildLifecycleTerminalState,
|
|
15
|
+
} from "./hosted-child-lifecycle.js";
|
|
16
|
+
import type { HostedLifecycleAdapter, HostedLifecycleTerminalState } from "./hosted-lifecycle.js";
|
|
17
|
+
|
|
18
|
+
export interface ConversationHostedLifecycleFinalizeInput {
|
|
19
|
+
model: string;
|
|
20
|
+
provider: string;
|
|
21
|
+
usage?: ConversationAgentRunUsage;
|
|
22
|
+
terminalErrorCode?: string | null;
|
|
23
|
+
terminalErrorMessage?: string | null;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface CreateConversationHostedLifecycleAdapterOptions<TChunk> {
|
|
27
|
+
authToken: string;
|
|
28
|
+
apiUrl: string;
|
|
29
|
+
startRun: (
|
|
30
|
+
input: { abortSignal: AbortSignal },
|
|
31
|
+
) => Promise<ConversationRunProjection> | ConversationRunProjection;
|
|
32
|
+
mapChunkToEvents?: (
|
|
33
|
+
chunk: TChunk,
|
|
34
|
+
run: ConversationRunProjection,
|
|
35
|
+
) => Promise<readonly unknown[] | unknown[]> | readonly unknown[] | unknown[];
|
|
36
|
+
resolveFinalizeInput: (input: {
|
|
37
|
+
run: ConversationRunProjection;
|
|
38
|
+
terminalState: HostedLifecycleTerminalState;
|
|
39
|
+
}) =>
|
|
40
|
+
| Promise<ConversationHostedLifecycleFinalizeInput>
|
|
41
|
+
| ConversationHostedLifecycleFinalizeInput;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function createConversationHostedLifecycleAdapter<TChunk>(
|
|
45
|
+
options: CreateConversationHostedLifecycleAdapterOptions<TChunk>,
|
|
46
|
+
): HostedLifecycleAdapter<ConversationRunProjection, TChunk> {
|
|
47
|
+
return {
|
|
48
|
+
startRun: options.startRun,
|
|
49
|
+
appendEvents: options.mapChunkToEvents
|
|
50
|
+
? async (run, chunk) => {
|
|
51
|
+
const events = [...await options.mapChunkToEvents!(chunk, run)];
|
|
52
|
+
if (events.length === 0) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
const appended = await appendConversationRunEvents({
|
|
57
|
+
authToken: options.authToken,
|
|
58
|
+
apiUrl: options.apiUrl,
|
|
59
|
+
conversationId: run.conversationId,
|
|
60
|
+
runId: run.runId,
|
|
61
|
+
expectedPreviousEventId: run.latestEventId,
|
|
62
|
+
expectedPreviousExternalEventSequence: run.latestExternalEventSequence,
|
|
63
|
+
events,
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
run.latestEventId = appended.latestEventId;
|
|
67
|
+
run.latestExternalEventSequence = appended.latestExternalEventSequence;
|
|
68
|
+
}
|
|
69
|
+
: undefined,
|
|
70
|
+
finalizeRun: async (run, terminalState) => {
|
|
71
|
+
const finalizeInput = await options.resolveFinalizeInput({ run, terminalState });
|
|
72
|
+
await finalizeConversationAgentRun({
|
|
73
|
+
authToken: options.authToken,
|
|
74
|
+
apiUrl: options.apiUrl,
|
|
75
|
+
conversationId: run.conversationId,
|
|
76
|
+
runId: run.runId,
|
|
77
|
+
status: terminalState.status,
|
|
78
|
+
model: finalizeInput.model,
|
|
79
|
+
provider: finalizeInput.provider,
|
|
80
|
+
usage: finalizeInput.usage,
|
|
81
|
+
terminalErrorCode: finalizeInput.terminalErrorCode,
|
|
82
|
+
terminalErrorMessage: finalizeInput.terminalErrorMessage,
|
|
83
|
+
});
|
|
84
|
+
},
|
|
85
|
+
cancelRun: async (run, terminalState) => {
|
|
86
|
+
const finalizeInput = await options.resolveFinalizeInput({ run, terminalState });
|
|
87
|
+
await finalizeConversationAgentRun({
|
|
88
|
+
authToken: options.authToken,
|
|
89
|
+
apiUrl: options.apiUrl,
|
|
90
|
+
conversationId: run.conversationId,
|
|
91
|
+
runId: run.runId,
|
|
92
|
+
status: "cancelled",
|
|
93
|
+
model: finalizeInput.model,
|
|
94
|
+
provider: finalizeInput.provider,
|
|
95
|
+
usage: finalizeInput.usage,
|
|
96
|
+
terminalErrorCode: finalizeInput.terminalErrorCode,
|
|
97
|
+
terminalErrorMessage: finalizeInput.terminalErrorMessage,
|
|
98
|
+
});
|
|
99
|
+
},
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export interface ConversationChildLifecycleContext {
|
|
104
|
+
authToken: string;
|
|
105
|
+
apiUrl: string;
|
|
106
|
+
parentConversationId: string;
|
|
107
|
+
parentRunId: string;
|
|
108
|
+
projectId?: string | null;
|
|
109
|
+
publishParentRunEvents?: (events: InvokeAgentChildRunProgressEvent[]) => Promise<void> | void;
|
|
110
|
+
progress: Omit<InvokeAgentChildRunProgressInput, "status">;
|
|
111
|
+
model: string;
|
|
112
|
+
provider: string;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
function toConversationChildUsage(
|
|
116
|
+
usage: HostedChildLifecycleTerminalState["usage"],
|
|
117
|
+
): ConversationAgentRunUsage | undefined {
|
|
118
|
+
if (!usage) {
|
|
119
|
+
return undefined;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
const inputTokens = usage.inputTokens ?? 0;
|
|
123
|
+
const outputTokens = usage.outputTokens ?? 0;
|
|
124
|
+
return {
|
|
125
|
+
inputTokens,
|
|
126
|
+
outputTokens,
|
|
127
|
+
totalTokens: usage.totalTokens ?? inputTokens + outputTokens,
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
async function publishConversationChildProgress(
|
|
132
|
+
ctx: ConversationChildLifecycleContext,
|
|
133
|
+
status: InvokeAgentChildRunProgressInput["status"],
|
|
134
|
+
): Promise<void> {
|
|
135
|
+
await publishInvokeAgentChildRunProgress({
|
|
136
|
+
authToken: ctx.authToken,
|
|
137
|
+
apiUrl: ctx.apiUrl,
|
|
138
|
+
conversationId: ctx.parentConversationId,
|
|
139
|
+
runId: ctx.parentRunId,
|
|
140
|
+
...(ctx.projectId !== undefined ? { projectId: ctx.projectId } : {}),
|
|
141
|
+
...ctx.progress,
|
|
142
|
+
status,
|
|
143
|
+
...(ctx.publishParentRunEvents ? { publishParentRunEvents: ctx.publishParentRunEvents } : {}),
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
export function createConversationChildLifecycleAdapter(
|
|
148
|
+
ctx: ConversationChildLifecycleContext,
|
|
149
|
+
): HostedChildLifecycleAdapter {
|
|
150
|
+
return {
|
|
151
|
+
pending: () => publishConversationChildProgress(ctx, "pending"),
|
|
152
|
+
running: () => publishConversationChildProgress(ctx, "running"),
|
|
153
|
+
completed: async (terminalState) => {
|
|
154
|
+
await finalizeConversationAgentRun({
|
|
155
|
+
authToken: ctx.authToken,
|
|
156
|
+
apiUrl: ctx.apiUrl,
|
|
157
|
+
conversationId: ctx.progress.childConversationId,
|
|
158
|
+
runId: ctx.progress.childRunId,
|
|
159
|
+
status: "completed",
|
|
160
|
+
model: ctx.model,
|
|
161
|
+
provider: ctx.provider,
|
|
162
|
+
usage: toConversationChildUsage(terminalState.usage),
|
|
163
|
+
terminalErrorCode: null,
|
|
164
|
+
terminalErrorMessage: null,
|
|
165
|
+
});
|
|
166
|
+
await publishConversationChildProgress(ctx, "completed");
|
|
167
|
+
},
|
|
168
|
+
failed: async (terminalState) => {
|
|
169
|
+
await finalizeConversationAgentRun({
|
|
170
|
+
authToken: ctx.authToken,
|
|
171
|
+
apiUrl: ctx.apiUrl,
|
|
172
|
+
conversationId: ctx.progress.childConversationId,
|
|
173
|
+
runId: ctx.progress.childRunId,
|
|
174
|
+
status: "failed",
|
|
175
|
+
model: ctx.model,
|
|
176
|
+
provider: ctx.provider,
|
|
177
|
+
usage: toConversationChildUsage(terminalState.usage),
|
|
178
|
+
terminalErrorCode: terminalState.terminalErrorCode ?? "FAILED",
|
|
179
|
+
terminalErrorMessage: terminalState.terminalErrorMessage ?? "Unknown error",
|
|
180
|
+
});
|
|
181
|
+
await publishConversationChildProgress(ctx, "failed");
|
|
182
|
+
},
|
|
183
|
+
cancelled: async (terminalState) => {
|
|
184
|
+
await finalizeConversationAgentRun({
|
|
185
|
+
authToken: ctx.authToken,
|
|
186
|
+
apiUrl: ctx.apiUrl,
|
|
187
|
+
conversationId: ctx.progress.childConversationId,
|
|
188
|
+
runId: ctx.progress.childRunId,
|
|
189
|
+
status: "cancelled",
|
|
190
|
+
model: ctx.model,
|
|
191
|
+
provider: ctx.provider,
|
|
192
|
+
usage: toConversationChildUsage(terminalState.usage),
|
|
193
|
+
terminalErrorCode: terminalState.terminalErrorCode ?? "CANCELLED",
|
|
194
|
+
terminalErrorMessage: terminalState.terminalErrorMessage ?? "Child run cancelled",
|
|
195
|
+
});
|
|
196
|
+
await publishConversationChildProgress(ctx, "cancelled");
|
|
197
|
+
},
|
|
198
|
+
};
|
|
199
|
+
}
|
package/src/src/agent/durable.ts
CHANGED
|
@@ -427,27 +427,15 @@ export async function monitorConversationRunStatus(input: {
|
|
|
427
427
|
return;
|
|
428
428
|
}
|
|
429
429
|
|
|
430
|
+
let run: ConversationRunProjection;
|
|
430
431
|
try {
|
|
431
|
-
|
|
432
|
+
run = await getConversationRun({
|
|
432
433
|
authToken: input.authToken,
|
|
433
434
|
apiUrl: input.apiUrl,
|
|
434
435
|
conversationId: input.conversationId,
|
|
435
436
|
runId: input.runId,
|
|
436
437
|
abortSignal: input.abortSignal,
|
|
437
438
|
});
|
|
438
|
-
|
|
439
|
-
if (isActiveConversationRunStatus(run.status)) {
|
|
440
|
-
continue;
|
|
441
|
-
}
|
|
442
|
-
|
|
443
|
-
if (
|
|
444
|
-
run.status === "completed" ||
|
|
445
|
-
run.status === "failed" ||
|
|
446
|
-
run.status === "cancelled"
|
|
447
|
-
) {
|
|
448
|
-
await input.onTerminal(new ConversationRunTerminalStateError(run, run.status));
|
|
449
|
-
}
|
|
450
|
-
return;
|
|
451
439
|
} catch (error) {
|
|
452
440
|
if (input.abortSignal?.aborted) {
|
|
453
441
|
return;
|
|
@@ -458,7 +446,21 @@ export async function monitorConversationRunStatus(input: {
|
|
|
458
446
|
}
|
|
459
447
|
|
|
460
448
|
await input.onPollError?.(error);
|
|
449
|
+
continue;
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
if (isActiveConversationRunStatus(run.status)) {
|
|
453
|
+
continue;
|
|
454
|
+
}
|
|
455
|
+
|
|
456
|
+
if (
|
|
457
|
+
run.status === "completed" ||
|
|
458
|
+
run.status === "failed" ||
|
|
459
|
+
run.status === "cancelled"
|
|
460
|
+
) {
|
|
461
|
+
await input.onTerminal(new ConversationRunTerminalStateError(run, run.status));
|
|
461
462
|
}
|
|
463
|
+
return;
|
|
462
464
|
}
|
|
463
465
|
}
|
|
464
466
|
|
package/src/src/agent/index.ts
CHANGED
|
@@ -192,6 +192,13 @@ export {
|
|
|
192
192
|
ensureConversationProjectLink,
|
|
193
193
|
fetchConversationRecord,
|
|
194
194
|
} from "./conversation-bootstrap.js";
|
|
195
|
+
export {
|
|
196
|
+
type ConversationChildLifecycleContext,
|
|
197
|
+
type ConversationHostedLifecycleFinalizeInput,
|
|
198
|
+
createConversationChildLifecycleAdapter,
|
|
199
|
+
createConversationHostedLifecycleAdapter,
|
|
200
|
+
type CreateConversationHostedLifecycleAdapterOptions,
|
|
201
|
+
} from "./conversation-hosted-lifecycle.js";
|
|
195
202
|
export {
|
|
196
203
|
type ActiveConversationRunStatus,
|
|
197
204
|
appendConversationRunEvents,
|