Skip to content

Architecture decision records

Each record captures one decision: the context that forced it, the options considered, and the consequences we accepted. Records are immutable once accepted; a changed decision gets a new record that amends or supersedes the old one. Proposals that precede decisions live in ../rfcs/.

ADR Title Status
0001 A library with a sans-IO core, replacing the template Accepted
0002 The name reflexr Accepted
0003 An independent sibling of artifactr, with aligned conventions Accepted
0004 Tenant-scoped streams with one log each Accepted
0005 Per-rule cursors: decide exactly, act at least once Accepted
0006 Rules as typed, serializable data Accepted
0007 Rule state as pure reducers, with the log as the clock Accepted
0008 Actions: agents, graphs and functions over one Reaction Accepted
0009 Graph checkpoints at step boundaries Accepted
0010 Loop and spend safety Accepted
0011 Surfaces: ingest, REST, WebSocket, schedules and MCP Accepted
0012 Trunk-based development with RFCs, ADRs and evergreen docs Accepted
0013 Quality gates Accepted
0014 MIT license Accepted
0015 Reference implementation: incident response Accepted

To add a record, copy template.md to the next number and add a row above.