foundry
foundry copied to clipboard
Lock on a block only when the block is verified
Our Tendermint implementation locks on a block if 2/3 of prevotes are collected even though the block is not received yet. Changing the behavior should not affect safety. If more than 2/3 of peers are byzantine(very rare case) the node should not send a precommit on the block.
@majecty In which case is this new condition helpful?
If we fix this issue, there will be no usefulness in the network. I thought it is strange that for a node sending a precommit message that the node does not know even though the node received more than 2/3 of pre-votes. Fixing a strange behavior will help other people who will read and modify the consensus code.