-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
punishment module #246
Comments
We need to forcibly unbond validators that are unavailable. I think everything that involves changing the voting power of a validator, such as getting slashed or going offline, should live within a single module. The latter just doesn't cause a reduction in the stake. |
From Slack: adrian [3:08 PM] rige [3:09 PM] adrian rige [3:15 PM] |
hmm.. Also a good point that slashing also involves changing the validator set because less bonded tokens (and some punishments should also including unbond the tokens if clearly malicious)... I'm still leaning to seperate module interacting with the staking module though... we have these interact easily, and staking should really be reserved for the staking side of things, folks may want to implement customized punishment rules for their blockchains |
|
|
Bucky seems to think that the punishment module "punmod" may actually want access to the bond amounts. May have to make this queryable.. |
Somewhat related, but shouldn't "unavailable" validators cause the rewards of all validators to be decreased, not just the "unavailable" one? Are rewards in the staking module? |
@sunnya97 yes rewards are in the staking module... This is an interesting question as to whether the group of all validators should be punished for loss in availability in a single (or a threshold) of validators. I think CASPER may be exploring this idea, you'll need to hit up @ebuchman on that question. Ultimately I'd like to see an incentive evaluation on this idea to arrive at a logical conclusion as to why or why we should implement collective punishment |
At the very least, the design of the SDK should enable it easily |
Will Tendermint provide invalidator behaviour information over ABCI so that apps can implement punishment? How will his work, will be we be passed additional information on |
stale. this is part of staking module |
(cherry picked from commit f69c198) Co-authored-by: Roman <[email protected]>
(cherry picked from commit f69c198) Co-authored-by: Roman <[email protected]>
(cherry picked from commit f69c198) Co-authored-by: Roman <[email protected]>
…ial-probably chore!: Upgrade QGB branch to v0.46.0
I'm thinking that all the slashing and associated proofs, as well as the logic associated with unbonding a validator with poor availability could maybe fit neatly into a SDK module? Am I out to lunch? The unbonding validator functionality would need to interface with the staking module to actually perform the unbond. Thoughts?
The text was updated successfully, but these errors were encountered: