-
Notifications
You must be signed in to change notification settings - Fork 704
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # 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