Skip to content

Conversation

@ppca
Copy link
Contributor

@ppca ppca commented Dec 3, 2025

No description provided.

ppca and others added 4 commits November 19, 2025 13:06
Co-authored-by: Xiangyi Zheng <xyzheng@uhicago.edu>
* Add protocol versioning

* Fix comment
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR releases version 1.12.0 with two key enhancements: protocol version checking for node compatibility and performance optimization for synchronization operations.

  • Introduces PROTOCOL_VERSION constant to enforce protocol compatibility between nodes
  • Adds version mismatch detection that marks incompatible peers as offline
  • Optimizes sync operations by skipping expensive Redis calls when collections are empty

Reviewed changes

Copilot reviewed 8 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
Cargo.toml Bumps workspace version from 1.11.0 to 1.12.0
Cargo.lock Updates version references for all workspace packages
infra/scripts/generate_keys/Cargo.lock Updates mpc-keys version to 1.12.0
chain-signatures/node/src/lib.rs Introduces PROTOCOL_VERSION constant set to 1
chain-signatures/node/src/web/mod.rs Wraps status endpoint with StatusResponse containing protocol_version field
chain-signatures/node/src/web/mock.rs Updates test mocks to support protocol version testing with flexible version configuration
chain-signatures/node/src/node_client.rs Updates client to return StatusResponse instead of raw NodeStatus
chain-signatures/node/src/mesh/connection.rs Adds protocol version checking to mark incompatible peers as offline
chain-signatures/node/src/mesh/mod.rs Adds comprehensive test for protocol version mismatch behavior
chain-signatures/node/src/protocol/sync/mod.rs Optimizes by checking if collections are empty before calling expensive remove_outdated operations

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

});
continue;
}

Copy link

Copilot AI Dec 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The removed comment about potential deadlock when borrowing and sending on status_tx was still relevant. Consider restoring it:

// note: borrowing and sending later on `status_tx` can potentially deadlock,
// but since we are copying the status, this is not the case. Change this carefully.
let old_status = status_tx.borrow().0;
let mut new_status = match resp.status {

This warning is valuable for future maintainers since the pattern (borrow then send) hasn't changed.

Suggested change
// note: borrowing and sending later on `status_tx` can potentially deadlock,
// but since we are copying the status, this is not the case. Change this carefully.

Copilot uses AI. Check for mistakes.
ChaoticTempest
ChaoticTempest previously approved these changes Dec 3, 2025
Copy link
Contributor

@ChaoticTempest ChaoticTempest left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't this be 1.11.1 instead of 1.12.0? It's not bad to have 1.12.0 but for the process of this being more of a patch, we should make it a patch release instead.

But I don't care as long as our changelog properly reflects our changes correctly. That would mean that 1.13.0 would exclude all the changes added here for 1.12

@ppca ppca changed the title release 1.12.0 release 1.11.1 Dec 3, 2025
ChaoticTempest
ChaoticTempest previously approved these changes Dec 3, 2025
@ppca ppca changed the base branch from develop to main December 3, 2025 03:21
@ppca ppca dismissed ChaoticTempest’s stale review December 3, 2025 03:21

The base branch was changed.

@ppca ppca changed the title release 1.11.1 release 1.11.1 merge to main Dec 3, 2025
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.

3 participants