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.