summaryrefslogtreecommitdiff
path: root/.gitignore
diff options
context:
space:
mode:
authorhaoyuren <13851610112@163.com>2026-03-18 08:06:32 +0000
committerhaoyuren <13851610112@163.com>2026-03-18 08:06:32 +0000
commit9b5256718c2117511f0253a656bb8cff7410b92a (patch)
tree8ba0fd257f771538874f37b87dcaeb5471185ca5 /.gitignore
parent69a09baf71798966724d942b93303211516e34c7 (diff)
Fix OT sync corruption: match Overleaf ShareJS ack/echo handling
The server broadcasts otUpdateApplied (with ops) to ALL clients including the sender. Our bridge was treating its own echoed ops as remote ops and re-applying them, causing text duplication (e.g. "simulatorimulator"). Rewrite OT handling to match Overleaf's ShareJS _onMessage pattern: - ACK = no ops OR meta.source matches our publicId (own echo) - REMOTE = ops from a different source - ACK path calls onAck() without re-applying ops - OtClient silently drops duplicate acks in synchronized state - OtClient drops stale remote ops (version < current) - Remove pendingEchos counter in favor of meta.source detection Also: refresh MCP comment contexts on new-comment/delete-thread events, add Overleaf reference repo to .gitignore. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to '.gitignore')
-rw-r--r--.gitignore1
1 files changed, 1 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 606d0fa..eee0821 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@ dist/
*.exe
*.AppImage
.DS_Store
+reference/