Files
kontextual-engine/examples/markitect-tool-contract/contracts/decision-record.contract.md

1.0 KiB

Decision Record Contract

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