fix(runtime): compact context inside worker
This commit is contained in:
1 parent
33c6ede381
commit
6dfa1a851d
13 files changed
+214
-92
No files matched your search
@@ -3,6 +3,7 @@ import type { workerMessageSchema } from "./types";
|
||||
import { handleRunLog } from "../handlers/run-log-handler";
|
||||
import { handleRunStatus } from "../handlers/run-status-handler";
|
||||
import { handleRunFinished } from "../handlers/run-finished-handler";
|
||||
import { handleContextCompaction } from "../handlers/context-compaction-handler";
|
||||
import type { HandlerContext, HandlerDeps } from "../handlers/handler-context";
|
||||
|
||||
export async function handleWorkerMessage(
|
||||
@@ -67,6 +68,9 @@ export async function handleWorkerMessage(
|
||||
}
|
||||
return;
|
||||
}
|
||||
case "context-compaction":
|
||||
handleContextCompaction(event, deps, context);
|
||||
return;
|
||||
case "rpc-request": {
|
||||
const bridge = deps.getRuntimeBridge?.();
|
||||
const response = bridge
|
||||
|
||||
@@ -24,7 +24,6 @@ export const workerRpcMethodSchema = z.enum([
|
||||
"prepareRun",
|
||||
"beforeToolCall",
|
||||
"afterToolCall",
|
||||
"transformContext",
|
||||
"invokeInternalTool",
|
||||
]);
|
||||
|
||||
@@ -65,6 +64,16 @@ export const workerMessageSchema = z.union([
|
||||
emittedAt: z.string(),
|
||||
event: z.record(z.string(), z.unknown()).and(z.object({ type: z.string() })),
|
||||
}),
|
||||
z.object({
|
||||
type: z.literal("context-compaction"),
|
||||
runId: z.string().uuid(),
|
||||
emittedAt: z.string(),
|
||||
estimatedTokens: z.number(),
|
||||
originalMessageCount: z.number().int(),
|
||||
compactedMessageCount: z.number().int(),
|
||||
compactedOlderMessageCount: z.number().int(),
|
||||
retainedRecentMessageCount: z.number().int(),
|
||||
}),
|
||||
z.object({
|
||||
type: z.literal("rpc-request"),
|
||||
rpcId: z.string(),
|
||||
|
||||
Reference in new issue
Block a user