diff --git a/packages/ai/src/providers/openai-responses-shared.ts b/packages/ai/src/providers/openai-responses-shared.ts index d769ce19..11a977d5 100644 --- a/packages/ai/src/providers/openai-responses-shared.ts +++ b/packages/ai/src/providers/openai-responses-shared.ts @@ -178,7 +178,7 @@ export function convertResponsesMessages( const textBlock = block as TextContent; const parsedSignature = parseTextSignature(textBlock.textSignature); const fallbackMessageId = - textBlockIndex === 0 ? `pi_msg_${msgIndex}` : `pi_msg_${msgIndex}_${textBlockIndex}`; + textBlockIndex === 0 ? `msg_pi_${msgIndex}` : `msg_pi_${msgIndex}_${textBlockIndex}`; textBlockIndex++; // OpenAI requires id to be max 64 characters let msgId = parsedSignature?.id; diff --git a/packages/ai/test/openai-responses-message-id.test.ts b/packages/ai/test/openai-responses-message-id.test.ts index 07669d8c..f675cc8e 100644 --- a/packages/ai/test/openai-responses-message-id.test.ts +++ b/packages/ai/test/openai-responses-message-id.test.ts @@ -42,7 +42,7 @@ describe("OpenAI Responses message ID conversion", () => { ) .map((item) => item.id); - expect(messageIds).toEqual(["pi_msg_1", "pi_msg_1_1"]); + expect(messageIds).toEqual(["msg_pi_1", "msg_pi_1_1"]); expect(new Set(messageIds).size).toBe(messageIds.length); }); });