actually works
Some checks failed
Check / build (pull_request) Failing after 7s
E2E tests / build (pull_request) Failing after 6s
Publish CLI / publish-docker (pull_request) Failing after 4m59s
Publish server Docker image / publish-docker (pull_request) Failing after 35m13s

This commit is contained in:
Andras Schmelczer 2026-05-08 16:40:32 +01:00
commit f2337dbbd0
7 changed files with 238 additions and 8 deletions

View file

@ -500,9 +500,16 @@ export class Syncer {
// `updatePendingCreatePath` mutates queued creates when a not-yet-sent
// local file is renamed, so a renamed-away generation does not create
// a server document at a path that a newer local file has reused.
//
// `lastSeenUpdateIdForCreate(requestPath)` (rather than the contiguous
// `lastSeenUpdateId`) blocks the server from path-merging this POST
// into a doc we already track at the same path. Without that, a
// same-device rename race can alias two physically distinct local
// files onto one docId. See `SyncEventQueue.lastSeenUpdateIdForCreate`.
const response = await this.syncService.create({
relativePath: requestPath,
lastSeenVaultUpdateId: this.queue.lastSeenUpdateId,
lastSeenVaultUpdateId:
this.queue.lastSeenUpdateIdForCreate(requestPath),
contentBytes
});