-
Notifications
You must be signed in to change notification settings - Fork 12
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
Qbft justifications #122
Qbft justifications #122
Conversation
Do we know how to fix this failing CI? |
I investigated a bit, see #123 |
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.
Added some first thoughts.
Update: There are a few bugs in this code that I have fixed in the qbft testing pr. Can also make the updates here if needed.
If it's not a lot of effort, it would be nice if you merge the fixes into this one.
There are a lot of TODOs in the comment, and one todo!()
invocation. Do you plan to address them, and do you want to discuss any specific ones?
added #127 to track getting rid of some of these |
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, good job!
There is the commit aggregation and some refactoring left to do as discussed, but let's go ahead with this to enable testing. Thanks!
Issue Addressed
#106
Proposed Changes
This is an initial implementation of the round change and prepare justifications for proper qbft behavior. The actual justification implementation is pretty small, but a lot of message validation checks have been added in from the spec. In the future, we can more rigorously sift through the checks to only keep what we need.
Additional Info
We do not have the the infra in place to properly test this. I have a follow up PR in progress that adds testing functionality (#98). The plan is to get this in and then follow up with another PR where all testing, bugfixes, and general productionizing occur so that the scope of this PR is limited.
Update: There are a few bugs in this code that I have fixed in the qbft testing pr. Can also make the updates here if needed.