|
|
- # Tendermint Roadmap
-
- This is an estimate of what we will be working on in Tendermint over the coming months.
- It is in the same style as our [CHANGELOG](/docs/changelog)
- How these changes will be rolled out in terms of versions and releases can be better [tracked on Github](https://github.com/tendermint/tendermint/issues)
-
- Please note that Tendermint is not yet production ready;
- it is pre-v1.0.0 and we make backwards incompatible changes with each minor version release.
- If you require more stability in the near term, please [get in touch](/contact).
-
- BREAKING CHANGES:
-
- - Add more fields to the Header: NextValidatorSet, ResultsHash, EvidenceHash
- - Pass evidence/voteInfo through ABCI
- - Upgrade the consensus to make more real-time use of evidence during voting;
- instead of +2/3 precommits for a block, a Commit becomes the entire `JSet`.
- While the commit size may grow unbounded in size, it makes a fork immediately slash a +1/3 Byzantine subset of validators.
- - Avoid exposing empty blocks as a first-class citizen of the blockchain
- - Use a more advanced logging system
-
- FEATURES:
-
- - Use the chain as its own CA for nodes and validators
- - Tooling to run multiple blockchains/apps, possibly in a single process
- - State syncing (without transaction replay)
- - Transaction indexing and improved support for querying history and state
- - Add authentication and rate-limitting to the RPC
-
- IMPROVEMENTS:
-
- - Better Tendermint CLI
- - Improve subtleties around mempool caching and logic
- - Consensus optimizations:
- - cache block parts for faster agreement after round changes
- - Better testing of the consensus state machine (ie. use a DSL)
- - Auto compiled serialization/deserialization code instead of go-wire reflection
-
- BUG FIXES:
-
- - Graceful handling/recovery for apps that have non-determinism or fail to halt
- - Graceful handling/recovery for violations of safety, or liveness
|