From c4748dd7f7f70f5b3ec3cd9b98b0df2679f07857 Mon Sep 17 00:00:00 2001 From: Hannes Rudolph Date: Thu, 12 Feb 2026 20:25:31 -0700 Subject: [PATCH] refactor: remove legacy id field from RooAssistantMessage and reasoning messages Remove the provider response ID (uid=502(hrudolph) gid=20(staff) groups=20(staff),101(access_bpf),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),333(piavpn),33(_appstore),100(_lpoperator),204(_developer),250(_analyticsusers),395(com.apple.access_ftp),398(com.apple.access_screensharing),399(com.apple.access_ssh),400(com.apple.access_remote_ae)) field from RooAssistantMessage type and stop propagating it through anthropicToRoo converter and Task.ts. Update corresponding tests to no longer assert on the removed field. --- src/core/task-persistence/__tests__/rooMessage.spec.ts | 1 - .../converters/__tests__/anthropicToRoo.spec.ts | 2 -- src/core/task-persistence/converters/anthropicToRoo.ts | 1 - src/core/task-persistence/rooMessage.ts | 8 ++------ src/core/task/Task.ts | 2 -- 5 files changed, 2 insertions(+), 12 deletions(-) diff --git a/src/core/task-persistence/__tests__/rooMessage.spec.ts b/src/core/task-persistence/__tests__/rooMessage.spec.ts index 86c415dc6a..909a3f48fc 100644 --- a/src/core/task-persistence/__tests__/rooMessage.spec.ts +++ b/src/core/task-persistence/__tests__/rooMessage.spec.ts @@ -42,7 +42,6 @@ const userMessageParts: RooUserMessage = { const assistantMessageString: RooAssistantMessage = { role: "assistant", content: "Sure, I can help with that.", - id: "resp_123", } const assistantMessageParts: RooAssistantMessage = { diff --git a/src/core/task-persistence/converters/__tests__/anthropicToRoo.spec.ts b/src/core/task-persistence/converters/__tests__/anthropicToRoo.spec.ts index 09cae0cb54..24d60b8bc4 100644 --- a/src/core/task-persistence/converters/__tests__/anthropicToRoo.spec.ts +++ b/src/core/task-persistence/converters/__tests__/anthropicToRoo.spec.ts @@ -668,7 +668,6 @@ describe("standalone reasoning messages", () => { const msg = result[0] as RooReasoningMessage expect(msg.type).toBe("reasoning") expect(msg.encrypted_content).toBe("encrypted_data_blob") - expect(msg.id).toBe("resp_001") expect(msg.summary).toEqual([{ type: "summary_text", text: "I thought about X" }]) expect(msg).not.toHaveProperty("role") }) @@ -1069,7 +1068,6 @@ describe("full conversation round-trip", () => { const m7 = result[7] as RooReasoningMessage expect(m7.type).toBe("reasoning") expect(m7.encrypted_content).toBe("enc_reasoning_blob") - expect(m7.id).toBe("resp_reason") expect(m7.ts).toBe(6500) }) }) diff --git a/src/core/task-persistence/converters/anthropicToRoo.ts b/src/core/task-persistence/converters/anthropicToRoo.ts index d94c83eb9e..55842ca398 100644 --- a/src/core/task-persistence/converters/anthropicToRoo.ts +++ b/src/core/task-persistence/converters/anthropicToRoo.ts @@ -122,7 +122,6 @@ export function convertAnthropicToRooMessages(messages: LegacyApiMessage[]): Roo encrypted_content: message.encrypted_content, ...metadata, } - if (message.id) reasoningMsg.id = message.id if (message.summary) reasoningMsg.summary = message.summary result.push(reasoningMsg) continue diff --git a/src/core/task-persistence/rooMessage.ts b/src/core/task-persistence/rooMessage.ts index 4328ef7b92..b7083ef8a1 100644 --- a/src/core/task-persistence/rooMessage.ts +++ b/src/core/task-persistence/rooMessage.ts @@ -87,13 +87,9 @@ export type RooUserMessage = Omit & /** * An assistant-authored message. Content may be a plain string or an array of * text, tool-call, and reasoning parts. Extends AI SDK `AssistantModelMessage` - * with metadata and a provider response ID. + * with metadata. */ -export type RooAssistantMessage = AssistantModelMessage & - RooMessageMetadata & { - /** Provider response ID (e.g. OpenAI `response.id`). */ - id?: string - } +export type RooAssistantMessage = AssistantModelMessage & RooMessageMetadata /** * A tool result message containing one or more tool outputs. diff --git a/src/core/task/Task.ts b/src/core/task/Task.ts index d1722e9fd6..10e7da857c 100644 --- a/src/core/task/Task.ts +++ b/src/core/task/Task.ts @@ -1083,7 +1083,6 @@ export class Task extends EventEmitter implements TaskLike { // with providerOptions (signatures, redactedData, etc.) in the correct format. this.apiConversationHistory.push({ ...message, - ...(responseId ? { id: responseId } : {}), ts: message.ts ?? Date.now(), }) await this.saveApiConversationHistory() @@ -1097,7 +1096,6 @@ export class Task extends EventEmitter implements TaskLike { const messageWithTs: RooAssistantMessage & { content: any } = { ...message, - ...(responseId ? { id: responseId } : {}), ts: Date.now(), }