mirror of
				https://github.com/0glabs/0g-chain.git
				synced 2025-11-04 10:37:26 +00:00 
			
		
		
		
	* Update cometbft, cosmos, ethermint, and ibc-go * Replace github.com/tendermint/tendermint by github.com/cometbft/cometbft * Replace github.com/tendermint/tm-db by github.com/cometbft/cometbft-db * Replace gogo/protobuf with cosmos/gogoproto & simapp replacement * Replace cosmos-sdk/simapp/helpers with cosmos-sdk/testutil/sims * Remove no longer used simulations * Replace ibchost with ibcexported See https://github.com/cosmos/ibc-go/blob/v7.2.2/docs/migrations/v6-to-v7.md#ibc-module-constants * Add new consensus params keeper * Add consensus keeper to blockers * Fix keeper and module issues in app.go * Add IsSendEnabledCoins and update SetParams interface changes * Fix protobuf build for cosmos 47 (#1800) * fix cp errors by using -f; fix lint by only linting our proto dir; and use proofs.proto directly from ics23 for ibc-go v7 * run proto-all; commit updated third party deps and swagger changes * regenerate proto files * use correct gocosmos build plugin for buf * re-gen all protobuf files to update paths for new gocosmos plugin * update protoc and buf to latest versions * fix staking keeper issues in app.go * update tally handler for gov changes * chain id fix and flag fixes * update deps for cometbft 47.7 upgrade * remove all module legacy queriers * update stakingKeeper to pointer * Replace ModuleCdc from govv1beta1 to govcodec * remove simulations * abci.LastCommitInfo → abci.CommitInfo * Remove unused code in keys.go * simapp.MakeTestEncodingConfig -> moduletestutil.MakeTestEncodingConfi * Fix chain id issues in tests * Fix remaining unit test issues * Update changelog for upgrade * Fix e2e tests using updated kvtool * Update protonet to v47 compatible genesis * Bump cometbft-db to v0.9.1-kava.1 * Update kvtool * Remove extra changelog * Fix merged rocksdb issues * go mod cleanup * Bump cometbft-db to v9 and go to 1.21 * Bump rocksdb version to v8.10.0 * Update kvtool to latest version * Update gin to v1.9.0 * Use ibctm.ModuleName in app_test * Fallback to genesis chain id instead of client toml * Remove all simulations * Fix cdp migrations issue with v47 * Update dependencies to correct tags --------- Co-authored-by: Nick DeLuca <nickdeluca08@gmail.com>
		
			
				
	
	
		
			202 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			202 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
syntax = "proto3";
 | 
						|
package cosmos.staking.v1beta1;
 | 
						|
 | 
						|
import "google/protobuf/any.proto";
 | 
						|
import "google/protobuf/timestamp.proto";
 | 
						|
import "gogoproto/gogo.proto";
 | 
						|
 | 
						|
import "cosmos_proto/cosmos.proto";
 | 
						|
import "cosmos/base/v1beta1/coin.proto";
 | 
						|
import "cosmos/staking/v1beta1/staking.proto";
 | 
						|
import "cosmos/msg/v1/msg.proto";
 | 
						|
import "amino/amino.proto";
 | 
						|
 | 
						|
option go_package = "github.com/cosmos/cosmos-sdk/x/staking/types";
 | 
						|
 | 
						|
// Msg defines the staking Msg service.
 | 
						|
service Msg {
 | 
						|
  option (cosmos.msg.v1.service) = true;
 | 
						|
 | 
						|
  // CreateValidator defines a method for creating a new validator.
 | 
						|
  rpc CreateValidator(MsgCreateValidator) returns (MsgCreateValidatorResponse);
 | 
						|
 | 
						|
  // EditValidator defines a method for editing an existing validator.
 | 
						|
  rpc EditValidator(MsgEditValidator) returns (MsgEditValidatorResponse);
 | 
						|
 | 
						|
  // Delegate defines a method for performing a delegation of coins
 | 
						|
  // from a delegator to a validator.
 | 
						|
  rpc Delegate(MsgDelegate) returns (MsgDelegateResponse);
 | 
						|
 | 
						|
  // BeginRedelegate defines a method for performing a redelegation
 | 
						|
  // of coins from a delegator and source validator to a destination validator.
 | 
						|
  rpc BeginRedelegate(MsgBeginRedelegate) returns (MsgBeginRedelegateResponse);
 | 
						|
 | 
						|
  // Undelegate defines a method for performing an undelegation from a
 | 
						|
  // delegate and a validator.
 | 
						|
  rpc Undelegate(MsgUndelegate) returns (MsgUndelegateResponse);
 | 
						|
 | 
						|
  // CancelUnbondingDelegation defines a method for performing canceling the unbonding delegation
 | 
						|
  // and delegate back to previous validator.
 | 
						|
  //
 | 
						|
  // Since: cosmos-sdk 0.46
 | 
						|
  rpc CancelUnbondingDelegation(MsgCancelUnbondingDelegation) returns (MsgCancelUnbondingDelegationResponse);
 | 
						|
 | 
						|
  // UpdateParams defines an operation for updating the x/staking module
 | 
						|
  // parameters.
 | 
						|
  // Since: cosmos-sdk 0.47
 | 
						|
  rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);
 | 
						|
}
 | 
						|
 | 
						|
// MsgCreateValidator defines a SDK message for creating a new validator.
 | 
						|
message MsgCreateValidator {
 | 
						|
  // NOTE(fdymylja): this is a particular case in which
 | 
						|
  // if validator_address == delegator_address then only one
 | 
						|
  // is expected to sign, otherwise both are.
 | 
						|
  option (cosmos.msg.v1.signer) = "delegator_address";
 | 
						|
  option (cosmos.msg.v1.signer) = "validator_address";
 | 
						|
  option (amino.name)           = "cosmos-sdk/MsgCreateValidator";
 | 
						|
 | 
						|
  option (gogoproto.equal)           = false;
 | 
						|
  option (gogoproto.goproto_getters) = false;
 | 
						|
 | 
						|
  Description     description         = 1 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
  CommissionRates commission          = 2 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
  string          min_self_delegation = 3 [
 | 
						|
    (cosmos_proto.scalar)  = "cosmos.Int",
 | 
						|
    (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int",
 | 
						|
    (gogoproto.nullable)   = false
 | 
						|
  ];
 | 
						|
  string                   delegator_address = 4 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  string                   validator_address = 5 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  google.protobuf.Any      pubkey            = 6 [(cosmos_proto.accepts_interface) = "cosmos.crypto.PubKey"];
 | 
						|
  cosmos.base.v1beta1.Coin value             = 7 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
}
 | 
						|
 | 
						|
// MsgCreateValidatorResponse defines the Msg/CreateValidator response type.
 | 
						|
message MsgCreateValidatorResponse {}
 | 
						|
 | 
						|
// MsgEditValidator defines a SDK message for editing an existing validator.
 | 
						|
message MsgEditValidator {
 | 
						|
  option (cosmos.msg.v1.signer) = "validator_address";
 | 
						|
  option (amino.name)           = "cosmos-sdk/MsgEditValidator";
 | 
						|
 | 
						|
  option (gogoproto.equal)           = false;
 | 
						|
  option (gogoproto.goproto_getters) = false;
 | 
						|
 | 
						|
  Description description       = 1 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
  string      validator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
 | 
						|
  // We pass a reference to the new commission rate and min self delegation as
 | 
						|
  // it's not mandatory to update. If not updated, the deserialized rate will be
 | 
						|
  // zero with no way to distinguish if an update was intended.
 | 
						|
  // REF: #2373
 | 
						|
  string commission_rate = 3
 | 
						|
      [(cosmos_proto.scalar) = "cosmos.Dec", (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Dec"];
 | 
						|
  string min_self_delegation = 4
 | 
						|
      [(cosmos_proto.scalar) = "cosmos.Int", (gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int"];
 | 
						|
}
 | 
						|
 | 
						|
// MsgEditValidatorResponse defines the Msg/EditValidator response type.
 | 
						|
message MsgEditValidatorResponse {}
 | 
						|
 | 
						|
// MsgDelegate defines a SDK message for performing a delegation of coins
 | 
						|
// from a delegator to a validator.
 | 
						|
message MsgDelegate {
 | 
						|
  option (cosmos.msg.v1.signer) = "delegator_address";
 | 
						|
  option (amino.name)           = "cosmos-sdk/MsgDelegate";
 | 
						|
 | 
						|
  option (gogoproto.equal)           = false;
 | 
						|
  option (gogoproto.goproto_getters) = false;
 | 
						|
 | 
						|
  string                   delegator_address = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  string                   validator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  cosmos.base.v1beta1.Coin amount            = 3 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
}
 | 
						|
 | 
						|
// MsgDelegateResponse defines the Msg/Delegate response type.
 | 
						|
message MsgDelegateResponse {}
 | 
						|
 | 
						|
// MsgBeginRedelegate defines a SDK message for performing a redelegation
 | 
						|
// of coins from a delegator and source validator to a destination validator.
 | 
						|
message MsgBeginRedelegate {
 | 
						|
  option (cosmos.msg.v1.signer) = "delegator_address";
 | 
						|
  option (amino.name)           = "cosmos-sdk/MsgBeginRedelegate";
 | 
						|
 | 
						|
  option (gogoproto.equal)           = false;
 | 
						|
  option (gogoproto.goproto_getters) = false;
 | 
						|
 | 
						|
  string                   delegator_address     = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  string                   validator_src_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  string                   validator_dst_address = 3 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  cosmos.base.v1beta1.Coin amount                = 4 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
}
 | 
						|
 | 
						|
// MsgBeginRedelegateResponse defines the Msg/BeginRedelegate response type.
 | 
						|
message MsgBeginRedelegateResponse {
 | 
						|
  google.protobuf.Timestamp completion_time = 1
 | 
						|
      [(gogoproto.nullable) = false, (amino.dont_omitempty) = true, (gogoproto.stdtime) = true];
 | 
						|
}
 | 
						|
 | 
						|
// MsgUndelegate defines a SDK message for performing an undelegation from a
 | 
						|
// delegate and a validator.
 | 
						|
message MsgUndelegate {
 | 
						|
  option (cosmos.msg.v1.signer) = "delegator_address";
 | 
						|
  option (amino.name)           = "cosmos-sdk/MsgUndelegate";
 | 
						|
 | 
						|
  option (gogoproto.equal)           = false;
 | 
						|
  option (gogoproto.goproto_getters) = false;
 | 
						|
 | 
						|
  string                   delegator_address = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  string                   validator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  cosmos.base.v1beta1.Coin amount            = 3 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
}
 | 
						|
 | 
						|
// MsgUndelegateResponse defines the Msg/Undelegate response type.
 | 
						|
message MsgUndelegateResponse {
 | 
						|
  google.protobuf.Timestamp completion_time = 1
 | 
						|
      [(gogoproto.nullable) = false, (amino.dont_omitempty) = true, (gogoproto.stdtime) = true];
 | 
						|
}
 | 
						|
 | 
						|
// MsgCancelUnbondingDelegation defines the SDK message for performing a cancel unbonding delegation for delegator
 | 
						|
//
 | 
						|
// Since: cosmos-sdk 0.46
 | 
						|
message MsgCancelUnbondingDelegation {
 | 
						|
  option (cosmos.msg.v1.signer)      = "delegator_address";
 | 
						|
  option (amino.name)                = "cosmos-sdk/MsgCancelUnbondingDelegation";
 | 
						|
  option (gogoproto.equal)           = false;
 | 
						|
  option (gogoproto.goproto_getters) = false;
 | 
						|
 | 
						|
  string delegator_address = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  string validator_address = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  // amount is always less than or equal to unbonding delegation entry balance
 | 
						|
  cosmos.base.v1beta1.Coin amount = 3 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
  // creation_height is the height which the unbonding took place.
 | 
						|
  int64 creation_height = 4;
 | 
						|
}
 | 
						|
 | 
						|
// MsgCancelUnbondingDelegationResponse
 | 
						|
//
 | 
						|
// Since: cosmos-sdk 0.46
 | 
						|
message MsgCancelUnbondingDelegationResponse {}
 | 
						|
 | 
						|
// MsgUpdateParams is the Msg/UpdateParams request type.
 | 
						|
//
 | 
						|
// Since: cosmos-sdk 0.47
 | 
						|
message MsgUpdateParams {
 | 
						|
  option (cosmos.msg.v1.signer) = "authority";
 | 
						|
  option (amino.name)           = "cosmos-sdk/x/staking/MsgUpdateParams";
 | 
						|
 | 
						|
  // authority is the address that controls the module (defaults to x/gov unless overwritten).
 | 
						|
  string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
 | 
						|
  // params defines the x/staking parameters to update.
 | 
						|
  //
 | 
						|
  // NOTE: All parameters must be supplied.
 | 
						|
  Params params = 2 [(gogoproto.nullable) = false, (amino.dont_omitempty) = true];
 | 
						|
};
 | 
						|
 | 
						|
// MsgUpdateParamsResponse defines the response structure for executing a
 | 
						|
// MsgUpdateParams message.
 | 
						|
//
 | 
						|
// Since: cosmos-sdk 0.47
 | 
						|
message MsgUpdateParamsResponse {};
 |