mirror of
https://github.com/0glabs/0g-chain.git
synced 2024-11-14 03:55:19 +00:00
35 lines
1.5 KiB
Protocol Buffer
35 lines
1.5 KiB
Protocol Buffer
|
syntax = "proto3";
|
||
|
|
||
|
package cosmos.query.v1;
|
||
|
|
||
|
import "google/protobuf/descriptor.proto";
|
||
|
|
||
|
// TODO: once we fully migrate to protov2 the go_package needs to be updated.
|
||
|
// We need this right now because gogoproto codegen needs to import the extension.
|
||
|
option go_package = "github.com/cosmos/cosmos-sdk/types/query";
|
||
|
|
||
|
extend google.protobuf.MethodOptions {
|
||
|
// module_query_safe is set to true when the query is safe to be called from
|
||
|
// within the state machine, for example from another module's Keeper, via
|
||
|
// ADR-033 calls or from CosmWasm contracts.
|
||
|
// Concretely, it means that the query is:
|
||
|
// 1. deterministic: given a block height, returns the exact same response
|
||
|
// upon multiple calls; and doesn't introduce any state-machine-breaking
|
||
|
// changes across SDK patch version.
|
||
|
// 2. consumes gas correctly.
|
||
|
//
|
||
|
// If you are a module developer and want to add this annotation to one of
|
||
|
// your own queries, please make sure that the corresponding query:
|
||
|
// 1. is deterministic and won't introduce state-machine-breaking changes
|
||
|
// without a coordinated upgrade path,
|
||
|
// 2. has its gas tracked, to avoid the attack vector where no gas is
|
||
|
// accounted for on potentially high-computation queries.
|
||
|
//
|
||
|
// For queries that potentially consume a large amount of gas (for example
|
||
|
// those with pagination, if the pagination field is incorrectly set), we
|
||
|
// also recommend adding Protobuf comments to warn module developers
|
||
|
// consuming these queries.
|
||
|
//
|
||
|
// When set to true, the query can safely be called
|
||
|
bool module_query_safe = 11110001;
|
||
|
}
|