mirror of
https://github.com/stablyai/orca.git
synced 2026-09-30 00:03:15 +00:00
fix: retain draft revision during discovery refresh
This commit is contained in:
@@ -150,3 +150,13 @@ it('preserves the open recovered draft when another writer deletes it', async ()
|
||||
await loadCreationDrafts(true)
|
||||
expect(useCreationDraftSession.getState().entries).toEqual({})
|
||||
})
|
||||
|
||||
it('retains discovered buffer identity and revision when the database record changes', async () => {
|
||||
database.listDrafts.mockResolvedValue([{ ...draft('original'), revision: 1 }])
|
||||
await loadCreationDrafts()
|
||||
const original = useCreationDraftSession.getState().entries['create-1']
|
||||
database.listDrafts.mockResolvedValue([{ ...draft('external update'), revision: 2 }])
|
||||
await loadCreationDrafts(true)
|
||||
expect(useCreationDraftSession.getState().entries['create-1']).toBe(original)
|
||||
expect(original.storedRevision).toBe(1)
|
||||
})
|
||||
|
||||
@@ -63,7 +63,7 @@ export function loadCreationDrafts(refresh = false): Promise<void> {
|
||||
}
|
||||
}
|
||||
for (const draft of drafts) {
|
||||
if (!entries[draft.id] || isUntouched(draft.id)) {
|
||||
if (!entries[draft.id]) {
|
||||
entries[draft.id] = fromStored(draft)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user