Proposal defines a block proposal for the consensus. It refers to the block by BlockID field. It must be signed by the correct proposer for the given Height/Round to be considered valid. It may depend on votes from a previous round, a so-called Proof-of-Lock (POL) round, as noted in the POLRound. If
| 23 | // a so-called Proof-of-Lock (POL) round, as noted in the POLRound. |
| 24 | // If POLRound >= 0, then BlockID corresponds to the block that is locked in POLRound. |
| 25 | type Proposal struct { |
| 26 | Type tmproto.SignedMsgType |
| 27 | Height int64 `json:"height"` |
| 28 | Round int32 `json:"round"` // there can not be greater than 2_147_483_647 rounds |
| 29 | POLRound int32 `json:"pol_round"` // -1 if null. |
| 30 | BlockID BlockID `json:"block_id"` |
| 31 | Timestamp time.Time `json:"timestamp"` |
| 32 | Signature []byte `json:"signature"` |
| 33 | } |
| 34 | |
| 35 | // NewProposal returns a new Proposal. |
| 36 | // If there is no POLRound, polRound should be -1. |
nothing calls this directly
no outgoing calls
no test coverage detected