# Decision records

https://exo.now/docs/adr

> Every architecture decision record, rendered directly from docs/adr.



The pages in this section are compiled straight from the Markdown in
[`docs/adr/`](../../../docs/adr/0001-reversible-content-backend.md). The ADR files are the single
source of truth: they carry no docs-specific frontmatter, and their title, status, and date are
read from each record's own heading and bullet list. Links between records resolve to docs pages,
and links to other repository files point at the file on `staging`.

When records conflict, the newest accepted ADR wins. For example, ADR 0003 (Convex Auth v2)
superseded ADR 0002 (Clerk identity boundary), ADR 0012 records that Clerk is fully removed, and
ADR 0013 (EXO is mission control; apps pick components) supersedes ADR 0011 (forge, Bases and Ships).

<AdrIndex />

<Callout title="Not yet on staging" type="info">
  ADRs 0005–0007 were accepted on `main` on 2026-09-27 and will appear here automatically once
  they reach `staging`. Until then, read them on `main`:
  [0005 EXO Verify](https://github.com/Interspace-Ventures/exo/blob/main/docs/adr/0005-exo-verify-verification-service.md) ·
  [0006 Exo Analyze](https://github.com/Interspace-Ventures/exo/blob/main/docs/adr/0006-exo-analyze-product-analytics.md) ·
  [0007 Exo Deploy (was exo-mobilize)](https://github.com/Interspace-Ventures/exo/blob/main/docs/adr/0007-exo-mobilize-mobile-release-toolkit.md).
  Summaries are on the [platform services](/docs/platform) pages.
</Callout>

## Writing a new ADR [#writing-a-new-adr]

1. Add `docs/adr/NNNN-short-slug.md` with a `# ADR NNNN: Title` heading and `- Status:` and
   `- Date:` bullets, following the existing records.
2. Open it through the normal canary → `staging` path. The docs pick it up at build time with no
   further change.
