What's the difference between Unavailability and Non-voting


#1

Hi,
I have a question about the difference between Unavailability and Non-voting in slashing conditions which were documented in cosmos-sdk spec. Their explanations are as follows:

  • Unavailability: If a validator’s signature has not been included in the last X blocks, the validator will get slashed by a marginal amount proportional to X. If X is above a certain limit Y, then the validator will get unbonded

  • Non-voting: If a validator did not vote on a proposal, its stake will receive a minor slash.

To me, they described the same scenario when some validator didn’t vote a proposal for some reasons such as server downtime. Could anybody make a clarification?Waiting for the reply. :thinking:


#2

I think… former one is about consensus voting, later one is about governance proposal voting.
the slashing for later one does not exist anymore in current version.(old docs)


#3

Yeah, if this was true, it will make sense. So in summary:

  • Unavailability’s scenario: when validator didn’t participate in consensus process in some block heights.

  • Non-voting’s scenario: when someone(validator) submit a proposal, the validator didn’t vote the proposal for some reason. In other words, this scenario is in higher application logic than above consensus level.


#4

yep exactly. and for the later one, i heard in current version, proposal vote automatically done as abstain if he doesnt vote until proposal live period. so there is no punishment