github.com/vipernet-xyz/tendermint-core@v0.32.0/proto/state/types.proto (about) 1 syntax = "proto3"; 2 package tendermint.proto.state; 3 4 option go_package = "github.com/tendermint/tendermint/proto/state"; 5 6 import "third_party/proto/gogoproto/gogo.proto"; 7 import "abci/types/types.proto"; 8 import "proto/types/types.proto"; 9 import "proto/types/validator.proto"; 10 import "proto/types/params.proto"; 11 import "proto/version/version.proto"; 12 import "google/protobuf/timestamp.proto"; 13 14 // ABCIResponses retains the responses 15 // of the various ABCI calls during block processing. 16 // It is persisted to disk for each height before calling Commit. 17 message ABCIResponses { 18 repeated tendermint.abci.types.ResponseDeliverTx deliver_tx = 1; 19 tendermint.abci.types.ResponseEndBlock end_block = 2; 20 tendermint.abci.types.ResponseBeginBlock begin_block = 3; 21 } 22 23 // ValidatorsInfo represents the latest validator set, or the last height it changed 24 message ValidatorsInfo { 25 tendermint.proto.types.ValidatorSet validator_set = 1; 26 int64 last_height_changed = 2; 27 } 28 29 // ConsensusParamsInfo represents the latest consensus params, or the last height it changed 30 message ConsensusParamsInfo { 31 tendermint.proto.types.ConsensusParams consensus_params = 1 [(gogoproto.nullable) = false]; 32 int64 last_height_changed = 2; 33 } 34 35 message Version { 36 tendermint.proto.version.Consensus consensus = 1 [(gogoproto.nullable) = false]; 37 string software = 2; 38 } 39 40 message State { 41 Version version = 1 [(gogoproto.nullable) = false]; 42 43 // immutable 44 string chain_id = 2 [(gogoproto.customname) = "ChainID"]; 45 46 // LastBlockHeight=0 at genesis (ie. block(H=0) does not exist) 47 int64 last_block_height = 3; 48 int64 last_block_total_tx = 4; 49 tendermint.proto.types.BlockID last_block_id = 5 50 [(gogoproto.nullable) = false, (gogoproto.customname) = "LastBlockID"]; 51 google.protobuf.Timestamp last_block_time = 6 52 [(gogoproto.nullable) = false, (gogoproto.stdtime) = true]; 53 54 // LastValidators is used to validate block.LastCommit. 55 // Validators are persisted to the database separately every time they change, 56 // so we can query for historical validator sets. 57 // Note that if s.LastBlockHeight causes a valset change, 58 // we set s.LastHeightValidatorsChanged = s.LastBlockHeight + 1 + 1 59 // Extra +1 due to nextValSet delay. 60 tendermint.proto.types.ValidatorSet next_validators = 7; 61 tendermint.proto.types.ValidatorSet validators = 8; 62 tendermint.proto.types.ValidatorSet last_validators = 9; 63 int64 last_height_validators_changed = 20; 64 65 // Consensus parameters used for validating blocks. 66 // Changes returned by EndBlock and updated after Commit. 67 tendermint.proto.types.ConsensusParams consensus_params = 12 [(gogoproto.nullable) = false]; 68 int64 last_height_consensus_params_changed = 13; 69 70 // Merkle root of the results from executing prev block 71 bytes last_results_hash = 14; 72 73 // the latest AppHash we've received from calling abci.Commit() 74 bytes app_hash = 15; 75 }