developing #10

Merged
GHMiranda merged 64 commits from developing into master 2026-01-25 00:37:11 +00:00
1 changed files with 5 additions and 2 deletions
Showing only changes of commit ec053d8126 - Show all commits

View File

@ -566,6 +566,11 @@ function FlowchartEditorInner({ projectId, projectName, userId, userDisplayName,
},
onPersist: async (persistNodes: FlowchartNode[], persistEdges: FlowchartEdge[]) => {
try {
// Auto-persist saves the current state for durability. We do NOT
// broadcast state-refresh here because CRDT already syncs nodes/edges
// via yjs-update broadcasts. Broadcasting here causes ping-pong:
// other clients fetch from DB, overwrite their local variables/characters,
// then their persist writes stale data back, causing a loop.
await supabase
.from('projects')
.update({
@ -577,8 +582,6 @@ function FlowchartEditorInner({ projectId, projectName, userId, userDisplayName,
},
})
.eq('id', projectId)
// Notify other clients to refresh after successful auto-persist
realtimeRef.current?.broadcastStateRefresh()
} catch {
// Persistence failure is non-critical; will retry on next change
}