github.com/vipernet-xyz/tm@v0.34.24/proto/tendermint/consensus/types.proto (about)

     1  syntax = "proto3";
     2  package tendermint.consensus;
     3  
     4  option go_package = "github.com/vipernet-xyz/tm/proto/tendermint/consensus";
     5  
     6  import "gogoproto/gogo.proto";
     7  import "tendermint/types/types.proto";
     8  import "tendermint/libs/bits/types.proto";
     9  
    10  // NewRoundStep is sent for every step taken in the ConsensusState.
    11  // For every height/round/step transition
    12  message NewRoundStep {
    13    int64  height                   = 1;
    14    int32  round                    = 2;
    15    uint32 step                     = 3;
    16    int64  seconds_since_start_time = 4;
    17    int32  last_commit_round        = 5;
    18  }
    19  
    20  // NewValidBlock is sent when a validator observes a valid block B in some round r,
    21  // i.e., there is a Proposal for block B and 2/3+ prevotes for the block B in the round r.
    22  // In case the block is also committed, then IsCommit flag is set to true.
    23  message NewValidBlock {
    24    int64                          height                = 1;
    25    int32                          round                 = 2;
    26    tendermint.types.PartSetHeader block_part_set_header = 3 [(gogoproto.nullable) = false];
    27    tendermint.libs.bits.BitArray  block_parts           = 4;
    28    bool                           is_commit             = 5;
    29  }
    30  
    31  // Proposal is sent when a new block is proposed.
    32  message Proposal {
    33    tendermint.types.Proposal proposal = 1 [(gogoproto.nullable) = false];
    34  }
    35  
    36  // ProposalPOL is sent when a previous proposal is re-proposed.
    37  message ProposalPOL {
    38    int64                         height             = 1;
    39    int32                         proposal_pol_round = 2;
    40    tendermint.libs.bits.BitArray proposal_pol       = 3 [(gogoproto.nullable) = false];
    41  }
    42  
    43  // BlockPart is sent when gossipping a piece of the proposed block.
    44  message BlockPart {
    45    int64                 height = 1;
    46    int32                 round  = 2;
    47    tendermint.types.Part part   = 3 [(gogoproto.nullable) = false];
    48  }
    49  
    50  // Vote is sent when voting for a proposal (or lack thereof).
    51  message Vote {
    52    tendermint.types.Vote vote = 1;
    53  }
    54  
    55  // HasVote is sent to indicate that a particular vote has been received.
    56  message HasVote {
    57    int64                          height = 1;
    58    int32                          round  = 2;
    59    tendermint.types.SignedMsgType type   = 3;
    60    int32                          index  = 4;
    61  }
    62  
    63  // VoteSetMaj23 is sent to indicate that a given BlockID has seen +2/3 votes.
    64  message VoteSetMaj23 {
    65    int64                          height   = 1;
    66    int32                          round    = 2;
    67    tendermint.types.SignedMsgType type     = 3;
    68    tendermint.types.BlockID       block_id = 4 [(gogoproto.customname) = "BlockID", (gogoproto.nullable) = false];
    69  }
    70  
    71  // VoteSetBits is sent to communicate the bit-array of votes seen for the BlockID.
    72  message VoteSetBits {
    73    int64                          height   = 1;
    74    int32                          round    = 2;
    75    tendermint.types.SignedMsgType type     = 3;
    76    tendermint.types.BlockID       block_id = 4 [(gogoproto.customname) = "BlockID", (gogoproto.nullable) = false];
    77    tendermint.libs.bits.BitArray  votes    = 5 [(gogoproto.nullable) = false];
    78  }
    79  
    80  message Message {
    81    oneof sum {
    82      NewRoundStep  new_round_step  = 1;
    83      NewValidBlock new_valid_block = 2;
    84      Proposal      proposal        = 3;
    85      ProposalPOL   proposal_pol    = 4;
    86      BlockPart     block_part      = 5;
    87      Vote          vote            = 6;
    88      HasVote       has_vote        = 7;
    89      VoteSetMaj23  vote_set_maj23  = 8;
    90      VoteSetBits   vote_set_bits   = 9;
    91    }
    92  }