fix stream error handling

This commit is contained in:
team 1
2026-04-25 12:19:20 +02:00
parent 2f28ad0416
commit fa65417efe
9 changed files with 435 additions and 62 deletions

View File

@@ -368,6 +368,19 @@ document.addEventListener('DOMContentLoaded', () => {
break;
}
if (eventName === 'error') {
if (firstChunk) {
bubble.classList.remove('loader');
bubble.innerHTML = '';
firstChunk = false;
}
raw += `\n\n<em>${data}</em>`;
finalizeStream(bubble, raw);
state.abortRequested = true;
break;
}
if (firstChunk) {
bubble.classList.remove('loader');
bubble.innerHTML = '';
@@ -404,11 +417,13 @@ document.addEventListener('DOMContentLoaded', () => {
bubble.classList.remove('loader');
const userMessage = 'Die Verbindung zum Antwort-Stream wurde unterbrochen. Bitte sende die Anfrage erneut, falls die Antwort unvollständig ist.';
if (raw.trim() !== '') {
raw += `\n\n<em>Stream error: ${String(err.message || err)}</em>`;
raw += `\n\n<em>${userMessage}</em>`;
renderBubbleContent(bubble, raw);
} else {
bubble.innerHTML = `<em>Stream error: ${String(err.message || err)}</em>`;
bubble.innerHTML = `<em>${userMessage}</em>`;
enhanceChatLinks(bubble);
scrollChatToBottom();
}