fix: beacon: validate drand change at nv16 correctly #11690
Merged
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.
Related Issues
@rvagg reported an inability to sync epoch 510 on calibnet, the UpgradeSkyrHeight (nv16). This is because that upgrade included a "bump" in drand, that required 2 rounds to be included at that epoch. For more see #2170 and #8606.
The implementation of FIP-0073 introduced a new check that block headers only include precisely those rounds as matching the block epochs. This check works correctly for all epochs EXCEPT the UpgradeSkyrHeight, but is only needed for nv22 and after when we have unchained randomness.
Proposed Changes
Apply the new check only if the source of randomness is unchained (effectively saying nv22 and after only).
Additional Info
Checklist
Before you mark the PR ready for review, please make sure that:
<PR type>: <area>: <change being made>
fix: mempool: Introduce a cache for valid signatures
PR type
: fix, feat, build, chore, ci, docs, perf, refactor, revert, style, testarea
, e.g. api, chain, state, market, mempool, multisig, networking, paych, proving, sealing, wallet, deps