CodeChain-io / CodeChain-io/foundry

Lock on a block only when the block is verified

Open
#53 2 comments 0 reactions 0 assignees View on GitHub
consensus
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.