-
Notifications
You must be signed in to change notification settings - Fork 110
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
feat(dot/parachain): implement candidate validation from chainstate #4067
feat(dot/parachain): implement candidate validation from chainstate #4067
Conversation
5095cb6
to
b20f628
Compare
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.
why are there so many commits on this PR but only 5 files changed?
b20f628
to
d3d152e
Compare
5eef681
to
d3d152e
Compare
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.
Should be good after resolving these comments.
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
…meInstance directly
dot/parachain/candidate-validation/candidate_validation_test.go
Outdated
Show resolved
Hide resolved
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!
…4067) Co-authored-by: Timothy Wu <tim.wu@chainsafe.io> test(dot/parachain/backing): make sure parachain candidate reaches quorum (#4115) - written integration test to check everything mentioned above - I re-wrote the logic to convert the attested to the backed candidate. (was not working as expected) - minor changes in dot/parachain/backing/per_relay_parent_state.go to improve the readability. test(dot/parachain/backing): validation fail does not stop the candidate backing subsystem (#4117) address merge conflicts chore(dot/parachain): improve Run method of subsystems (#4113) - I have updated the Run method of the subsystem interface to pass only necessary arguments. - removed context, context cancel func, wait group and OverseerToSubSystem channel from the state struct of all the subsystems(example: candidateBacking{}, AvailabilityStoreSubsystem{}). - improved Run method of some subsystems. - removed return type from RegisterSubsystem method of overseer. - because of these changes, some tests were failing, so I fixed those tests.
Changes
Note this should be merged after PR #4036 has been merged since this PR is based on that branch.
Implement updates to candidate validation subsystem to handle validation from chainstate.
validateFromChainState
utilizes getValidationData function to assemble persisted validation data and validation code.validateFromExhaustive
with retrieved data to validate candidate.Tests
go test github.com/ChainSafe/gossamer/dot/parachain/candidate-validation -v -run ^TestCandidateValidation_validateFromChainState$
Issues
closes #3919