fix: openai reasoning issue (#2780)

This commit is contained in:
Aiden Cline
2025-09-26 00:23:30 -05:00
committed by GitHub
parent d47feb9969
commit 5d95846df1
2 changed files with 11 additions and 0 deletions

View File

@@ -115,6 +115,7 @@ export namespace MessageV2 {
end: z.number().optional(),
})
.optional(),
metadata: z.record(z.string(), z.any()).optional(),
}).meta({
ref: "TextPart",
})
@@ -138,6 +139,7 @@ export namespace MessageV2 {
callID: z.string(),
tool: z.string(),
state: ToolState,
metadata: z.record(z.string(), z.any()).optional(),
}).meta({
ref: "ToolPart",
})
@@ -519,6 +521,7 @@ export namespace MessageV2 {
{
type: "text",
text: part.text,
providerMetadata: part.metadata,
},
]
if (part.type === "step-start")
@@ -536,6 +539,7 @@ export namespace MessageV2 {
toolCallId: part.callID,
input: part.state.input,
output: part.state.time.compacted ? "[Old tool result content cleared]" : part.state.output,
callProviderMetadata: part.metadata,
},
]
if (part.state.status === "error")
@@ -546,6 +550,7 @@ export namespace MessageV2 {
toolCallId: part.callID,
input: part.state.input,
errorText: part.state.error,
callProviderMetadata: part.metadata,
},
]
}

View File

@@ -892,6 +892,7 @@ export namespace SessionPrompt {
time: {
start: Date.now(),
},
metadata: value.providerMetadata,
}
break
@@ -913,6 +914,7 @@ export namespace SessionPrompt {
...part.time,
end: Date.now(),
}
if (value.providerMetadata) part.metadata = value.providerMetadata
await Session.updatePart(part)
delete reasoningMap[value.id]
}
@@ -952,6 +954,7 @@ export namespace SessionPrompt {
start: Date.now(),
},
},
metadata: value.providerMetadata,
})
toolcalls[value.toolCallId] = part as MessageV2.ToolPart
}
@@ -1054,12 +1057,14 @@ export namespace SessionPrompt {
time: {
start: Date.now(),
},
metadata: value.providerMetadata,
}
break
case "text-delta":
if (currentText) {
currentText.text += value.text
if (value.providerMetadata) currentText.metadata = value.providerMetadata
if (currentText.text) await Session.updatePart(currentText)
}
break
@@ -1071,6 +1076,7 @@ export namespace SessionPrompt {
start: Date.now(),
end: Date.now(),
}
if (value.providerMetadata) currentText.metadata = value.providerMetadata
await Session.updatePart(currentText)
}
currentText = undefined