Repository navigation
merge queue: queuing epbs (d5650d7) and #1080 together - #1081
Closed
mergify[bot] wants to merge 5 commits into
Closed
mergify[bot] wants to merge 5 commits into
mergify[bot] wants to merge 5 commits into
Conversation
Retargets the merged committee-scoped Role::PTCCommittee to a validator-scoped, leaderless Role::PTCAttester per SIP-94 §3, and gives PTC its own PartialSignatureKind::PTCAttester = 7 instead of reusing PostConsensus. Wire bytes are unchanged (Role byte 7; kind value 7). - msgid: rename the role, drop it from is_committee_role, max_round is None (non-QBFT), validator-scoped duty executor; add is_non_qbft_role. - partial_sig: add PartialSignatureKind::PTCAttester = 7. - message_validator: bucket PTC as pre-consensus, bind the PTCAttester role to the PTCAttester kind, enforce the per-validator one-message-per-packet bound (removing the dead committee occurrence helpers), flat duty_limit of Some(2), and reject consensus messages for non-QBFT roles via is_non_qbft_role. - qbft_manager: drop the PTC routing stub; PTCAttester rejects QBFT messages as an inconsistent message id in both executor branches.
Add classification asserts for PTCAttester (not committee-scoped, no max round, non-QBFT) so a silent revert of the retarget fails a test, and extend the non-consensus-role rejection test to cover PTCAttester. Also regroup PTCAttester into the non-QBFT arm of qbft_manager's committee-executor match; same InconsistentMessageId outcome, clearer intent.
Payload attestations are gossip-valid only for their own slot and block-includable only at slot + 1, so PTC partials older than that are useless. Move PTCAttester from the epoch-long TTL bucket (34 slots, inherited from the committee-scoped design) to the Proposer/SyncCommittee slot-bound bucket (3 slots).
Review feedback on #1080: - Rename is_non_qbft_role to is_qbft_role and negate at the consensus-message guard, mirroring how is_committee_role is named positively and negated at call sites (petarjuki7). - Pin every role's QBFT classification in a test so a new role landing in the wrong max_round arm fails loudly instead of silently flipping validation behavior (jnhsigmap). - Drop the unreachable FailedToGetMaxRound variant: the guard already rejects every role without a max round, so the fallback now returns UnexpectedConsensusMessage, which is also what the branch would mean if it ever fired (jnhsigmap).
|
Your PR title doesn't follow the Conventional Commit guidelines. Example of valid titles:
Usage:
Breaking Changes Breaking changes are noted by using an exclamation mark. For example:
Help For more information, follow the guidelines here: https://www.conventionalcommits.org/en/v1.0.0/ |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## epbs #1081 +/- ##
=======================================
Coverage ? 62.52%
=======================================
Files ? 156
Lines ? 26547
Branches ? 0
=======================================
Hits ? 16598
Misses ? 9949
Partials ? 0
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🎉 This pull request has been checked successfully and will be merged soon. 🎉
Branch epbs (d5650d7) and #1080 are queued together for merge.
This pull request has been created by Mergify to check the mergeability of #1080.
You don't need to do anything. Mergify will close this pull request automatically when it is complete.
Required conditions of queue rule
defaultfor merge:check-success=test-suite-successRequired conditions to stay in the queue:
#approved-reviews-by >= 1check-success=license/clacheck-success=target-branch-checklabel!=do-not-merge