Correct reward denominator in op pool #5047
Open
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.
Issue Addressed
Closes #5016
Proposed Changes
The op pool was using the wrong denominator when calculating proposer block rewards! This was mostly inconsequential as our studies of Lighthouse's block profitability already showed that it is very close to optimal. The wrong denominator was leftover from phase0 code, and wasn't properly updated for Altair.
Additional Info
After this change there is better agreement between
/lighthouse/analysis/block_rewards
and the standard rewards API, however they are not yet calculating identical results because of how the per-attestation rewards are rounded in/lighthouse/analysis/block_rewards
. A more extensive refactor of the max cover code to divide by the denominator after grouping attesters by attestation would fix this discrepancy.E.g.
I'm not sure if this change is worth making yet.