Decisions and ADRs
Decisions and ADRs
Section titled “Decisions and ADRs”Use Tandem decision documents for durable project, product, and architecture choices. A Tandem decision is ADR-compatible; do not create a separate adr type, task state, or completed-task log just to record an architecture decision.
Frontmatter pattern
Section titled “Frontmatter pattern”Required v0 fields are id, type: decision, and title. The CLI writes those fields plus timestamps, references, tags, and the Markdown body.
Optional ADR-friendly metadata may be preserved by tools and edited in Markdown when needed:
id: decision-12type: decisiontitle: Store completed work in logsstatus: accepted # proposed | accepted | superseded | deprecated | rejecteddate: 2026-07-01deciders: [Algorant, Pi]tags: [adr, protocol]references: - task-87 - decision-4supersedes: - decision-4supersededBy: []createdAt: 2026-07-01T18:00:00ZupdatedAt: 2026-07-01T18:00:00Zstatus is ADR record metadata, not workflow state. Use references for links the current CLI/TUI should find, including superseded or superseding decisions.
Body template
Section titled “Body template”## Status
Accepted, proposed, superseded, deprecated, or rejected.
## Context
What forces, constraints, alternatives, or prior decisions made this choice necessary?
## Decision
What has been decided?
## Consequences
What becomes easier, harder, required, or intentionally deferred?
## Supersession
- Supersedes: decision-N or none- Superseded by: decision-M or none
## References
- task-N, decision-N, log-N, code/docs paths, or external links as neededCLI example
Section titled “CLI example”body=$(cat <<'MD'## Status
Accepted.
## Context
Tandem needs architecture decisions to be durable and searchable without adding another document type.
## Decision
Record ADR-compatible choices as Tandem `decision` documents.
## Consequences
Agents and humans use the same decision surface. Supersession links stay visible through `references`.
## Supersession
- Supersedes: none- Superseded by: noneMD)
tandem decision add \ --title "Use Tandem decisions for ADRs" \ --body "$body" \ --reference task-87 \ --tag adr
tandem decision listtandem decision show decision-12 --jsonTUI workflow
Section titled “TUI workflow”- Run
tandem tui. - Press
4or click Decisions. - Browse decision records in the list and read ADR sections in the body pane.
- Press
ato add a basic title/body decision. Include the body template above when recording an ADR-compatible decision.
The Decisions view should not invent decision lifecycle columns. Status and supersession are record metadata/body content, not Board workflow state.
Pi agent pattern
Section titled “Pi agent pattern”Use the Pi tool, not raw .tandem edits, for normal creation:
tandem_decision action=add title="Use Tandem decisions for ADRs" references=["task-87"] tags=["adr"] body="## Status\n\nAccepted.\n\n## Context\n..."Use tandem_search or tandem_decision action=show to inspect existing decisions before creating a replacement. Do not model decisions as tasks, state values, accord statuses, or a separate adr type.