CodeChain-io / CodeChain-io/foundry
Lock on a block only when the block is verified
- Dominant language
- Rust
- Stars
- 36
- Forks
- 11
- PR merge metrics
- No merged PRs in 30d
Description
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.
Contributor guide
Research direction
Trace the Tendermint consensus handling for prevotes, block receipt, locking, and precommit decisions. Confirm how the current implementation locks before verifying the block, then define tests for delayed block receipt and the stated Byzantine-peer case. Done means locking and precommit behavior match the issue without weakening safety.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- blockchain, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100