fix(sync): preserve optimistic entries for stale loads

This commit is contained in:
Bohdan Triapitsyn
2026-07-12 00:44:58 +03:00
parent 5c65462454
commit d0bcb8106a
+4 -4
View File
@@ -360,16 +360,16 @@ export function useSync() {
mode: "replace" | "prepend" | undefined,
isStale?: () => boolean,
) => {
if (isStale?.()) {
return { messages: [], cursor: page.cursor, complete: page.complete }
}
const items = getOptimistic(sessionID)
const merged = mergeOptimisticPage(page, items)
for (const messageID of merged.confirmed) {
clearOptimistic(sessionID, messageID)
}
if (isStale?.()) {
return { messages: [], cursor: merged.cursor, complete: merged.complete }
}
const current = store.getState()
const materialized = materializeSessionSnapshots(
current,