-
Notifications
You must be signed in to change notification settings - Fork 674
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
ACP-77: Write subnet public key diffs to state #3487
Conversation
@@ -271,7 +272,7 @@ func (m *manager) makePrimaryNetworkValidatorSet( | |||
validatorSet, | |||
currentHeight, | |||
lastDiffHeight, | |||
constants.PlatformChainID, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was the wrong constant before - but they happen to have the same value... So not an issue
…s/avalanchego into populate-subnet-public-key-diffs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not the fault of this PR, but I found the testing changes quite painful to review. Ideally there would be comprehensive tests of low-level behavior and then higher-level testing could be less rigorous (only validating behavior not covered by the lower-level tests), but both of the tests that were modified seem a bit unfocused to me.
Why this should be merged
Factored out of #3388.
After ACP-77, L1 validators specify their own BLS public keys. This means that we can no longer assume that the public keys are inherited from a primary network validator.
How this works
Previously public key diffs were only written for primary network validators.
Now when a subnet validator is added or removed, a subnet specific key diff is written.
Additionally, non-nil public keys were only held in the validator set for the primary network validators. The state now exposes the public keys on all subnets.
How this was tested