reference appendices

Architecture Decision Record Template

An architecture decision record captures a consequential choice, its context, the considered options, and the result. Keep it short enough that developers will update and read it.

Use This Reference When

  • Choosing storage, queue, deployment, or integration boundaries.
  • Recording why an apparently simpler option was rejected.
  • Revisiting a decision after constraints change.

ADR Skeleton

# Use database-backed outbox for order events

## Status
Accepted

## Context
What problem and constraints require a decision?

## Decision
What will the team do?

## Consequences
What becomes easier, harder, or newly required?

Do not use ADRs for routine implementation details. Record decisions that future maintainers would otherwise have to reverse-engineer.

Practice

Write a Small ADR

Write an ADR for choosing a database-backed outbox instead of publishing directly during an HTTP request.

Show solution

Capture the reliability problem, transaction boundary, worker requirement, operational cost, and the reason direct publishing was rejected.