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
83 lines
3 KiB
Protocol Buffer
83 lines
3 KiB
Protocol Buffer
syntax = "proto3";
|
|
package cosmos.circuit.v1;
|
|
|
|
option go_package = "cosmossdk.io/x/circuit/types";
|
|
|
|
import "cosmos/msg/v1/msg.proto";
|
|
import "cosmos/circuit/v1/types.proto";
|
|
|
|
// Msg defines the circuit Msg service.
|
|
service Msg {
|
|
option (cosmos.msg.v1.service) = true;
|
|
|
|
// AuthorizeCircuitBreaker allows a super-admin to grant (or revoke) another
|
|
// account's circuit breaker permissions.
|
|
rpc AuthorizeCircuitBreaker(MsgAuthorizeCircuitBreaker) returns (MsgAuthorizeCircuitBreakerResponse);
|
|
|
|
// TripCircuitBreaker pauses processing of Msg's in the state machine.
|
|
rpc TripCircuitBreaker(MsgTripCircuitBreaker) returns (MsgTripCircuitBreakerResponse);
|
|
|
|
// ResetCircuitBreaker resumes processing of Msg's in the state machine that
|
|
// have been been paused using TripCircuitBreaker.
|
|
rpc ResetCircuitBreaker(MsgResetCircuitBreaker) returns (MsgResetCircuitBreakerResponse);
|
|
}
|
|
|
|
// MsgAuthorizeCircuitBreaker defines the Msg/AuthorizeCircuitBreaker request type.
|
|
message MsgAuthorizeCircuitBreaker {
|
|
option (cosmos.msg.v1.signer) = "granter";
|
|
|
|
// granter is the granter of the circuit breaker permissions and must have
|
|
// LEVEL_SUPER_ADMIN.
|
|
string granter = 1;
|
|
|
|
// grantee is the account authorized with the provided permissions.
|
|
string grantee = 2;
|
|
|
|
// permissions are the circuit breaker permissions that the grantee receives.
|
|
// These will overwrite any existing permissions. LEVEL_NONE_UNSPECIFIED can
|
|
// be specified to revoke all permissions.
|
|
Permissions permissions = 3;
|
|
}
|
|
|
|
// MsgAuthorizeCircuitBreakerResponse defines the Msg/AuthorizeCircuitBreaker response type.
|
|
message MsgAuthorizeCircuitBreakerResponse {
|
|
bool success = 1;
|
|
}
|
|
|
|
// MsgTripCircuitBreaker defines the Msg/TripCircuitBreaker request type.
|
|
message MsgTripCircuitBreaker {
|
|
option (cosmos.msg.v1.signer) = "authority";
|
|
|
|
// authority is the account authorized to trip the circuit breaker.
|
|
string authority = 1;
|
|
|
|
// msg_type_urls specifies a list of type URLs to immediately stop processing.
|
|
// IF IT IS LEFT EMPTY, ALL MSG PROCESSING WILL STOP IMMEDIATELY.
|
|
// This value is validated against the authority's permissions and if the
|
|
// authority does not have permissions to trip the specified msg type URLs
|
|
// (or all URLs), the operation will fail.
|
|
repeated string msg_type_urls = 2;
|
|
}
|
|
|
|
// MsgTripCircuitBreakerResponse defines the Msg/TripCircuitBreaker response type.
|
|
message MsgTripCircuitBreakerResponse {
|
|
bool success = 1;
|
|
}
|
|
|
|
// MsgResetCircuitBreaker defines the Msg/ResetCircuitBreaker request type.
|
|
message MsgResetCircuitBreaker {
|
|
option (cosmos.msg.v1.signer) = "authority";
|
|
|
|
// authority is the account authorized to trip or reset the circuit breaker.
|
|
string authority = 1;
|
|
|
|
// msg_type_urls specifies a list of Msg type URLs to resume processing. If
|
|
// it is left empty all Msg processing for type URLs that the account is
|
|
// authorized to trip will resume.
|
|
repeated string msg_type_urls = 3;
|
|
}
|
|
|
|
// MsgResetCircuitBreakerResponse defines the Msg/ResetCircuitBreaker response type.
|
|
message MsgResetCircuitBreakerResponse {
|
|
bool success = 1;
|
|
}
|