toAISdkFormat and stream export issues (AI SDK v5)
getting an issue in vitest ever since i added import { toAISdkFormat } from '@mastra/ai-sdk';. The Error is SyntaxError: The requested module '@mastra/core/stream' does not provide an export named 'DefaultGeneratedFile' as anyone ran into this?
my implementation is below:
my implementation is below:
const result1 = await agent1.streamVNext(finalMessages, {
runtimeContext,
stopWhen: stepCountIs(100),
});
const stream = createUIMessageStream({
execute: async ({ writer }) => {
for await (const part of toAISdkFormat(result1, { from: 'agent' })!) {
writer.write(part);
}
},
generateId: generateUUID,
onFinish: async ({ messages: finished }) => {
await saveMessages({
messages: finished
.filter((m) => m.role !== 'user')
.map((m) => ({
id: isUuidV4(m.id) ? m.id : generateUUID(),
role: m.role,
parts: m.parts as ChatMessagePart[],
createdAt: new Date(),
attachments: [],
chatId,
})),
});
},
onError: () => 'Oops, an error occurred!',
});
// Set headers and return SSE stream (Express.js adaptation)
res.writeHead(200, {
'Content-Type': 'text/event-stream',
'Cache-Control': 'no-cache',
Connection: 'keep-alive',
'Access-Control-Allow-Origin': '*',
});
const sseStream = stream.pipeThrough(new JsonToSseTransformStream());
const reader = sseStream.getReader(); const result1 = await agent1.streamVNext(finalMessages, {
runtimeContext,
stopWhen: stepCountIs(100),
});
const stream = createUIMessageStream({
execute: async ({ writer }) => {
for await (const part of toAISdkFormat(result1, { from: 'agent' })!) {
writer.write(part);
}
},
generateId: generateUUID,
onFinish: async ({ messages: finished }) => {
await saveMessages({
messages: finished
.filter((m) => m.role !== 'user')
.map((m) => ({
id: isUuidV4(m.id) ? m.id : generateUUID(),
role: m.role,
parts: m.parts as ChatMessagePart[],
createdAt: new Date(),
attachments: [],
chatId,
})),
});
},
onError: () => 'Oops, an error occurred!',
});
// Set headers and return SSE stream (Express.js adaptation)
res.writeHead(200, {
'Content-Type': 'text/event-stream',
'Cache-Control': 'no-cache',
Connection: 'keep-alive',
'Access-Control-Allow-Origin': '*',
});
const sseStream = stream.pipeThrough(new JsonToSseTransformStream());
const reader = sseStream.getReader();