-
Notifications
You must be signed in to change notification settings - Fork 247
Spec for staking module differences #1220
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
Conversation
|
Codecov ReportAll modified lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1220 +/- ##
==========================================
- Coverage 56.08% 56.07% -0.02%
==========================================
Files 63 63
Lines 6820 6820
==========================================
- Hits 3825 3824 -1
- Misses 2606 2607 +1
Partials 389 389 ☔ View full report in Codecov by Sentry. |
|
|
||
| Rollkit will support customizable functionality for verifying the correctness of a block proposer. However, it currently works by delegating this functionality to the Application, by checking that the `AggregatorsHash` of a header corresponds to the `NextAggregatorsHash` of the previous, where setting the `NextAggregtorsHash` is the responsibility of the ABCI Application. | ||
|
|
||
| ## Assumptions and Considerations |
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.
We should include here our assumptions around how tendermint staking works.
This would allow auditors to better verify our assumptions.
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.
"tendermint staking" does not exist. the ABCI App simply sets the validator set
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.
Yes, we use the staking module for that.
nashqueue
left a comment
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 spec aims to check how we use the staking module vs. how it is used in tendermint. Please elaborate on that.
|
|
||
| Rollkit will support customizable functionality for verifying the correctness of a block proposer. However, it currently works by delegating this functionality to the Application, by checking that the `AggregatorsHash` of a header corresponds to the `NextAggregatorsHash` of the previous, where setting the `NextAggregtorsHash` is the responsibility of the ABCI Application. | ||
|
|
||
| ## Assumptions and Considerations |
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.
Yes, we use the staking module for that.
don't we use it in exactly the same way? |
The point of this spec is to exactly figure this out and to make sure to capture the nuances if there are differences. |
|
As of #1291, we decided that Rollkit vA will control the proposer entirely, ignoring all validator set updates from the ABCI app. This is being implemented in the |
closes #1220 Instead of #1220, we'll just fix and update the block_spec. Also adds the termination condition, and processing out-of-order rollup blocks from DA. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a requirement for blocks to have a valid signature from the centralized sequencer. - Implemented support for out-of-order rollup blocks on the Data Availability network. - Added a termination condition for sequencer double-signing scenarios. - **Documentation** - Updated block specification documentation to reflect new validation rules. - Added diagrams to illustrate out-of-order block handling and termination conditions. - **Refactor** - Removed `AggregatorsHash` and `NextAggregatorsHash` fields from block headers to streamline the validation process. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Connor O'Hara <connor@switchboard.xyz>
closes #1220 Instead of #1220, we'll just fix and update the block_spec. Also adds the termination condition, and processing out-of-order rollup blocks from DA. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a requirement for blocks to have a valid signature from the centralized sequencer. - Implemented support for out-of-order rollup blocks on the Data Availability network. - Added a termination condition for sequencer double-signing scenarios. - **Documentation** - Updated block specification documentation to reflect new validation rules. - Added diagrams to illustrate out-of-order block handling and termination conditions. - **Refactor** - Removed `AggregatorsHash` and `NextAggregatorsHash` fields from block headers to streamline the validation process. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Connor O'Hara <connor@switchboard.xyz>
No description provided.