Save conflict (409 / __v)
Canonical page for optimistic-lock failures when two builder sessions save the same app.
What this is
Section titled “What this is”Each app document has a version field (__v). Publish and autosave send that version. If another tab, collaborator, or publish already wrote a newer version, the API returns HTTP 409 Conflict (UPDATE_APP_FAILED in error tracking). The product shows a conflict UI. This is expected, not a data-loss bug.
Bugsnag 409s are noise unless volume spikes or a customer cannot save at all.
When you see it
Section titled “When you see it”- Two browser tabs on the same app
- You and a collaborator editing together
- Publish in one tab while autosave runs in another
- A stale tab left open overnight
Fix it
Section titled “Fix it”- Leave one builder tab.
- In the tab you want to keep, reload when the conflict UI asks you to. Accept the server copy if you are not sure which is newer.
- Re-apply only the edits you still need.
- Publish once.
Do not keep clicking Publish through the 409. You will lose the race again.
What users see
Section titled “What users see”Nothing. 409 is a builder event. The last successful publish is still live.
Example
Section titled “Example”You publish from tab A while tab B autosaves a filter change. Tab B shows conflict. Close tab B, reload tab A, redo the filter, publish once.
Related
Section titled “Related”Publish & share. Save failed / field missing (different error: 400, not 409).