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.

ADR-26011: Formalization of the Mandatory Script Suite Workflow


title: Formalization of the Mandatory Script Suite Workflow date: 2026-01-31 tags:


ADR-26011: Formalization of the Mandatory Script Suite Workflow

Title

Mandating a synchronized 1:1:1 ratio for Scripts, Tests, and Documentation.

Status

Superseded by ADR-26045

Supersession Rationale

The documentation requirement (third leg of the triad) is replaced by contract docstrings governed ecosystem-wide by ADR-26045. Evidence in A-26014 showed that per-script instruction docs drifted silently during config migrations, duplicated content already in docstrings and tests, and created co-staging friction. The script + test pairing remains enforced as an operational convention.

Date

2026-01-26

Context

As the repository grows, documentation drift and untested utility scripts create significant maintenance debt. Developers often follow outdated instructions or encounter broken scripts that lack corresponding test cases.

Current architectural decisions established Python as the standard for hooks ADR-26001 and pre-commit as the orchestration framework ADR-26002. We now require a formal mechanism to ensure that no script is introduced or modified without its accompanying verification and instructional artifacts.

Here we are decoupling the Script Suite Concept—the mandatory 1:1:1 ratio of Code:Test:Doc—from the Tiered Commit Validation logic ADR-26003. This ADR focuses exclusively on the structural integrity of the tools/ directory and the automation required to enforce it.

The challenge identified is Knowledge Fragmentation. When a script is updated but its test or documentation is not, the repository’s “Smallest Viable Architecture” (SVA) degrades into technical debt. By formalizing the “Suite” as a single atomic unit, we move from passive documentation to Active Specification Enforcement.

Decision

We will enforce the Script Suite as a mandatory unit of development. A “Suite” is defined by the existence of three interconnected files following a strict naming convention:

  1. The Script: Located in tools/scripts/<name>.py.

  2. The Test: Located in tools/tests/test_<name>.py.

  3. The Documentation: Located in tools/docs/scripts_instructions/<name>_py_script.md and its .ipynb pair.

Enforcement Mechanisms:

Consequences

Positive

Negative

Alternatives

References

Participants

  1. Vadim Rudakov

  2. Gemini (Senior DevOps Systems Architect)