Skip to content

Architecture Decision Records (ADR)

Short, durable notes on why BTU is shaped the way it is. Each ADR captures one decision; the full narrative lives in Technical Design.

ADR Title Status
0001 Two-component architecture (Frappe app + daemon) Accepted
0002 External scheduler daemon is mandatory Accepted
0003 Frappe built-in scheduler is not a user product Accepted
0004 Run Later prioritizes Desk visibility over RQ delay Accepted
0005 Redis RPC as scheduler control plane Accepted

Format

Each record includes Context, Decision, and Consequences. Status values: Proposed, Accepted, Deprecated, Superseded.

When a decision is reversed, add a new ADR and mark the old one Superseded — do not silently rewrite history.