A user can query and interact with the slashing
module using the CLI. For more information about how slashing works on the Secret Network go to the Node Runners page and look for the 'Slashing For Downtime' section.
See Slashing for the official Cosmos Network module documentation.
The query
commands allow users to query slashing
state:
The params
command allows users to query genesis parameters for the slashing module.
signed_blocks_window
, alongside min_signed_per_window
is how validator uptime is calculated. With an average block time of 6 seconds, 22500
blocks is roughly 37 hours worth of blocks.
min_signed_per_window
is a percentage. For Secret, that number is 50%. In other words, to become jailed, a validator must miss half of the 22500
blocks (as defined by signed_blocks_window
) in order to become jailed. Given that 22500 blocks takes roughly 37 hours, it'd require missing nearly 18 hours of consecutive blocks to become jailed and incur a downtime slashing event.
downtime_jail_duration
is how many seconds must pass before a validator can become unjailed by running secretd tx slashing unjail --from {wallet}
.
slash_fraction_double_sign
is the percent of all stake on the validator that is burned when a validator is slashed. For most networks including Secret, that value is 5%. Meaning, if 100 SCRT is delegated to the validator regardless of whether it's owned by the operator or delegators, 5 SCRT will be burned and permanently taken out of circulation.
slash_fraction_downtime
is the percent of all stake on the validator that is burned when a validator is slashed. For most networks including Secret, that value is 0.01%. Meaning, if 100 SCRT is delegated to the validator regardless of whether it's owned by the operator or delegators, 0.01 SCRT will be burned and permanently taken out of circulation.
The signing-info
command allows users to query signing-info of the validator using consensus public key.
The signing-infos
command allows users to query signing infos of all validators.
The tx
commands allow users to interact with the slashing
module.
The unjail
command allows users to unjail a validator previously jailed for downtime.