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  }