diff --git a/src/auto-reply/reply/agent-runner-execution.ts b/src/auto-reply/reply/agent-runner-execution.ts index 0f6edd783dc..4e7e49a89f2 100644 --- a/src/auto-reply/reply/agent-runner-execution.ts +++ b/src/auto-reply/reply/agent-runner-execution.ts @@ -1622,19 +1622,23 @@ export async function runAgentTurnWithFallback(params: { abortSignal: params.replyOperation?.abortSignal ?? params.opts?.abortSignal, replyOperation: params.replyOperation, }); - const result = isRoomEventCliTurn - ? { - ...rawResult, - meta: { - ...rawResult.meta, - agentMeta: { - ...rawResult.meta?.agentMeta, - sessionId: "", - cliSessionBinding: undefined, - }, - }, - } - : rawResult; + const result: EmbeddedAgentRunResult = + isRoomEventCliTurn && rawResult.meta.agentMeta + ? (() => { + const { cliSessionBinding: _cliSessionBinding, ...agentMeta } = + rawResult.meta.agentMeta; + return { + ...rawResult, + meta: { + ...rawResult.meta, + agentMeta: { + ...agentMeta, + sessionId: "", + }, + }, + }; + })() + : rawResult; bootstrapPromptWarningSignaturesSeen = resolveBootstrapWarningSignaturesSeen( result.meta?.systemPromptReport, ); diff --git a/src/auto-reply/reply/queue/drain.ts b/src/auto-reply/reply/queue/drain.ts index 200a2ef2fcc..e41fbbd9224 100644 --- a/src/auto-reply/reply/queue/drain.ts +++ b/src/auto-reply/reply/queue/drain.ts @@ -232,6 +232,7 @@ function collectSummaryRuntimeMetadata(items: FollowupRun[]): FollowupRuntimeMet } function clearFollowupQueueSummaryState(queue: { + dropPolicy: "summarize" | "old" | "new"; droppedCount: number; summaryLines: string[]; summarySources?: FollowupRun[]; diff --git a/src/channels/turn/kind.ts b/src/channels/turn/kind.ts index e45a8011611..9f78177ee7e 100644 --- a/src/channels/turn/kind.ts +++ b/src/channels/turn/kind.ts @@ -1 +1 @@ -export type { InboundTurnKind } from "./types.js"; +export type InboundTurnKind = "user_request" | "room_event"; diff --git a/src/channels/turn/types.ts b/src/channels/turn/types.ts index 8b7b41b6b90..9898616fe85 100644 --- a/src/channels/turn/types.ts +++ b/src/channels/turn/types.ts @@ -21,6 +21,8 @@ import type { InboundLastRouteUpdate, RecordInboundSession } from "../session.ty import type { ChannelBotLoopProtectionFacts } from "./bot-loop-protection.js"; import type { InboundTurnKind } from "./kind.js"; +export type { InboundTurnKind } from "./kind.js"; + export type ChannelTurnAdmission = | { kind: "dispatch"; reason?: string } | { kind: "observeOnly"; reason: string }