Skip to content

network-spec: relax requirement after MsgIntersectFound #5187

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

amesgen
Copy link
Member

@amesgen amesgen commented Aug 18, 2025

Description

Closes #4917 by relaxing the specification. Now, after an intersection for a point pt was negotiated, the server still must send MsgRollBackward, but it can either send a rollback to pt or to an earlier point.

The motivation for sending MsgRollBackward after MsgIntersectFound (simpler state management on the client side) is preserved by this change, and it simplifies the server implementation, ensuring that the current production ChainSync server implementation actually adheres to the spec.

Checklist

Quality

  • Commit sequence makes sense and have useful messages, see ref.
  • New tests are added and existing tests are updated.
  • Self-reviewed the PR.

Maintenance

  • Linked an issue or added the PR to the current sprint of ouroboros-network project.
  • Added labels.
  • Updated changelog files.
  • The documentation has been properly updated, see ref.

@amesgen amesgen added the documentation Network Documentation related tasks label Aug 18, 2025
@amesgen amesgen requested a review from a team as a code owner August 18, 2025 18:04
@github-project-automation github-project-automation bot moved this to In Progress in Ouroboros Network Aug 18, 2025
@amesgen amesgen enabled auto-merge August 18, 2025 18:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Network Documentation related tasks
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

chainSyncServerExample does not adhere to the spec
1 participant