← ClaudeAtlas

engineering-decision-recordlisted

Writes and reviews architecture decision records (ADRs): frames the decision as a forced choice, states the options actually considered with their real trade-offs, and records the consequences the team accepts. Use when a technical choice will be expensive to reverse, when a decision keeps being relitigated, when onboarding reveals nobody knows why a component exists, or when reviewing a draft ADR. Trigger on 'write an ADR', 'architecture decision record', 'document this decision', 'why did we choose X', 'we keep re-arguing this'. Not for decisions that are cheap to reverse — record those in the ticket; not for reviewing code that implements an already-accepted decision, which is engineering-code-review.
alihusains/enterprise-skills · ★ 0 · AI & Automation · score 73
Install: claude install-skill alihusains/enterprise-skills
# Architecture decision record ## Purpose Two failures recur. A decision gets made in a meeting, nobody writes down what was rejected, and six months later the team relitigates it with worse information. Or an ADR is written as an advertisement for the chosen option: alternatives listed only to be dismissed, no cost admitted. This skill produces records that survive both — a record whose value is that it tells you what would have to change for the decision to be reversed. ## Prerequisites - **Inputs:** the decision being forced and what triggers it now; the constraints that are genuinely fixed (deadline, existing systems, team skills, regulatory obligation); at least two options that a competent engineer would defend. - **Access:** whoever holds the authority to accept the decision. An ADR nobody can accept is a proposal, and should be labelled Proposed, not Accepted. If only one option exists, this is not a decision — it is a constraint. Record it as context somewhere else and stop. ## Procedure 1. **Write the forcing function first.** One paragraph: what is true now that makes this decision necessary this quarter? "We should think about our database" is not a forcing function. "Write throughput on the primary is at 70% of capacity and growth projects it to 100% within two quarters" is. An ADR without a forcing function is usually premature and will be overtaken. 2. **State the constraints separately from the preferences.** A constraint is some