-
Notifications
You must be signed in to change notification settings - Fork 33
Open
Labels
consensusConsensus specific changesConsensus specific changescore starter taskGood for newcomers, but aimed at core team members though still open for everyoneGood for newcomers, but aimed at core team members though still open for everyone
Milestone
Description
Objective
Implement a block time configuration feature in the Consensus / Pacemaker Module, which allows setting a minimum block time before proceeding to the next height.
Origin Document
Since Tendermint is not an optimistically responsive BFT algorithm, a set of configurations were added to it during implementation. However, HotPOKT follows Hotstuff Consensus, which is optimistically responsive and moves at the speed of the network:
Responsive.mov
Hotstuff's simplicity and scalability is very important for the core of Pocket but does not need to be this fast at the moment of writing.
Goals
- Develop a configuration setting to define a minimum block time in the Pacemaker's configurations
- Allow transactions to propagate through the network before proceeding to the next height
- Reduce the responsiveness of the network
Deliverable
- Add a new
MinimumBlockTimevalue inPacemakerConfig - Update the Pacemaker module to wait at least
MinimumBlockTimebefore proceeding to the next height when a block is successfully committed
Non-goals / Non-deliverables
- Overhauling the entire pacemaker or consensus modules
- Developing additional features unrelated to the block time configuration
- Adopting all of Tendermint's configurations
General issue deliverables
- Update the appropriate CHANGELOG(s)
- Update any relevant local/global README(s)
- Update relevant source code tree explanations
- Add or update any relevant or supporting mermaid diagrams
Testing Methodology
- All tests:
make test_all - LocalNet: verify a
LocalNetis still functioning correctly by following the instructions at docs/development/README.md - k8s LocalNet: verify a
k8s LocalNetis still functioning correctly by following the instructions here
Creator: @jessicadaugherty
Editor: @Olshansk
Metadata
Metadata
Assignees
Labels
consensusConsensus specific changesConsensus specific changescore starter taskGood for newcomers, but aimed at core team members though still open for everyoneGood for newcomers, but aimed at core team members though still open for everyone
Type
Projects
Status
In Review