Skip to main content
Choose an ADR form by how much decision analysis needs to survive. MADR makes drivers, options, consequences, and confirmation explicit. Michael Nygard’s form keeps status, context, decision, and consequences. A minimal memory form can preserve only the surprising tradeoff and reason. Source stamps: MADR at 835fc94, the maintained Nygard template record, and mattpocock/skills at 9603c1cc, reviewed July 18, 2026.

Structural comparison

MADR publishes full, minimal, bare, and bare-minimal variants. Its repository also uses MADR for its own decisions. The Nygard form is widely represented as status, context, decision, and consequences.

One decision in three grains

Decision: use a database lease for queued jobs.
  • A full MADR record compares database leases, process locks, and queue-owned visibility timeouts against crash recovery and multi-worker coordination.
  • A Nygard record explains the duplicate-claim problem, chooses the conditional database lease, and records recovery and monitoring consequences.
  • A minimal record says that process locks do not coordinate or survive restart, so the system uses a time-bounded conditional database lease.
None is automatically better. Use the smallest form that preserves the decision future maintainers would otherwise repeat.

Reuse notes

MADR is available under MIT or CC0. The maintained ADR example collection contains mixed source licenses, so this site does not import it as one template pack. Our ADR template is original and cites the source traditions that informed it. See ADR vs RFC vs technical specification before deciding whether an ADR is the correct document at all. Reviewed July 18, 2026. Researched and maintained by the Plannotator documentation team.
Last modified on July 19, 2026