diff --git a/src/main/services/agents/services/SessionMessageService.ts b/src/main/services/agents/services/SessionMessageService.ts index 786c9b72b2..09e34bf02e 100644 --- a/src/main/services/agents/services/SessionMessageService.ts +++ b/src/main/services/agents/services/SessionMessageService.ts @@ -68,15 +68,26 @@ class TextStreamAccumulator { } case 'tool-call': if (part.toolCallId) { + const legacyPart = part as typeof part & { + args?: unknown + providerMetadata?: { raw?: { input?: unknown } } + } this.toolCalls.set(part.toolCallId, { toolName: part.toolName, - input: part.input ?? part.args ?? part.providerMetadata?.raw?.input + input: part.input ?? legacyPart.args ?? legacyPart.providerMetadata?.raw?.input }) } break case 'tool-result': if (part.toolCallId) { - this.toolResults.set(part.toolCallId, part.output ?? part.result ?? part.providerMetadata?.raw) + const legacyPart = part as typeof part & { + result?: unknown + providerMetadata?: { raw?: unknown } + } + this.toolResults.set( + part.toolCallId, + part.output ?? legacyPart.result ?? legacyPart.providerMetadata?.raw + ) } break default: diff --git a/tests/renderer.setup.ts b/tests/renderer.setup.ts index ea4057eca8..fab761fae3 100644 --- a/tests/renderer.setup.ts +++ b/tests/renderer.setup.ts @@ -14,13 +14,21 @@ vi.mock('@logger', async () => { } }) -vi.mock('axios', () => ({ - default: { +vi.mock('axios', () => { + const defaultAxiosMock = { get: vi.fn().mockResolvedValue({ data: {} }), // Mocking axios GET request post: vi.fn().mockResolvedValue({ data: {} }) // Mocking axios POST request // You can add other axios methods like put, delete etc. as needed } -})) + + const isAxiosError = (error: unknown): error is { isAxiosError?: boolean } => + Boolean((error as { isAxiosError?: boolean } | undefined)?.isAxiosError) + + return { + default: defaultAxiosMock, + isAxiosError + } +}) vi.stubGlobal('electron', { ipcRenderer: {