Skip to main content

ADR conventions for superbuild consumers

Superbuild workspaces that mount this repository at tools/ai-rules/ use Architecture Decision Records (ADRs) for significant decisions at the consumer repository level (for example superbuild layout, migration choices, documentation sites).

Canonical specification

ADR format, lifecycle, editing rules, and commit conventions are defined by A2C — not duplicated here.

Use the a2c-workflow tag or commit that matches your team's pinned tooling when following these links; develop URLs below are convenience pointers, not a floating contract.

TopicCanonical source
ADR README (format, status, supersession, commits)a2c-workflow docs/adr/README.md
ADR templatea2c-workflow templates/adr/adr-template.md
Editing evolutiona2c-workflow rules/08-adr-editing-evolution.md
ADR commits (adr(...) vs maintenance)a2c-workflow rules/03-adr-commits.md
External web sources ([web:NNN])a2c-workflow rules/15-web-source-tags.md

Superbuild-workflow and A2C are different workflows (migration/CMake policy vs product architecture-first). They share one ADR contract so humans and AI agents use the same filenames, sections, and immutability rules.

Where ADRs live

Repository roleADR directoryExamples
Superbuild consumer (e.g. esysrepo_dev)docs/adr/ at superbuild rootDoc sites, manifest layout, CI deploy
Product submodule (e.g. src/esysrepo)docs/adr/ in that Git repoManifest model, sync, CLI, APIs

Each Git repository has its own ADR sequence. Cross-link between repos by URL; do not merge indexes.

ADR-0000 in consumer repos

ConsumerADR-0000 records
Superbuild workspaceAdopt superbuild-workflow at tools/ai-rules/ (revision pin)
A2C-governed product repoAdopt A2C workflow version X.Y.Z — see a2c-workflow reuse

Do not mix these meanings in a single ADR-0000.

Validation (optional)

If a2c-cli is installed in the superbuild dev environment:

a2c list adrs --json
a2c validate

a2c_core.load_adrs() is workflow-agnostic: it reads docs/adr/*.md using the shared filename and status conventions.

Future eai-supmig doctor checks may report ADR issues using the same parser.

Bootstrap template

Copy docs/adr/README.md, docs/adr/INDEX.md, and the ADR template from a2c-workflow (templates/adr/adr-template.md) into the consumer repo. Superbuild-workflow does not ship a duplicate template tree — the A2C template is canonical.

New decisions use commit type adr(...); typo or link fixes on Accepted ADRs use docs(adr): or fix(adr): per A2C rules above.

  • governance.md — what belongs in this repo vs consumers
  • repository-layout.md — expected tools/ai-rules/ mount
  • Root AGENTS.md in this repository — agent entry point