Skip to content

Change VersionMixConsensus quorum threshold from 3 to 4#368

Merged
marta-lokhova merged 1 commit intomainfrom
copilot/update-quorum-threshold-to-four
Apr 16, 2026
Merged

Change VersionMixConsensus quorum threshold from 3 to 4#368
marta-lokhova merged 1 commit intomainfrom
copilot/update-quorum-threshold-to-four

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 9, 2026

With 4 validators and the default threshold of 3, the network can proceed if one pod is slow to start. Since these nodes have no history configured, a late-joining node can fall permanently behind.

  • Switch newCoreSet and oldCoreSet from CoreSetQuorumList to CoreSetQuorumListWithThreshold(..., 100), requiring all 4 nodes for consensus
  • Add quorumSetConfigType = RequireExplicitQset to newCoreSet for consistency with oldCoreSet

Copilot AI linked an issue Apr 9, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Update quorum threshold for VersionMixConsensus Change VersionMixConsensus quorum threshold from 3 to 4 Apr 9, 2026
Copilot AI requested a review from marta-lokhova April 9, 2026 21:31
@marta-lokhova marta-lokhova requested a review from bboston7 April 9, 2026 21:55
@marta-lokhova
Copy link
Copy Markdown
Contributor

marta-lokhova commented Apr 9, 2026

@bboston7 this one seemed like a good candidate for Copilot, and looks like it got it! LMK what you think

@marta-lokhova marta-lokhova marked this pull request as ready for review April 10, 2026 18:26
Copilot AI review requested due to automatic review settings April 10, 2026 18:26
Copy link
Copy Markdown

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

Updates the versionMixConsensus mission quorum configuration to require full participation from all 4 validators, preventing the network from progressing when a node starts late and would otherwise fall behind permanently.

Changes:

  • Update newCoreSet and oldCoreSet quorum sets to use CoreSetQuorumListWithThreshold(..., 100) (100% threshold).
  • Set quorumSetConfigType = RequireExplicitQset for newCoreSet to match the explicit configuration used elsewhere in the mission.

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

Use CoreSetQuorumListWithThreshold with 100% threshold for both
newCoreSet and oldCoreSet, requiring all 4 nodes to participate in
consensus. This prevents the network from proceeding without a slow
pod that could fall behind irrecoverably.

Agent-Logs-Url: https://github.com/stellar/supercluster/sessions/fecf9db9-b470-475a-bb58-fa1cde14eb91

Co-authored-by: marta-lokhova <9428003+marta-lokhova@users.noreply.github.com>
@marta-lokhova marta-lokhova force-pushed the copilot/update-quorum-threshold-to-four branch from 9ab4054 to c31e050 Compare April 16, 2026 22:39
@marta-lokhova marta-lokhova merged commit a29966f into main Apr 16, 2026
7 checks passed
@marta-lokhova marta-lokhova deleted the copilot/update-quorum-threshold-to-four branch April 16, 2026 22:44
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.

VersionMixConsensus quorum threshold is too low

4 participants