Decisions
DraftLast reviewed 2026-06-24
Architecture decision records
This section captures the architectural choices OpenTRMS is willing to make public and stable enough to document. They are rewritten from backend decision notes and architecture docs into concise ADRs that explain:
- the problem the platform needed to solve
- the decision that was taken
- the operational consequences of that decision
- whether the decision is already adopted or still proposed
ADR template
Every ADR in this section follows the same structure:
StatusContextDecisionConsequences
That keeps the pages short enough to read during implementation work, but still explicit enough to justify the tradeoffs.
Current ADR set
- ADR-001: Event-sourced state
- ADR-002: Tamper-evident hash chain
- ADR-003: Business date and system time separation
- ADR-004: FX spot curves by base currency
- ADR-005: JAR plugins run in a subprocess sandbox
- ADR-006: Extensibility surface is layered and narrow