Versions in this module Expand all Collapse all v1 v1.0.2 Dec 8, 2020 v1.0.0 Sep 28, 2020 v0 v0.0.0 Oct 19, 2020 Changes in this version + const DefaultDowntimeJailDuration + const DefaultMaxEvidenceAge + const DefaultParamspace + const DefaultSignedBlocksWindow + const ModuleName + const QuerierRoute + const QueryParameters + const QuerySigningInfo + const QuerySigningInfos + const RouterKey + const StoreKey + const TypeMsgUnjail + var AddrPubkeyRelationKey = []byte + var AttributeKeyAddress = "address" + var AttributeKeyHeight = "height" + var AttributeKeyJailed = "jailed" + var AttributeKeyMissedBlocks = "missed_blocks" + var AttributeKeyPower = "power" + var AttributeKeyReason = "reason" + var AttributeValueCategory = ModuleName + var AttributeValueDoubleSign = "double_sign" + var AttributeValueMissingSignature = "missing_signature" + var DefaultMinSignedPerWindow = sdk.NewDecWithPrec(5, 2) + var DefaultSlashFractionDoubleSign = sdk.NewDec(1).Quo(sdk.NewDec(1000)) + var DefaultSlashFractionDowntime = sdk.NewDec(1).Quo(sdk.NewDec(10000)) + var DoubleSignJailEndTime = time.Unix(253402300799, 0) + var ErrBadValidatorAddr = sdkerrors.New(ModuleName, 2, "validator does not exist for that address") + var ErrDelegatorExceedMaxLever = sdkerrors.New(ModuleName, 8, "delegation exceed max lever") + var ErrMissingSelfDelegation = sdkerrors.New(ModuleName, 5, "validator has no self-delegation; cannot be unjailed") + var ErrNoSigningInfoFound = sdkerrors.New(ModuleName, 7, "no validator signing info found") + var ErrNoValidatorForAddress = sdkerrors.New(ModuleName, 1, "address is not associated with any known validator") + var ErrSelfDelegationTooLowToUnjail = sdkerrors.New(ModuleName, 6, ...) + var ErrValidatorJailed = sdkerrors.New(ModuleName, 3, "validator still jailed; cannot be unjailed") + var ErrValidatorNotJailed = sdkerrors.New(ModuleName, 4, "validator not jailed; cannot be unjailed") + var EventTypeLiveness = "liveness" + var EventTypeSlash = "slash" + var KeyDowntimeJailDuration = []byte("DowntimeJailDuration") + var KeyMaxEvidenceAge = []byte("MaxEvidenceAge") + var KeyMinSignedPerWindow = []byte("MinSignedPerWindow") + var KeySignedBlocksWindow = []byte("SignedBlocksWindow") + var KeySlashFractionDoubleSign = []byte("SlashFractionDoubleSign") + var KeySlashFractionDowntime = []byte("SlashFractionDowntime") + var ModuleCdc *codec.Codec + var ValidatorMissedBlockBitArrayKey = []byte + var ValidatorSigningInfoKey = []byte + func GetAddrPubkeyRelationKey(address []byte) []byte + func GetValidatorMissedBlockBitArrayKey(v sdk.ConsAddress, i int64) []byte + func GetValidatorMissedBlockBitArrayPrefixKey(v sdk.ConsAddress) []byte + func GetValidatorSigningInfoAddress(key []byte) (v sdk.ConsAddress) + func GetValidatorSigningInfoKey(v sdk.ConsAddress) []byte + func ParamKeyTable() params.KeyTable + func RegisterCodec(cdc *codec.Codec) + func ValidateGenesis(data GenesisState) error + type GenesisState struct + MissedBlocks map[string][]MissedBlock + Params Params + SigningInfos map[string]ValidatorSigningInfo + func DefaultGenesisState() GenesisState + func NewGenesisState(params Params, signingInfos map[string]ValidatorSigningInfo, ...) GenesisState + type MissedBlock struct + Index int64 + Missed bool + type MsgUnjail struct + ValidatorAddr sdk.ValAddress + func NewMsgUnjail(validatorAddr sdk.ValAddress) MsgUnjail + func (msg MsgUnjail) GetSignBytes() []byte + func (msg MsgUnjail) GetSigners() []sdk.AccAddress + func (msg MsgUnjail) Route() string + func (msg MsgUnjail) Type() string + func (msg MsgUnjail) ValidateBasic() error + type Params struct + DowntimeJailDuration time.Duration + MaxEvidenceAge time.Duration + MinSignedPerWindow sdk.Dec + SignedBlocksWindow int64 + SlashFractionDoubleSign sdk.Dec + SlashFractionDowntime sdk.Dec + func DefaultParams() Params + func NewParams(maxEvidenceAge time.Duration, signedBlocksWindow int64, ...) Params + func (p *Params) ParamSetPairs() params.ParamSetPairs + func (p Params) String() string + func (p Params) Validate() error + type QuerySigningInfoParams struct + ConsAddress sdk.ConsAddress + func NewQuerySigningInfoParams(consAddr sdk.ConsAddress) QuerySigningInfoParams + type QuerySigningInfosParams struct + Limit int + Page int + func NewQuerySigningInfosParams(page, limit int) QuerySigningInfosParams + type StakingHooks interface + AfterValidatorBonded func(ctx sdk.Context, consAddr sdk.ConsAddress, valAddr sdk.ValAddress) + AfterValidatorCreated func(ctx sdk.Context, valAddr sdk.ValAddress) + AfterValidatorRemoved func(ctx sdk.Context, consAddr sdk.ConsAddress, valAddr sdk.ValAddress) + type StakingKeeper interface + Delegation func(sdk.Context, sdk.AccAddress, sdk.ValAddress) exported.DelegationI + IterateValidators func(sdk.Context, func(index int64, validator exported.ValidatorI) (stop bool)) + Jail func(sdk.Context, sdk.ConsAddress) + MaxLever func(ctx sdk.Context) (res sdk.Dec) + MaxValidators func(sdk.Context) uint16 + Slash func(sdk.Context, sdk.ConsAddress, int64, int64, sdk.Dec) + Unjail func(sdk.Context, sdk.ConsAddress) + Validator func(sdk.Context, sdk.ValAddress) exported.ValidatorI + ValidatorByConsAddr func(sdk.Context, sdk.ConsAddress) exported.ValidatorI + type ValidatorSigningInfo struct + Address sdk.ConsAddress + IndexOffset int64 + JailedUntil time.Time + MissedBlocksCounter int64 + StartHeight int64 + Tombstoned bool + func NewValidatorSigningInfo(condAddr sdk.ConsAddress, startHeight, indexOffset int64, ...) ValidatorSigningInfo + func (i ValidatorSigningInfo) String() string