|
|
- syntax = "proto3";
- package tendermint.proto.state;
-
- option go_package = "github.com/tendermint/tendermint/proto/state";
-
- import "third_party/proto/gogoproto/gogo.proto";
- import "abci/types/types.proto";
- import "proto/types/types.proto";
- import "proto/types/validator.proto";
- import "proto/types/params.proto";
- import "proto/version/version.proto";
- import "google/protobuf/timestamp.proto";
-
- // ABCIResponses retains the responses
- // of the various ABCI calls during block processing.
- // It is persisted to disk for each height before calling Commit.
- message ABCIResponses {
- repeated tendermint.abci.types.ResponseDeliverTx deliver_txs = 1;
- tendermint.abci.types.ResponseEndBlock end_block = 2;
- tendermint.abci.types.ResponseBeginBlock begin_block = 3;
- }
-
- // ValidatorsInfo represents the latest validator set, or the last height it changed
- message ValidatorsInfo {
- tendermint.proto.types.ValidatorSet validator_set = 1;
- int64 last_height_changed = 2;
- }
-
- // ConsensusParamsInfo represents the latest consensus params, or the last height it changed
- message ConsensusParamsInfo {
- tendermint.proto.types.ConsensusParams consensus_params = 1 [(gogoproto.nullable) = false];
- int64 last_height_changed = 2;
- }
-
- message Version {
- tendermint.proto.version.Consensus consensus = 1 [(gogoproto.nullable) = false];
- string software = 2;
- }
-
- message State {
- Version version = 1 [(gogoproto.nullable) = false];
-
- // immutable
- string chain_id = 2 [(gogoproto.customname) = "ChainID"];
-
- // LastBlockHeight=0 at genesis (ie. block(H=0) does not exist)
- int64 last_block_height = 3;
- tendermint.proto.types.BlockID last_block_id = 4
- [(gogoproto.nullable) = false, (gogoproto.customname) = "LastBlockID"];
- google.protobuf.Timestamp last_block_time = 5
- [(gogoproto.nullable) = false, (gogoproto.stdtime) = true];
-
- // LastValidators is used to validate block.LastCommit.
- // Validators are persisted to the database separately every time they change,
- // so we can query for historical validator sets.
- // Note that if s.LastBlockHeight causes a valset change,
- // we set s.LastHeightValidatorsChanged = s.LastBlockHeight + 1 + 1
- // Extra +1 due to nextValSet delay.
- tendermint.proto.types.ValidatorSet next_validators = 6;
- tendermint.proto.types.ValidatorSet validators = 7;
- tendermint.proto.types.ValidatorSet last_validators = 8;
- int64 last_height_validators_changed = 9;
-
- // Consensus parameters used for validating blocks.
- // Changes returned by EndBlock and updated after Commit.
- tendermint.proto.types.ConsensusParams consensus_params = 10 [(gogoproto.nullable) = false];
- int64 last_height_consensus_params_changed = 11;
-
- // Merkle root of the results from executing prev block
- bytes last_results_hash = 12;
-
- // the latest AppHash we've received from calling abci.Commit()
- bytes app_hash = 13;
- }
|