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.
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
add page on pos rewards and penalties #7541
add page on pos rewards and penalties #7541
Changes from 1 commit
dc4863c
e774eb6
23ec421
74bdf60
0d67554
b10031e
d1427c9
7686124
7b5962e
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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 the left side of these comparison not just be
reward
? orvalidator_reward
?It's confusing to see the form "x == x * c" as this can only mathematically be true if x is zero.
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.
I think not, as it;s not the final reward that's being calculated, it's an adjustment to the
base_reward
specifically. Agree that==
is incorrect as it should indicate an assignment not an equality.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.
Ok.. the assignment operand makes more sense, but could we not use another name as the intermediate value here to prevent confusion?
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.
ok, how about just being really explicit about it:
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 we explain what sync committees are here?
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.
Would this still be called "
base_reward
"? Wouldn't this just be "reward", kinda like "penalty", each of which calculated usingbase_reward
? (Similar to note above)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.
@jmcook1186 Check me here... Trying to interpret the table, and if I understand it all correctly, I would suggest we remove the
inclusion_delay
column, and just explicitly add the *7/8 to the "reward" column. This makes it clearer that this only applies to the reward side of the question, leaving what is essentially "rewards - penalties".Would also suggest explicitly adding the "1 *" multiplier to it's easier to see the trend of the working math.
Lastly, a handful of underscores here and not sure I understand the "Result" column fully, but if my approach above is correct I think this should be as follows:
(same as above)
redacted table suggestionThere 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.
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.
@jmcook1186 Can you help me more with where the
31/8
comes from?Wouldn't it be 100% participation * 1/1 slot inclusion * 3 correct votes * 7/8 attester reward share *
base_reward
, which would be21/8 * base_reward
Same with the others in this section.. maybe I need more clarification on the table above and how exactly that's being determined.
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.
I think it is 8/8 * 3 *
base_reward
for source, target and head votes, plus 7/8 *base_reward
= 31/8.I'm not 100% sure this is right, but it is consistent with the kb.beaconchain info.
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.
Mainly just a little style addition to make it easier to compare the coefficients
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.
As of Bellatrix
And similar to above (perhaps this is the better place for it), a note about why this occurs would be good. Reiterating, some version of how the staked ETH needs to remain accessible to the protocol, while banned that validator from casting any further votes. The correlation penalty is because this is perceived as a coordinated attack.