fix(combo): guard against empty text in sanitize transform

Aligns transform logic with flush — skip enqueuing when decoded text
is empty. Addresses review feedback on PR #614.
This commit is contained in:
Jack Cowey
2026-03-25 13:28:34 +00:00
parent f4de3c8748
commit 600149fc2b

View File

@@ -534,11 +534,13 @@ export async function handleComboChat({
const sanitize = new TransformStream({
transform(chunk, controller) {
const text = sanitizeDecoder.decode(chunk, { stream: true });
if (text.includes("<omniModel>")) {
const cleaned = text.replace(/\n?<omniModel>[^<]+<\/omniModel>\n?/g, "");
controller.enqueue(encoder.encode(cleaned));
} else {
controller.enqueue(encoder.encode(text));
if (text) {
if (text.includes("<omniModel>")) {
const cleaned = text.replace(/\n?<omniModel>[^<]+<\/omniModel>\n?/g, "");
if (cleaned) controller.enqueue(encoder.encode(cleaned));
} else {
controller.enqueue(encoder.encode(text));
}
}
},
flush(controller) {