Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

A-26012: ADR Index Restructuring — Two-Level Sectioning and Tag Vocabulary Audit


title: ADR Index Restructuring — Two-Level Sectioning and Tag Vocabulary Audit authors:


A-26012: ADR Index Restructuring — Two-Level Sectioning and Tag Vocabulary Audit

Problem Statement

The ADR index (architecture/adr_index.md) uses three status-based sections: Active Architecture, Evolutionary Proposals, Historical Context. As the ADR count grows (44 at time of writing), the Active Architecture section becomes a flat list of 22 entries — difficult to scan and navigate.

Additionally, the architecture tag appears on 33 of 44 ADRs, making it effectively meaningless as a discriminator. Every ADR is an architectural decision by definition, so tagging it architecture is tautological.

This analysis evaluates index restructuring options and audits the tag vocabulary to support meaningful sectioning.

Key Insights

Tag distribution data (2026-03-23, 44 ADRs)

Individual tag frequency:

TagCount% of ADRs
architecture3375%
governance1636%
workflow1330%
context_management1330%
documentation1330%
git511%
model511%
devops49%
ci25%

The architecture tag problem

The tag vocabulary in .vadocs/conf.yaml defines architecture as “Technical design decisions — system structure, component boundaries, patterns.” This is a valid narrow definition, but it was applied broadly as a default tag. On ADRs specifically, the tag is tautological — the document type itself implies architectural scope.

Removing architecture from the first-tag position produces meaningful section distribution:

Primary tagActiveProposedRejectedSuperseded
governance7412
context_management141—
model2——3
workflow212—
documentation2———
devops2———
git2—1—
ci————

7 ADRs that had only [architecture] need re-tagging:

ADRTitleProposed primary tag
26009Ansible for Config Managementdevops
26010Molecule for Ansible Validationtesting
26011Mandatory Script Suite Workflowgovernance
26012Extraction of Documentation Validation Enginegovernance
26013Just-in-Time Prompt Transformationworkflow
26014Semantic Notebook Pairing Strategydocumentation
26015Mandatory Sync-Guard & Diff Suppressionci

Index restructuring approaches evaluated

Approach A: Single mandatory category field

Approach B: Ordered tags — first tag is primary (selected)

Approach C: Tag-based sub-grouping within status sections

Two-level index structure (status × primary tag)

## Active Architecture
### governance (N)
ADR-NNNNN: Title
...

### model (N)
...

## Evolutionary Proposals
### governance (N)
...

## Rejected
### workflow (N)
...

## Superseded
### model (N)
...

architecture tag disposition

Decision: keep in vocabulary, remove as default, re-tag ADRs.

The tag retains its narrow definition (system structure, component boundaries, patterns) but should only appear on ADRs that are genuinely about structural design — e.g., ADR-26020 (hub-and-spoke), ADR-26043 (package boundary). Most ADRs will drop it or move it to a secondary position.

The tag remains valid for non-ADR artifacts (analyses, retrospectives) where the document type doesn’t imply architectural scope.

References