From bbcb7a28218833d785e62e1d69b0bdc0a09e16ba Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Sun, 16 Nov 2025 20:41:44 -0500 Subject: [PATCH] core: extract overflow check logic into separate function for better code organization --- packages/opencode/src/session/prompt.ts | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/packages/opencode/src/session/prompt.ts b/packages/opencode/src/session/prompt.ts index f98c1f75f..5bd6a2496 100644 --- a/packages/opencode/src/session/prompt.ts +++ b/packages/opencode/src/session/prompt.ts @@ -320,6 +320,14 @@ export namespace SessionPrompt { } step++ + if (step === 1) + ensureTitle({ + session: await Session.get(sessionID), + modelID: lastUser.model.modelID, + providerID: lastUser.model.providerID, + message: msgs.find((m) => m.info.role === "user")!, + history: msgs, + }) const model = await Provider.getModel(lastUser.model.providerID, lastUser.model.modelID) const task = tasks.pop() @@ -644,21 +652,6 @@ export namespace SessionPrompt { throw new Error("Impossible") }) - async function checkOverflow(input: { - sessionID: string - msgs: MessageV2.WithParts[] - model: ModelsDev.Model - abort: AbortSignal - }) { - const lastAssistant = input.msgs.findLast((msg) => msg.info.role === "assistant" && msg.info.time.completed) - ?.info as MessageV2.Assistant - if (!lastAssistant) return false - return SessionCompaction.isOverflow({ - tokens: lastAssistant.tokens, - model: input.model, - }) - } - async function resolveModel(input: { model: PromptInput["model"]; agent: Agent.Info }) { if (input.model) { return input.model