Skip to content

EPIC: ABCI++ #12272

@tac0turtle

Description

@tac0turtle

Summary

Tendermint team has been working on a refactor of the abci layer to enable more use cases. This has been a requested feature by many users and will be a focus of the sdk team once a release of 0.36 is cut and SDK team has completed app wiring migration.

More Information can be found on the design here: https://github.com/tendermint/tendermint/tree/master/spec/abci%2B%2B

Phase 1

Phase 1 of baseapp++ will be focused on prepare proposal and process proposal.

Phase 2

Phase 2 of baseapp++ will commence once tendermint releases a version of abci with vote extensions and finalise block

  • abci 2.0: write ADR #14674 (@alexanderbez)
  • Implement vote extensions (@alexanderbez)
  • Implement finalize block (@alexanderbez)
  • Update remaining components and tests of BaseApp
  • Update modules (this might need to be broken down by module in case burden is too high) (@alexanderbez)
  • Update simapp
  • Update store (this includes possibly revamping streaming APIs) (@tac0turtle)
  • Update runtime
  • Update server
  • Update types
  • Update client
  • Audit BaseApp ABCI methods to ensure errors are only returned where necessary
  • BaseApp tests for FinalizeBlock, ExtendVote, and VerifyVoteExtension

Phase 3

Phase 3 is all about testing

Phase 4

  • add changelog and upgrading.md for changes

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions