Architecture Decision Records#

An Architecture Decision Record (ADR) captures one significant design decision: the context that forced the choice, the option that was taken, and the consequences that fall out of it. ADRs are append-only — when a decision is reversed or replaced, a new ADR is authored and the old one is marked Superseded by ADR-XXXX, not deleted. They exist so a future contributor (or a future you) can recover the rationale without spelunking commit history.

Strata’s ADRs cover the foundational decisions made during the MVP and “modern complete” phases. They link to the code paths they constrain so the contract is visible at the point of change.

ADR template#

# ADR-NNNN: <title>

## Status

Accepted | Superseded by ADR-XXXX | Deprecated — <date>

## Context

What problem are we solving? What constraints apply? What did we
consider but reject?

## Decision

The choice we made, in present tense ("We use X to do Y.").

## Consequences

What follows from this decision — positive, negative, and the invariants
the rest of the codebase now depends on.

Index#

IDTitle
ADR-0001Skip RADOS omap for bucket index
ADR-0002Derive IsLatest at read time
ADR-0003Single manifest blob column for object metadata
ADR-0004One leader lease per background worker

See also#