fix: lastKnownMessageId tracking bei gemergten Assistant-Messages

_mergeConsecutiveAssistantTexts aktualisierte beim Zusammenführen
aufeinanderfolgender Assistant-Text-Messages die id und createdAt,
aber nicht den sortKey. Dadurch blieb lastKnownMessageId auf dem
niedrigeren sortKey der ersten Message stehen.

Folge: Beim nächsten Poll wurden bereits geladene Messages erneut
geliefert (afterSortKey zu niedrig) → Duplikate im Chat.
lastKnownMessageId wurde pro Poll nur um 1 erhöht statt auf den
tatsächlich höchsten Wert.
This commit is contained in:
Meleki committed 2026-03-09 15:49:56 +01:00
1 parent fb9ff23ad4
commit 809e59d540
1 file changed
+1
+1
View File
@@ -165,6 +165,7 @@ function _mergeConsecutiveAssistantTexts(msgs) {
&& !_isReviewMessage(msg.content) && !_isReviewMessage(prev.content)) { && !_isReviewMessage(msg.content) && !_isReviewMessage(prev.content)) {
prev.content = (prev.content || '') + ' ' + (msg.content || ''); prev.content = (prev.content || '') + ' ' + (msg.content || '');
if (msg.id) prev.id = msg.id; if (msg.id) prev.id = msg.id;
if (msg.sortKey && (!prev.sortKey || msg.sortKey > prev.sortKey)) prev.sortKey = msg.sortKey;
if (msg.createdAt) prev.createdAt = msg.createdAt; if (msg.createdAt) prev.createdAt = msg.createdAt;
if (msg.isMarked) prev.isMarked = true; if (msg.isMarked) prev.isMarked = true;
continue; continue;