Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ADR002 - Required Status

ADRs must have a status indicating the decision's current state.

Why This Rule Exists

Status indicates whether a decision is:

  • Proposed: Under consideration
  • Accepted: Approved and in effect
  • Deprecated: No longer recommended
  • Superseded: Replaced by another ADR

Without status, readers cannot determine if the decision is current.

Formats

Nygard Format

Status is a ## Status section:

## Status

Accepted

MADR Format

Status is in YAML frontmatter:

---
status: accepted
date: 2024-01-15
---

Examples

Incorrect

# 1. Use Rust

Date: 2024-01-15

## Context

We need to choose a language.

Missing Status section.

Correct (Nygard)

# 1. Use Rust

Date: 2024-01-15

## Status

Accepted

## Context

We need to choose a language.

Correct (MADR)

---
status: accepted
date: 2024-01-15
---

# Use Rust

## Context and Problem Statement

We need to choose a language.

Rule Details

  • Rule ID: ADR002
  • Name: adr-required-status
  • Category: Structure
  • Severity: Error
  • Automatic Fix: Not available
  • ADR007 - Status value validation