-
Notifications
You must be signed in to change notification settings - Fork 396
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
fix(tm2): filter validator updates by valid power & pubkey #3925
base: master
Are you sure you want to change the base?
fix(tm2): filter validator updates by valid power & pubkey #3925
Conversation
🛠 PR Checks SummaryAll Automated Checks passed. ✅ Manual Checks (for Reviewers):
Read More🤖 This bot helps streamline PR reviews by verifying automated checks and providing guidance for contributors and reviewers. ✅ Automated Checks (for Contributors):🟢 Maintainers must be able to edit this pull request (more info) ☑️ Contributor Actions:
☑️ Reviewer Actions:
📚 Resources:Debug
|
Codecov ReportAll modified and coverable lines are covered by tests ✅ 📢 Thoughts on this report? Let us know! |
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.
LGTM
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.
Blocking until I review 🙏
This is super touchy -- I'm not sure the node should continue if the on-chain valset emits a change
Prevent node crash on invalid validator pubkey type & invalid voting power
Problem
Currently, when a validator with an unsupported public key type (e.g., secp256k1 instead of ed25519) is added through GovDAO, the node crashes with the following error:
Solution
Instead of failing the entire block execution when encountering invalid validator updates, we now filter out invalid validators updates and continue with the valid ones. This makes the system more resilient while maintaining security.
https://www.youtube.com/watch?v=n_DKIVS3kxk
Changes
Before:
After:
I think this change does not compromise security as invalid validators are still prevented from joining the validator set. The only difference is that the system continues operating instead of crashing when encountering invalid updates.