Repository navigation
fix: update Hocuspocus 4.7 with YKS 0.2.15 and Kotlin 2.4 - #5
Merged
Merged
Conversation
Port ueberdosis#1152 (fixes ueberdosis#1151). SyncStep2 replies were published on the shared document channel, so a stale bystander could apply another instance's full delete set without the replacing structs and broadcast or persist a truncated document. Replies now go to the requester's `${prefix}#reply:${identifier}` channel, matching the upstream wire layout, and an initial-sync wait is released only by state that arrives on that channel. Also align the pinned upstream oracles, matrix, and protocol version with Hocuspocus 4.7.0.
hwisu
marked this pull request as ready for review
September 22, 2026 18:25
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Redis sync replies currently reach every server subscribed to a document, which can let a stale bystander apply another server's delete set. Route replies only to the requester, matching Hocuspocus 4.7.0, and update the Provider/server oracles and contract matrix to 4.7.0.
Prepare Hocuspocus 0.1.9 with the merged YKS 0.2.15 update. CI, soak, publication, documentation, and artifact checksums now use YKS merge commit
47095ae9a95e109f7cdc2ab411f766bf73484e16, including the explicit-loop cleanup. Align both repositories on Kotlin 2.4.20 and Gradle 9.7.1, retain Kotlin 2.3.21 consumer coverage, and refresh dependency locks and ABI dumps. The ABI refresh includes declarations already present in the source but missing from the previous dump.Upstream main was reviewed through
0d9a7ff7. Its unpublished-document cleanup fix already exists in the JVM implementation; add a regression proving that both load-hook failure paths close the engine and allow a fresh retry.Validation:
Publish YKS 0.2.15 before publishing Hocuspocus 0.1.9. Package publication is separate from this source update.