Files
markitect-tool/examples/contracts/adr.contract.md

1.0 KiB

title, version
title version
ADR Contract 1.0

ADR Contract

id: adr-contract-v1
document:
  type: adr
  title: Architecture Decision Record
fields:
  status:
    type: string
    required: true
    enum: [proposed, accepted, superseded]
metrics:
  document:
    words:
      min: 40
      max: 900
      severity: warning
sections:
  - id: context
    title: Context
    presence: required
    level: 2
    order:
      before: decision
    assertions:
      - id: context-names-problem
        contains_any: [problem, motivation, constraint]
        severity: warning
        guidance: Explain why the decision exists.
  - id: decision
    title: Decision
    presence: required
    level: 2
    assertions:
      - id: decision-commits
        matches: "\\b(choose|adopt|use|will)\\b"
        severity: error
        guidance: State the actual decision, not only background.
  - id: consequences
    title: Consequences
    presence: recommended
    level: 2
  - id: deprecated
    title: Deprecated Approach
    presence: forbidden