CometBFT specification #23
Labels
major-priority
A major, long-running priority for the team
P:tech-debt
Priority: Technical debt that needs to be paid off to enable us to move faster, reliably
spec
Specification-related
tracking
A complex issue broken down into sub-problems
Was tendermint/tendermint#9321
CometBFT consists of many protocols and interfaces that need to be very well understood. Currently, not all protocols are clearly specified. This issue is designed to track the current state of the specification of CometBFT protocols and provide a clear overview of the remaining work in that respect.
Definition of done
This issue will be considered done when each sub-issue (corresponding to individual protocols and interfaces) is completed.
For a sub-issue to be considered completed it needs to provide the following:
Satisfaction criteria
For 1) and 2): The protocol team and the engineering team are confident that we have a complete list, and we understand the properties well enough to be sure that they can be formalized.
For 3) protocol team and engineering team agree that the description and the code are well aligned, and captures worst case scenarios / corner cases
For 4) we should provide some evaluation of the current state. Written constructively so that we can infer future steps. (perhaps describing scenarios where the implemented protocol behaves differently from what people think it might do).
CometBFT protocols
Here we provide a list of protocols that exist in CometBFT along with the existing documentation and its status.
Consensus
Accountability
Mempool
Peer exchange (PEX) and p2p :
Block sync:
State sync
Light client
CometBFT interfaces
ABCI
Peer management
Client facing
config.toml
revisit parameters and find out why they are not consensus paramsPrivate key storage and use
Persistence, Data Availability
Core data types
The text was updated successfully, but these errors were encountered: