Skip to content

fix(editor): batch initial collaboration projections atomically - #587

Draft
marcodantonio-netsons wants to merge 1 commit into
CoreBunch:mainfrom
marcodantonio-netsons:fix/editor-collab-projection-batches
Draft

marcodantonio-netsons wants to merge 1 commit into
CoreBunch:mainfrom
marcodantonio-netsons:fix/editor-collab-projection-batches

Conversation

@marcodantonio-netsons

Copy link
Copy Markdown

Initial collaboration sync previously committed each projected row separately, repeatedly notifying editor subscribers and pruning selection. Collect initial socket tasks over a 16 ms frame and commit the rows and shell together. Keep write gates closed until the server seed has reached the store, while retaining microtask projection for live peer edits and synchronous undo/redo. Extract document projection from the binding into its own module.

Regression coverage verifies a 30-page burst causes one site update, rejects a premature write, exposes all server titles when the write waiter resolves, and still projects live edits in the next microtask. Verified with bun test (7,054 passed), bun run build, bun run lint and git diff --check. Full large-site browser responsiveness remains under investigation. No database changes.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant