Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 1 addition & 14 deletions x/vaas/consumer/types/events.go
Original file line number Diff line number Diff line change
@@ -1,18 +1,5 @@
package types

const (
AttributeConsumerHeight = "consumer_height"
AttributeTimestamp = "timestamp"

EventTypeFeeDistribution = "fee_distribution"
EventTypeVSCMatured = "vsc_matured"
EventTypeConsumerSlashRequest = "consumer_slash_request"
EventTypeFeeTransferChannelOpened = "fee_transfer_channel_opened"

AttributeDistributionCurrentHeight = "current_distribution_height"
//#nosec G101 -- (false positive) this is not a hardcoded credential
AttributeDistributionNextHeight = "next_distribution_height"
AttributeDistributionFraction = "distribution_fraction"
AttributeDistributionTotal = "total"
AttributeDistributionToProvider = "provider_amount"
EventTypeConsumerSlashRequest = "consumer_slash_request"
)
2 changes: 0 additions & 2 deletions x/vaas/consumer/types/genesis.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ import (
)

// NewRestartGenesisState returns a consumer GenesisState that has already been established.
// Note: OutstandingDowntimeSlashing and LastTransmissionBlockHeight are deprecated
// as slash and distribution features have been removed.
func NewRestartGenesisState(
clientID string,
initValSet []abci.ValidatorUpdate,
Expand Down
26 changes: 13 additions & 13 deletions x/vaas/consumer/types/keys.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,17 @@ const (
// Collection key prefixes for use with cosmossdk.io/collections
var (
PortPrefix = collections.NewPrefix(0)
UnbondingTimePrefix = collections.NewPrefix(2)
ProviderClientIDPrefix = collections.NewPrefix(3)
PendingChangesPrefix = collections.NewPrefix(5)
PreVAASPrefix = collections.NewPrefix(7)
InitialValSetPrefix = collections.NewPrefix(8)
HistoricalInfoPrefix = collections.NewPrefix(11)
HeightValsetUpdateIDPrefix = collections.NewPrefix(13)
CrossChainValidatorPrefix = collections.NewPrefix(16)
InitGenesisHeightPrefix = collections.NewPrefix(17)
PrevStandaloneChainPrefix = collections.NewPrefix(19)
ParametersPrefix = collections.NewPrefix(22)
HighestValsetUpdateIDPrefix = collections.NewPrefix(23)
ConsumerDebtPrefix = collections.NewPrefix(24)
UnbondingTimePrefix = collections.NewPrefix(1)
ProviderClientIDPrefix = collections.NewPrefix(2)
PendingChangesPrefix = collections.NewPrefix(3)
PreVAASPrefix = collections.NewPrefix(4)
InitialValSetPrefix = collections.NewPrefix(5)
HistoricalInfoPrefix = collections.NewPrefix(6)
HeightValsetUpdateIDPrefix = collections.NewPrefix(7)
CrossChainValidatorPrefix = collections.NewPrefix(8)
InitGenesisHeightPrefix = collections.NewPrefix(9)
PrevStandaloneChainPrefix = collections.NewPrefix(10)
ParametersPrefix = collections.NewPrefix(11)
HighestValsetUpdateIDPrefix = collections.NewPrefix(12)
ConsumerDebtPrefix = collections.NewPrefix(13)
)
2 changes: 1 addition & 1 deletion x/vaas/provider/keeper/consumer_lifecycle.go
Original file line number Diff line number Diff line change
Expand Up @@ -412,7 +412,7 @@ func (k Keeper) DeleteConsumerChain(ctx sdk.Context, consumerId string) (err err
// TODO (PERMISSIONLESS) add newly-added state to be deleted

// Note that we do not delete ConsumerIdToChainIdKey and ConsumerIdToPhase, as well
// as consumer metadata, initialization and power-shaping parameters.
// as consumer metadata and initialization parameters.
// This is to enable block explorers and front ends to show information of
// consumer chains that were removed without needing an archive node.

Expand Down
2 changes: 1 addition & 1 deletion x/vaas/provider/keeper/msg_server.go
Original file line number Diff line number Diff line change
Expand Up @@ -259,7 +259,7 @@ func (k msgServer) CreateConsumer(goCtx context.Context, msg *types.MsgCreateCon
return &resp, nil
}

// UpdateConsumer updates the metadata, power-shaping or initialization parameters of a consumer chain
// UpdateConsumer updates the metadata or initialization parameters of a consumer chain
func (k msgServer) UpdateConsumer(goCtx context.Context, msg *types.MsgUpdateConsumer) (*types.MsgUpdateConsumerResponse, error) {
ctx := sdk.UnwrapSDKContext(goCtx)
resp := types.MsgUpdateConsumerResponse{}
Expand Down
13 changes: 4 additions & 9 deletions x/vaas/provider/keeper/relay.go
Original file line number Diff line number Diff line change
Expand Up @@ -307,15 +307,10 @@ func (k Keeper) QueueVSCPackets(ctx sdk.Context) error {
return nil
}

// BeginBlockCIS contains the BeginBlock logic needed for the Consumer Initiated Slashing sub-protocol.
// Slash throttling has been removed.
func (k Keeper) BeginBlockCIS(ctx sdk.Context) {
// Slash throttling removed - no-op
}

// EndBlockCIS contains the EndBlock logic needed for
// the Consumer Initiated Slashing sub-protocol
func (k Keeper) EndBlockCIS(ctx sdk.Context) {
// EndBlockTrackValsetUpdates records the height-to-VSC-ID mapping for the
// next block and prunes per-consumer key-assignment entries that are no
// longer reachable.
func (k Keeper) EndBlockTrackValsetUpdates(ctx sdk.Context) {
// set the ValsetUpdateBlockHeight
blockHeight := uint64(ctx.BlockHeight()) + 1
valUpdateID := k.GetValidatorSetUpdateId(ctx)
Expand Down
2 changes: 1 addition & 1 deletion x/vaas/provider/module.go
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ func (am AppModule) BeginBlock(ctx context.Context) error {
func (am AppModule) EndBlock(ctx context.Context) ([]abci.ValidatorUpdate, error) {
sdkCtx := sdk.UnwrapSDKContext(ctx)

am.keeper.EndBlockCIS(sdkCtx)
am.keeper.EndBlockTrackValsetUpdates(sdkCtx)

return am.keeper.EndBlockVSU(sdkCtx)
}
Expand Down
45 changes: 22 additions & 23 deletions x/vaas/provider/types/errors.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,26 @@ import (

// Provider sentinel errors
var (
ErrUnknownConsumerId = errorsmod.Register(ModuleName, 3, "no consumer chain with this consumer id")
ErrConsumerKeyInUse = errorsmod.Register(ModuleName, 10, "consumer key is already in use by a validator")
ErrCannotAssignDefaultKeyAssignment = errorsmod.Register(ModuleName, 11, "cannot re-assign default key assignment")
ErrInvalidConsumerClient = errorsmod.Register(ModuleName, 16, "VAAS channel is not built on correct client")
ErrNoUnbondingTime = errorsmod.Register(ModuleName, 23, "provider unbonding time not found")
ErrUnauthorized = errorsmod.Register(ModuleName, 25, "unauthorized")
ErrInvalidPhase = errorsmod.Register(ModuleName, 27, "cannot perform action in the current phase of consumer chain")
ErrInvalidConsumerMetadata = errorsmod.Register(ModuleName, 28, "invalid consumer metadata")
ErrInvalidPowerShapingParameters = errorsmod.Register(ModuleName, 29, "invalid power shaping parameters")
ErrInvalidConsumerInitializationParameters = errorsmod.Register(ModuleName, 30, "invalid consumer initialization parameters")
ErrNoConsumerGenesis = errorsmod.Register(ModuleName, 33, "missing consumer genesis")
ErrInvalidConsumerGenesis = errorsmod.Register(ModuleName, 34, "invalid consumer genesis")
ErrNoConsumerId = errorsmod.Register(ModuleName, 35, "missing consumer id")
ErrNoOwnerAddress = errorsmod.Register(ModuleName, 37, "missing owner address")
ErrInvalidNewOwnerAddress = errorsmod.Register(ModuleName, 38, "invalid new owner address")
ErrInvalidRemovalTime = errorsmod.Register(ModuleName, 43, "invalid removal time")
ErrInvalidMsgCreateConsumer = errorsmod.Register(ModuleName, 44, "invalid create consumer message")
ErrInvalidMsgUpdateConsumer = errorsmod.Register(ModuleName, 45, "invalid update consumer message")
ErrInvalidMsgAssignConsumerKey = errorsmod.Register(ModuleName, 46, "invalid assign consumer key message")
ErrInvalidMsgSubmitConsumerMisbehaviour = errorsmod.Register(ModuleName, 47, "invalid submit consumer misbehaviour message")
ErrInvalidMsgSubmitConsumerDoubleVoting = errorsmod.Register(ModuleName, 48, "invalid submit consumer double voting message")
ErrInvalidConsumerInfractionParameters = errorsmod.Register(ModuleName, 54, "invalid consumer infraction parameters")
ErrDuplicateChainId = errorsmod.Register(ModuleName, 55, "consumer chain-id is already in use")
ErrUnknownConsumerId = errorsmod.Register(ModuleName, 1, "no consumer chain with this consumer id")
ErrConsumerKeyInUse = errorsmod.Register(ModuleName, 2, "consumer key is already in use by a validator")
ErrCannotAssignDefaultKeyAssignment = errorsmod.Register(ModuleName, 3, "cannot re-assign default key assignment")
ErrInvalidConsumerClient = errorsmod.Register(ModuleName, 4, "VAAS channel is not built on correct client")
ErrNoUnbondingTime = errorsmod.Register(ModuleName, 5, "provider unbonding time not found")
ErrUnauthorized = errorsmod.Register(ModuleName, 6, "unauthorized")
ErrInvalidPhase = errorsmod.Register(ModuleName, 7, "cannot perform action in the current phase of consumer chain")
ErrInvalidConsumerMetadata = errorsmod.Register(ModuleName, 8, "invalid consumer metadata")
ErrInvalidConsumerInitializationParameters = errorsmod.Register(ModuleName, 9, "invalid consumer initialization parameters")
ErrNoConsumerGenesis = errorsmod.Register(ModuleName, 10, "missing consumer genesis")
ErrInvalidConsumerGenesis = errorsmod.Register(ModuleName, 11, "invalid consumer genesis")
ErrNoConsumerId = errorsmod.Register(ModuleName, 12, "missing consumer id")
ErrNoOwnerAddress = errorsmod.Register(ModuleName, 13, "missing owner address")
ErrInvalidNewOwnerAddress = errorsmod.Register(ModuleName, 14, "invalid new owner address")
ErrInvalidRemovalTime = errorsmod.Register(ModuleName, 15, "invalid removal time")
ErrInvalidMsgCreateConsumer = errorsmod.Register(ModuleName, 16, "invalid create consumer message")
ErrInvalidMsgUpdateConsumer = errorsmod.Register(ModuleName, 17, "invalid update consumer message")
ErrInvalidMsgAssignConsumerKey = errorsmod.Register(ModuleName, 18, "invalid assign consumer key message")
ErrInvalidMsgSubmitConsumerMisbehaviour = errorsmod.Register(ModuleName, 19, "invalid submit consumer misbehaviour message")
ErrInvalidMsgSubmitConsumerDoubleVoting = errorsmod.Register(ModuleName, 20, "invalid submit consumer double voting message")
ErrInvalidConsumerInfractionParameters = errorsmod.Register(ModuleName, 21, "invalid consumer infraction parameters")
ErrDuplicateChainId = errorsmod.Register(ModuleName, 22, "consumer chain-id is already in use")
)
58 changes: 26 additions & 32 deletions x/vaas/provider/types/keys.go
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,6 @@ const (

ConsumerIdToInitializationParametersKeyName = "ConsumerIdToInitializationParametersKey"

ConsumerIdToPowerShapingParameters = "ConsumerIdToPowerShapingParametersKey"

ConsumerIdToPhaseKeyName = "ConsumerIdToPhaseKey"

ConsumerIdToRemovalTimeKeyName = "ConsumerIdToRemovalTimeKey"
Expand All @@ -75,8 +73,6 @@ const (
// This is the reverse lookup mechanism for IBC v2 client-based communication.
ClientIdToConsumerIdKeyName = "ClientIdToConsumerIdKey"

PrioritylistKeyName = "PrioritylistKey"

ConsumerIdToInfractionParametersKeyName = "ConsumerIdToInfractionParametersKey"

ConsumerIdToQueuedInfractionParametersKeyName = "ConsumerIdToQueuedInfractionParametersKeyName"
Expand All @@ -88,33 +84,31 @@ const (

// Collection key prefixes for use with cosmossdk.io/collections
var (
ValidatorSetUpdateIdPrefix = collections.NewPrefix(1)
ConsumerIdToClientIdPrefix = collections.NewPrefix(4)
ValsetUpdateBlockHeightPrefix = collections.NewPrefix(5)
ConsumerGenesisPrefix = collections.NewPrefix(6)
InitChainHeightPrefix = collections.NewPrefix(7)
PendingVSCsPrefix = collections.NewPrefix(8)
ConsumerValidatorsPrefix = collections.NewPrefix(9)
ValidatorsByConsumerAddrPrefix = collections.NewPrefix(10)
EquivocationEvidenceMinHeightPrefix = collections.NewPrefix(11)
ConsumerValidatorPrefix = collections.NewPrefix(12)
ConsumerAddrsToPrunePrefix = collections.NewPrefix(13)
LastProviderConsensusVals = collections.NewPrefix(14)
ConsumerIdPrefix = collections.NewPrefix(15)
ConsumerIdToChainIdPrefix = collections.NewPrefix(16)
ConsumerIdToOwnerAddressPrefix = collections.NewPrefix(17)
ConsumerIdToMetadataPrefix = collections.NewPrefix(18)
ConsumerIdToInitializationParamsPrefix = collections.NewPrefix(19)
ConsumerIdToPowerShapingParamsPrefix = collections.NewPrefix(20)
ConsumerIdToPhasePrefix = collections.NewPrefix(21)
ConsumerIdToRemovalTimePrefix = collections.NewPrefix(22)
SpawnTimeToConsumerIdsPrefix = collections.NewPrefix(23)
RemovalTimeToConsumerIdsPrefix = collections.NewPrefix(24)
ClientIdToConsumerIdPrefix = collections.NewPrefix(25)
PrioritylistPrefix = collections.NewPrefix(26)
ConsumerIdToInfractionParamsPrefix = collections.NewPrefix(27)
ConsumerIdToQueuedInfractionPrefix = collections.NewPrefix(28)
InfractionScheduledTimePrefix = collections.NewPrefix(29)
ConsumerIdToDebtPrefix = collections.NewPrefix(30)
ValidatorSetUpdateIdPrefix = collections.NewPrefix(0)
ConsumerIdToClientIdPrefix = collections.NewPrefix(1)
ValsetUpdateBlockHeightPrefix = collections.NewPrefix(2)
ConsumerGenesisPrefix = collections.NewPrefix(3)
InitChainHeightPrefix = collections.NewPrefix(4)
PendingVSCsPrefix = collections.NewPrefix(5)
ConsumerValidatorsPrefix = collections.NewPrefix(6)
ValidatorsByConsumerAddrPrefix = collections.NewPrefix(7)
EquivocationEvidenceMinHeightPrefix = collections.NewPrefix(8)
ConsumerValidatorPrefix = collections.NewPrefix(9)
ConsumerAddrsToPrunePrefix = collections.NewPrefix(10)
LastProviderConsensusVals = collections.NewPrefix(11)
ConsumerIdPrefix = collections.NewPrefix(12)
ConsumerIdToChainIdPrefix = collections.NewPrefix(13)
ConsumerIdToOwnerAddressPrefix = collections.NewPrefix(14)
ConsumerIdToMetadataPrefix = collections.NewPrefix(15)
ConsumerIdToInitializationParamsPrefix = collections.NewPrefix(16)
ConsumerIdToPhasePrefix = collections.NewPrefix(17)
ConsumerIdToRemovalTimePrefix = collections.NewPrefix(18)
SpawnTimeToConsumerIdsPrefix = collections.NewPrefix(19)
RemovalTimeToConsumerIdsPrefix = collections.NewPrefix(20)
ClientIdToConsumerIdPrefix = collections.NewPrefix(21)
ConsumerIdToInfractionParamsPrefix = collections.NewPrefix(22)
ConsumerIdToQueuedInfractionPrefix = collections.NewPrefix(23)
InfractionScheduledTimePrefix = collections.NewPrefix(24)
ConsumerIdToDebtPrefix = collections.NewPrefix(25)
ParametersPrefix = collections.NewPrefix(0xFF)
)
Loading
Loading