Skip to content

Architecture Decision Records

Use the adr skill (.claude/skills/adr) or copy 0000-template.md.

ADR Title Status Issues
0000 Template — —
0001 Monorepo architecture and module boundaries Accepted #1
0002 Rust-first backend and technology stack Accepted #105
0003 CLI presentation boundary and rs-rich-cli Accepted #108
0004 CLI framework, module registration and exit codes Accepted #6
0005 Configuration and profiles Accepted #7
0006 Plugin SDK, contracts and capabilities Accepted #2, #3
0008 Open, fast column-level lineage Accepted #73, #74, #31, #92
0009 A hostable explorer (ods-web) and an EDGE layer Accepted #95, #96, #102, #107
0010 ods mcp, a read-only, local MCP server Accepted #169
0011 Read dbt State configuration as-is Accepted #168, #19
0012 An ERD from tests and constraints, with evidence Accepted #60–#65, #169
0013 State snapshots, fingerprints and the state store Accepted #11, #13, #16, #18, #20, #22, #25
0014 The Executor contract and ods state run Accepted #23, #24, #211
0015 A dbt-shaped CLI, and compatibility front-ends for other tools' CLIs Proposed #224, #225, #226
0016 Check that a relation still exists before reusing it Accepted #230
0017 State per dbt target, with a non-secret target identity Accepted #227
0018 State store migrations, integrity and recovery Accepted #188
0019 Release and versioning strategy Accepted #101, #212
0020 dbt state interop: export a state that --favor-state can trust, and import dbt runs Accepted #296
0021 Databricks authentication: U2M first, M2M for CI, tokens never persisted Proposed #297
0022 Delta table versions as source change evidence, read through dbt Accepted #17, #16
0023 ods doctor: typed health checks, stable codes and exit semantics Accepted #181
0024 Run events, per-node run stats and the run journal Accepted #322
0025 Explaining failed nodes: a neutral taxonomy, provider pattern catalogues and evidence joins Accepted #323
0026 Run playback: replaying a run's journal on the Lineage page Accepted #322 (follow-up)
0027 A federated build graph across project formats (dbt, SQLMesh, …) Proposed (exploratory) #12, #86, #226
0028 Open data environments: versioned physical tables, environments as pointers Proposed (exploratory) #29, #30, #114, #120, #195
0029 Build timings and the run ledger: what reuse saved Accepted #210
0030 Configurable and pluggable health checks: config, probes, scripts and plugins Accepted #392, #354, #117

ADR-0007 (the clean-room and licensing policy, #10) is planned and not written yet; until it is, the rule is AGENTS.md rule 8, and deny.toml checks dependency licences. Each ADR's status line notes what of its decision isn't built yet.