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>
		
			
				
	
	
		
			223 lines
		
	
	
		
			9.8 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			223 lines
		
	
	
		
			9.8 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
syntax = "proto3";
 | 
						|
 | 
						|
package ibc.applications.fee.v1;
 | 
						|
 | 
						|
option go_package = "github.com/cosmos/ibc-go/v7/modules/apps/29-fee/types";
 | 
						|
 | 
						|
import "gogoproto/gogo.proto";
 | 
						|
import "google/api/annotations.proto";
 | 
						|
import "cosmos/base/v1beta1/coin.proto";
 | 
						|
import "cosmos/base/query/v1beta1/pagination.proto";
 | 
						|
import "ibc/applications/fee/v1/fee.proto";
 | 
						|
import "ibc/applications/fee/v1/genesis.proto";
 | 
						|
import "ibc/core/channel/v1/channel.proto";
 | 
						|
 | 
						|
// Query defines the ICS29 gRPC querier service.
 | 
						|
service Query {
 | 
						|
  // IncentivizedPackets returns all incentivized packets and their associated fees
 | 
						|
  rpc IncentivizedPackets(QueryIncentivizedPacketsRequest) returns (QueryIncentivizedPacketsResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/incentivized_packets";
 | 
						|
  }
 | 
						|
 | 
						|
  // IncentivizedPacket returns all packet fees for a packet given its identifier
 | 
						|
  rpc IncentivizedPacket(QueryIncentivizedPacketRequest) returns (QueryIncentivizedPacketResponse) {
 | 
						|
    option (google.api.http).get =
 | 
						|
        "/ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/sequences/"
 | 
						|
        "{packet_id.sequence}/incentivized_packet";
 | 
						|
  }
 | 
						|
 | 
						|
  // Gets all incentivized packets for a specific channel
 | 
						|
  rpc IncentivizedPacketsForChannel(QueryIncentivizedPacketsForChannelRequest)
 | 
						|
      returns (QueryIncentivizedPacketsForChannelResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/channels/{channel_id}/ports/{port_id}/incentivized_packets";
 | 
						|
  }
 | 
						|
 | 
						|
  // TotalRecvFees returns the total receive fees for a packet given its identifier
 | 
						|
  rpc TotalRecvFees(QueryTotalRecvFeesRequest) returns (QueryTotalRecvFeesResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/"
 | 
						|
                                   "sequences/{packet_id.sequence}/total_recv_fees";
 | 
						|
  }
 | 
						|
 | 
						|
  // TotalAckFees returns the total acknowledgement fees for a packet given its identifier
 | 
						|
  rpc TotalAckFees(QueryTotalAckFeesRequest) returns (QueryTotalAckFeesResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/"
 | 
						|
                                   "sequences/{packet_id.sequence}/total_ack_fees";
 | 
						|
  }
 | 
						|
 | 
						|
  // TotalTimeoutFees returns the total timeout fees for a packet given its identifier
 | 
						|
  rpc TotalTimeoutFees(QueryTotalTimeoutFeesRequest) returns (QueryTotalTimeoutFeesResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/"
 | 
						|
                                   "sequences/{packet_id.sequence}/total_timeout_fees";
 | 
						|
  }
 | 
						|
 | 
						|
  // Payee returns the registered payee address for a specific channel given the relayer address
 | 
						|
  rpc Payee(QueryPayeeRequest) returns (QueryPayeeResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/channels/{channel_id}/relayers/{relayer}/payee";
 | 
						|
  }
 | 
						|
 | 
						|
  // CounterpartyPayee returns the registered counterparty payee for forward relaying
 | 
						|
  rpc CounterpartyPayee(QueryCounterpartyPayeeRequest) returns (QueryCounterpartyPayeeResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/channels/{channel_id}/relayers/{relayer}/counterparty_payee";
 | 
						|
  }
 | 
						|
 | 
						|
  // FeeEnabledChannels returns a list of all fee enabled channels
 | 
						|
  rpc FeeEnabledChannels(QueryFeeEnabledChannelsRequest) returns (QueryFeeEnabledChannelsResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/fee_enabled";
 | 
						|
  }
 | 
						|
 | 
						|
  // FeeEnabledChannel returns true if the provided port and channel identifiers belong to a fee enabled channel
 | 
						|
  rpc FeeEnabledChannel(QueryFeeEnabledChannelRequest) returns (QueryFeeEnabledChannelResponse) {
 | 
						|
    option (google.api.http).get = "/ibc/apps/fee/v1/channels/{channel_id}/ports/{port_id}/fee_enabled";
 | 
						|
  }
 | 
						|
}
 | 
						|
 | 
						|
// QueryIncentivizedPacketsRequest defines the request type for the IncentivizedPackets rpc
 | 
						|
message QueryIncentivizedPacketsRequest {
 | 
						|
  // pagination defines an optional pagination for the request.
 | 
						|
  cosmos.base.query.v1beta1.PageRequest pagination = 1;
 | 
						|
  // block height at which to query
 | 
						|
  uint64 query_height = 2;
 | 
						|
}
 | 
						|
 | 
						|
// QueryIncentivizedPacketsResponse defines the response type for the IncentivizedPackets rpc
 | 
						|
message QueryIncentivizedPacketsResponse {
 | 
						|
  // list of identified fees for incentivized packets
 | 
						|
  repeated ibc.applications.fee.v1.IdentifiedPacketFees incentivized_packets = 1 [(gogoproto.nullable) = false];
 | 
						|
}
 | 
						|
 | 
						|
// QueryIncentivizedPacketRequest defines the request type for the IncentivizedPacket rpc
 | 
						|
message QueryIncentivizedPacketRequest {
 | 
						|
  // unique packet identifier comprised of channel ID, port ID and sequence
 | 
						|
  ibc.core.channel.v1.PacketId packet_id = 1 [(gogoproto.nullable) = false];
 | 
						|
  // block height at which to query
 | 
						|
  uint64 query_height = 2;
 | 
						|
}
 | 
						|
 | 
						|
// QueryIncentivizedPacketsResponse defines the response type for the IncentivizedPacket rpc
 | 
						|
message QueryIncentivizedPacketResponse {
 | 
						|
  // the identified fees for the incentivized packet
 | 
						|
  ibc.applications.fee.v1.IdentifiedPacketFees incentivized_packet = 1 [(gogoproto.nullable) = false];
 | 
						|
}
 | 
						|
 | 
						|
// QueryIncentivizedPacketsForChannelRequest defines the request type for querying for all incentivized packets
 | 
						|
// for a specific channel
 | 
						|
message QueryIncentivizedPacketsForChannelRequest {
 | 
						|
  // pagination defines an optional pagination for the request.
 | 
						|
  cosmos.base.query.v1beta1.PageRequest pagination = 1;
 | 
						|
  string                                port_id    = 2;
 | 
						|
  string                                channel_id = 3;
 | 
						|
  // Height to query at
 | 
						|
  uint64 query_height = 4;
 | 
						|
}
 | 
						|
 | 
						|
// QueryIncentivizedPacketsResponse defines the response type for the incentivized packets RPC
 | 
						|
message QueryIncentivizedPacketsForChannelResponse {
 | 
						|
  // Map of all incentivized_packets
 | 
						|
  repeated ibc.applications.fee.v1.IdentifiedPacketFees incentivized_packets = 1;
 | 
						|
}
 | 
						|
 | 
						|
// QueryTotalRecvFeesRequest defines the request type for the TotalRecvFees rpc
 | 
						|
message QueryTotalRecvFeesRequest {
 | 
						|
  // the packet identifier for the associated fees
 | 
						|
  ibc.core.channel.v1.PacketId packet_id = 1 [(gogoproto.nullable) = false];
 | 
						|
}
 | 
						|
 | 
						|
// QueryTotalRecvFeesResponse defines the response type for the TotalRecvFees rpc
 | 
						|
message QueryTotalRecvFeesResponse {
 | 
						|
  // the total packet receive fees
 | 
						|
  repeated cosmos.base.v1beta1.Coin recv_fees = 1 [
 | 
						|
    (gogoproto.moretags)     = "yaml:\"recv_fees\"",
 | 
						|
    (gogoproto.nullable)     = false,
 | 
						|
    (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"
 | 
						|
  ];
 | 
						|
}
 | 
						|
 | 
						|
// QueryTotalAckFeesRequest defines the request type for the TotalAckFees rpc
 | 
						|
message QueryTotalAckFeesRequest {
 | 
						|
  // the packet identifier for the associated fees
 | 
						|
  ibc.core.channel.v1.PacketId packet_id = 1 [(gogoproto.nullable) = false];
 | 
						|
}
 | 
						|
 | 
						|
// QueryTotalAckFeesResponse defines the response type for the TotalAckFees rpc
 | 
						|
message QueryTotalAckFeesResponse {
 | 
						|
  // the total packet acknowledgement fees
 | 
						|
  repeated cosmos.base.v1beta1.Coin ack_fees = 1 [
 | 
						|
    (gogoproto.moretags)     = "yaml:\"ack_fees\"",
 | 
						|
    (gogoproto.nullable)     = false,
 | 
						|
    (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"
 | 
						|
  ];
 | 
						|
}
 | 
						|
 | 
						|
// QueryTotalTimeoutFeesRequest defines the request type for the TotalTimeoutFees rpc
 | 
						|
message QueryTotalTimeoutFeesRequest {
 | 
						|
  // the packet identifier for the associated fees
 | 
						|
  ibc.core.channel.v1.PacketId packet_id = 1 [(gogoproto.nullable) = false];
 | 
						|
}
 | 
						|
 | 
						|
// QueryTotalTimeoutFeesResponse defines the response type for the TotalTimeoutFees rpc
 | 
						|
message QueryTotalTimeoutFeesResponse {
 | 
						|
  // the total packet timeout fees
 | 
						|
  repeated cosmos.base.v1beta1.Coin timeout_fees = 1 [
 | 
						|
    (gogoproto.moretags)     = "yaml:\"timeout_fees\"",
 | 
						|
    (gogoproto.nullable)     = false,
 | 
						|
    (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"
 | 
						|
  ];
 | 
						|
}
 | 
						|
 | 
						|
// QueryPayeeRequest defines the request type for the Payee rpc
 | 
						|
message QueryPayeeRequest {
 | 
						|
  // unique channel identifier
 | 
						|
  string channel_id = 1 [(gogoproto.moretags) = "yaml:\"channel_id\""];
 | 
						|
  // the relayer address to which the distribution address is registered
 | 
						|
  string relayer = 2;
 | 
						|
}
 | 
						|
 | 
						|
// QueryPayeeResponse defines the response type for the Payee rpc
 | 
						|
message QueryPayeeResponse {
 | 
						|
  // the payee address to which packet fees are paid out
 | 
						|
  string payee_address = 1 [(gogoproto.moretags) = "yaml:\"payee_address\""];
 | 
						|
}
 | 
						|
 | 
						|
// QueryCounterpartyPayeeRequest defines the request type for the CounterpartyPayee rpc
 | 
						|
message QueryCounterpartyPayeeRequest {
 | 
						|
  // unique channel identifier
 | 
						|
  string channel_id = 1 [(gogoproto.moretags) = "yaml:\"channel_id\""];
 | 
						|
  // the relayer address to which the counterparty is registered
 | 
						|
  string relayer = 2;
 | 
						|
}
 | 
						|
 | 
						|
// QueryCounterpartyPayeeResponse defines the response type for the CounterpartyPayee rpc
 | 
						|
message QueryCounterpartyPayeeResponse {
 | 
						|
  // the counterparty payee address used to compensate forward relaying
 | 
						|
  string counterparty_payee = 1 [(gogoproto.moretags) = "yaml:\"counterparty_payee\""];
 | 
						|
}
 | 
						|
 | 
						|
// QueryFeeEnabledChannelsRequest defines the request type for the FeeEnabledChannels rpc
 | 
						|
message QueryFeeEnabledChannelsRequest {
 | 
						|
  // pagination defines an optional pagination for the request.
 | 
						|
  cosmos.base.query.v1beta1.PageRequest pagination = 1;
 | 
						|
  // block height at which to query
 | 
						|
  uint64 query_height = 2;
 | 
						|
}
 | 
						|
 | 
						|
// QueryFeeEnabledChannelsResponse defines the response type for the FeeEnabledChannels rpc
 | 
						|
message QueryFeeEnabledChannelsResponse {
 | 
						|
  // list of fee enabled channels
 | 
						|
  repeated ibc.applications.fee.v1.FeeEnabledChannel fee_enabled_channels = 1
 | 
						|
      [(gogoproto.moretags) = "yaml:\"fee_enabled_channels\"", (gogoproto.nullable) = false];
 | 
						|
}
 | 
						|
 | 
						|
// QueryFeeEnabledChannelRequest defines the request type for the FeeEnabledChannel rpc
 | 
						|
message QueryFeeEnabledChannelRequest {
 | 
						|
  // unique port identifier
 | 
						|
  string port_id = 1 [(gogoproto.moretags) = "yaml:\"port_id\""];
 | 
						|
  // unique channel identifier
 | 
						|
  string channel_id = 2 [(gogoproto.moretags) = "yaml:\"channel_id\""];
 | 
						|
}
 | 
						|
 | 
						|
// QueryFeeEnabledChannelResponse defines the response type for the FeeEnabledChannel rpc
 | 
						|
message QueryFeeEnabledChannelResponse {
 | 
						|
  // boolean flag representing the fee enabled channel status
 | 
						|
  bool fee_enabled = 1 [(gogoproto.moretags) = "yaml:\"fee_enabled\""];
 | 
						|
}
 |