From 0c4ffec857ad9f3c788dbe1313079d86607590a7 Mon Sep 17 00:00:00 2001 From: Aiden Cline Date: Tue, 20 Jan 2026 16:16:23 -0600 Subject: [PATCH] chore: rename toModelMessage -> toModelMessages --- packages/opencode/src/session/compaction.ts | 2 +- packages/opencode/src/session/message-v2.ts | 2 +- packages/opencode/src/session/prompt.ts | 4 ++-- .../opencode/test/session/message-v2.test.ts | 24 +++++++++---------- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/opencode/src/session/compaction.ts b/packages/opencode/src/session/compaction.ts index ae6922128..7f8c8e00b 100644 --- a/packages/opencode/src/session/compaction.ts +++ b/packages/opencode/src/session/compaction.ts @@ -149,7 +149,7 @@ export namespace SessionCompaction { tools: {}, system: [], messages: [ - ...MessageV2.toModelMessage(input.messages), + ...MessageV2.toModelMessages(input.messages), { role: "user", content: [ diff --git a/packages/opencode/src/session/message-v2.ts b/packages/opencode/src/session/message-v2.ts index d326976f1..c1a2fd1c9 100644 --- a/packages/opencode/src/session/message-v2.ts +++ b/packages/opencode/src/session/message-v2.ts @@ -432,7 +432,7 @@ export namespace MessageV2 { }) export type WithParts = z.infer - export function toModelMessage(input: WithParts[]): ModelMessage[] { + export function toModelMessages(input: WithParts[]): ModelMessage[] { const result: UIMessage[] = [] for (const msg of input) { diff --git a/packages/opencode/src/session/prompt.ts b/packages/opencode/src/session/prompt.ts index 9325583ac..c38ea3b9e 100644 --- a/packages/opencode/src/session/prompt.ts +++ b/packages/opencode/src/session/prompt.ts @@ -598,7 +598,7 @@ export namespace SessionPrompt { sessionID, system: [...(await SystemPrompt.environment()), ...(await SystemPrompt.custom())], messages: [ - ...MessageV2.toModelMessage(sessionMessages), + ...MessageV2.toModelMessages(sessionMessages), ...(isLastStep ? [ { @@ -1800,7 +1800,7 @@ NOTE: At any point in time through this workflow you should feel free to ask the }, ...(hasOnlySubtaskParts ? [{ role: "user" as const, content: subtaskParts.map((p) => p.prompt).join("\n") }] - : MessageV2.toModelMessage(contextMessages)), + : MessageV2.toModelMessages(contextMessages)), ], }) const text = await result.text.catch((err) => log.error("failed to generate title", { error: err })) diff --git a/packages/opencode/test/session/message-v2.test.ts b/packages/opencode/test/session/message-v2.test.ts index a59294399..bb667d284 100644 --- a/packages/opencode/test/session/message-v2.test.ts +++ b/packages/opencode/test/session/message-v2.test.ts @@ -66,7 +66,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "user", content: [{ type: "text", text: "hello" }], @@ -91,7 +91,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([]) + expect(MessageV2.toModelMessages(input)).toStrictEqual([]) }) test("includes synthetic text parts", () => { @@ -122,7 +122,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "user", content: [{ type: "text", text: "hello" }], @@ -189,7 +189,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "user", content: [ @@ -259,7 +259,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "user", content: [{ type: "text", text: "run tool" }], @@ -341,7 +341,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "user", content: [{ type: "text", text: "run tool" }], @@ -408,7 +408,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "user", content: [{ type: "text", text: "run tool" }], @@ -461,7 +461,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([]) + expect(MessageV2.toModelMessages(input)).toStrictEqual([]) }) test("includes aborted assistant messages only when they have non-step-start/reasoning content", () => { @@ -504,7 +504,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "assistant", content: [ @@ -540,7 +540,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([ + expect(MessageV2.toModelMessages(input)).toStrictEqual([ { role: "assistant", content: [{ type: "text", text: "first" }], @@ -567,7 +567,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - expect(MessageV2.toModelMessage(input)).toStrictEqual([]) + expect(MessageV2.toModelMessages(input)).toStrictEqual([]) }) test("converts pending/running tool calls to error results to prevent dangling tool_use", () => { @@ -614,7 +614,7 @@ describe("session.message-v2.toModelMessage", () => { }, ] - const result = MessageV2.toModelMessage(input) + const result = MessageV2.toModelMessages(input) expect(result).toStrictEqual([ {