fix: skip tool id sanitization for openai responses

This commit is contained in:
Peter Steinberger
2026-01-22 23:51:48 +00:00
parent d297e17958
commit 870bfa94ed
4 changed files with 31 additions and 13 deletions

View File

@@ -73,7 +73,7 @@ describe("sanitizeSessionHistory", () => {
);
});
it("does not sanitize tool call ids for non-Google, non-OpenAI APIs", async () => {
it("does not sanitize tool call ids for non-Google APIs", async () => {
vi.mocked(helpers.isGoogleModelApi).mockReturnValue(false);
await sanitizeSessionHistory({
@@ -92,6 +92,25 @@ describe("sanitizeSessionHistory", () => {
);
});
it("does not sanitize tool call ids for openai-responses", async () => {
vi.mocked(helpers.isGoogleModelApi).mockReturnValue(false);
await sanitizeSessionHistory({
messages: mockMessages,
modelApi: "openai-responses",
provider: "openai",
sessionManager: mockSessionManager,
sessionId: "test-session",
});
expect(helpers.isGoogleModelApi).toHaveBeenCalledWith("openai-responses");
expect(helpers.sanitizeSessionMessagesImages).toHaveBeenCalledWith(
mockMessages,
"session:history",
expect.objectContaining({ sanitizeToolCallIds: false }),
);
});
it("keeps reasoning-only assistant messages for openai-responses", async () => {
vi.mocked(helpers.isGoogleModelApi).mockReturnValue(false);