Architecture Decision Records (ADR)

This is a location to record all high-level architecture decisions in the CometBFT project.

You can read more about the ADR concept in this blog post.

An ADR should, with a strong focus on the impact on users of the system, provide:

To create a new ADR, please use the ADR template.

Note the distinction between an ADR and a spec. An ADR provides the context, intuition, reasoning, and justification for a change in architecture, or for the architecture of something new. A spec is more compressed and streamlined summary of everything as it stands today.

If recorded decisions turned out to be lacking, convene a discussion, record the new decisions here, and then modify the code to match.

Note the context/background should be written in the present tense.

Table of Contents

The following ADRs are exclusively relevant to CometBFT. For historical ADRs relevant to Tendermint Core as well, please see this list. To distinguish CometBFT ADRs from historical ones from Tendermint Core, we start numbering our ADRs from 100 onwards.

Proposed

Accepted

Implemented

Deprecated

Rejected

Decorative Orb