diff --git a/packages/client-runtime/src/state/threadHistoryMerge.ts b/packages/client-runtime/src/state/threadHistoryMerge.ts index 6fd678b66b129..cec1774e6435d 100644 --- a/packages/client-runtime/src/state/threadHistoryMerge.ts +++ b/packages/client-runtime/src/state/threadHistoryMerge.ts @@ -112,10 +112,7 @@ export function mergeOlderHistoryIntoProjection( turnItemById.set(String(row.sourceItemId), row.item); } if (page.length === 0 && work === undefined) return projection; - let visible = [ - ...page, - ...projection.visibleTurnItems.filter((row) => !pageKeys.has(projectedItemKey(row))), - ]; + let visible: OrchestrationV2ProjectedTurnItem[]; if (work && anchor && deferred) { let end = start + 1; while (end < projection.visibleTurnItems.length) { @@ -147,6 +144,11 @@ export function mergeOlderHistoryIntoProjection( ...projection.visibleTurnItems.slice(end), ]; if (anchor.visibility === "local") turnItemById.set(String(updated.item.id), updated.item); + } else { + visible = [ + ...page, + ...projection.visibleTurnItems.filter((row) => !pageKeys.has(projectedItemKey(row))), + ]; } if ( visible.length === projection.visibleTurnItems.length &&