Some checks failed
Build SimApp / build (amd64) (push) Waiting to run
Build SimApp / build (arm64) (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
Build & Push / build (push) Waiting to run
Run Gosec / Gosec (push) Waiting to run
Lint / golangci-lint (push) Waiting to run
Checks dependencies and mocks generation / Check go mod tidy (push) Waiting to run
Checks dependencies and mocks generation / Check up to date mocks (push) Waiting to run
System Tests / setup (push) Waiting to run
System Tests / test-system (push) Blocked by required conditions
System Tests / test-system-legacy (push) Blocked by required conditions
Tests / Code Coverage / split-test-files (push) Waiting to run
Tests / Code Coverage / tests (00) (push) Blocked by required conditions
Tests / Code Coverage / tests (01) (push) Blocked by required conditions
Tests / Code Coverage / tests (02) (push) Blocked by required conditions
Tests / Code Coverage / tests (03) (push) Blocked by required conditions
Tests / Code Coverage / test-integration (push) Waiting to run
Tests / Code Coverage / test-e2e (push) Waiting to run
Tests / Code Coverage / repo-analysis (push) Blocked by required conditions
Tests / Code Coverage / test-sim-nondeterminism (push) Waiting to run
Tests / Code Coverage / test-clientv2 (push) Waiting to run
Tests / Code Coverage / test-core (push) Waiting to run
Tests / Code Coverage / test-depinject (push) Waiting to run
Tests / Code Coverage / test-errors (push) Waiting to run
Tests / Code Coverage / test-math (push) Waiting to run
Tests / Code Coverage / test-schema (push) Waiting to run
Tests / Code Coverage / test-collections (push) Waiting to run
Tests / Code Coverage / test-cosmovisor (push) Waiting to run
Tests / Code Coverage / test-confix (push) Waiting to run
Tests / Code Coverage / test-store (push) Waiting to run
Tests / Code Coverage / test-log (push) Waiting to run
Tests / Code Coverage / test-x-tx (push) Waiting to run
Tests / Code Coverage / test-x-nft (push) Waiting to run
Tests / Code Coverage / test-x-circuit (push) Waiting to run
Tests / Code Coverage / test-x-feegrant (push) Waiting to run
Tests / Code Coverage / test-x-evidence (push) Waiting to run
Tests / Code Coverage / test-x-upgrade (push) Waiting to run
Tests / Code Coverage / test-tools-benchmark (push) Waiting to run
Build & Push SDK Proto Builder / build (push) Has been cancelled
132 lines
No EOL
5.8 KiB
Protocol Buffer
132 lines
No EOL
5.8 KiB
Protocol Buffer
syntax = "proto3";
|
|
package cosmos.protocolpool.v1;
|
|
|
|
option go_package = "github.com/cosmos/cosmos-sdk/x/protocolpool/types";
|
|
|
|
import "cosmos/protocolpool/v1/types.proto";
|
|
import "gogoproto/gogo.proto";
|
|
import "cosmos/base/v1beta1/coin.proto";
|
|
import "cosmos_proto/cosmos.proto";
|
|
import "cosmos/msg/v1/msg.proto";
|
|
import "google/protobuf/timestamp.proto";
|
|
|
|
// Msg defines the pool Msg service.
|
|
service Msg {
|
|
option (cosmos.msg.v1.service) = true;
|
|
|
|
// FundCommunityPool defines a method to allow an account to directly
|
|
// fund the community pool.
|
|
rpc FundCommunityPool(MsgFundCommunityPool) returns (MsgFundCommunityPoolResponse);
|
|
|
|
// CommunityPoolSpend defines a governance operation for sending tokens from
|
|
// the community pool in the x/protocolpool module to another account, which
|
|
// could be the governance module itself. The authority is defined in the
|
|
// keeper.
|
|
rpc CommunityPoolSpend(MsgCommunityPoolSpend) returns (MsgCommunityPoolSpendResponse);
|
|
|
|
// CreateContinuousFund defines a method to distribute a percentage of funds to an address continuously.
|
|
// This ContinuousFund can be indefinite or run until a given expiry time.
|
|
// Funds come from validator block rewards from x/distribution, but may also come from
|
|
// any user who funds the ProtocolPoolEscrow module account directly through x/bank.
|
|
rpc CreateContinuousFund(MsgCreateContinuousFund) returns (MsgCreateContinuousFundResponse);
|
|
|
|
// CancelContinuousFund defines a method for cancelling continuous fund.
|
|
rpc CancelContinuousFund(MsgCancelContinuousFund) returns (MsgCancelContinuousFundResponse);
|
|
|
|
// UpdateParams defines a governance operation for updating the x/protocolpool module parameters.
|
|
// The authority is defined in the keeper.
|
|
rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);
|
|
}
|
|
|
|
// MsgFundCommunityPool allows an account to directly
|
|
// fund the community pool.
|
|
message MsgFundCommunityPool {
|
|
option (cosmos.msg.v1.signer) = "depositor";
|
|
option (gogoproto.equal) = false;
|
|
option (gogoproto.goproto_getters) = false;
|
|
|
|
string depositor = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
|
|
repeated cosmos.base.v1beta1.Coin amount = 2
|
|
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];
|
|
}
|
|
|
|
// MsgFundCommunityPoolResponse defines the Msg/FundCommunityPool response type.
|
|
message MsgFundCommunityPoolResponse {}
|
|
|
|
// MsgCommunityPoolSpend defines a message for sending tokens from the community
|
|
// pool to another account. This message is typically executed via a governance
|
|
// proposal with the governance module being the executing authority.
|
|
message MsgCommunityPoolSpend {
|
|
option (cosmos.msg.v1.signer) = "authority";
|
|
|
|
// Authority is the address that controls the module (defaults to x/gov unless overwritten).
|
|
string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
string recipient = 2;
|
|
repeated cosmos.base.v1beta1.Coin amount = 3
|
|
[(gogoproto.nullable) = false, (gogoproto.castrepeated) = "github.com/cosmos/cosmos-sdk/types.Coins"];
|
|
}
|
|
|
|
// MsgCommunityPoolSpendResponse defines the response to executing a
|
|
// MsgCommunityPoolSpend message.
|
|
message MsgCommunityPoolSpendResponse {}
|
|
|
|
// MsgCreateContinuousFund defines a message for adding continuous funds.
|
|
message MsgCreateContinuousFund {
|
|
option (cosmos.msg.v1.signer) = "authority";
|
|
|
|
// Authority is the address that controls the module (defaults to x/gov unless overwritten).
|
|
string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
// Recipient address of the account receiving funds.
|
|
string recipient = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
// Percentage is the percentage of funds to be allocated from Community pool.
|
|
string percentage = 3 [
|
|
(cosmos_proto.scalar) = "cosmos.Dec",
|
|
(gogoproto.customtype) = "cosmossdk.io/math.LegacyDec",
|
|
(gogoproto.nullable) = false
|
|
];
|
|
// Optional, if expiry is set, removes the state object when expired.
|
|
google.protobuf.Timestamp expiry = 4 [(gogoproto.stdtime) = true];
|
|
}
|
|
|
|
// MsgCreateContinuousFundResponse defines the response to executing a
|
|
// MsgCreateContinuousFund message.
|
|
message MsgCreateContinuousFundResponse {}
|
|
|
|
// MsgCancelContinuousFund defines a message to cancel continuous funds for a specific recipient.
|
|
message MsgCancelContinuousFund {
|
|
option (cosmos.msg.v1.signer) = "authority";
|
|
|
|
// Authority is the account address of authority.
|
|
string authority = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
// Recipient is the account address string of the recipient whose funds are to be cancelled.
|
|
string recipient = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
}
|
|
|
|
// MsgCancelContinuousFundResponse defines the response to executing a
|
|
// MsgCancelContinuousFund message.
|
|
message MsgCancelContinuousFundResponse {
|
|
// CanceledTime is the canceled time.
|
|
google.protobuf.Timestamp canceled_time = 1 [(gogoproto.stdtime) = true, (gogoproto.nullable) = false];
|
|
// CanceledHeight defines the canceled block height.
|
|
uint64 canceled_height = 2;
|
|
// Recipient is the account address string of the recipient whose funds are cancelled.
|
|
string recipient = 3 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
}
|
|
|
|
// MsgUpdateParams is the Msg/UpdateParams request type.
|
|
message MsgUpdateParams {
|
|
option (cosmos.msg.v1.signer) = "authority";
|
|
|
|
// 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/protocolpool parameters to update.
|
|
//
|
|
// NOTE: All parameters must be supplied.
|
|
Params params = 2 [(gogoproto.nullable) = false];
|
|
}
|
|
|
|
// MsgUpdateParamsResponse defines the response structure for executing a
|
|
// MsgUpdateParams message.
|
|
message MsgUpdateParamsResponse {} |