Home / Projects / Orchestrata Ultimate / Decisions / ADR index / ADR-0039

ADR-0039: Ruleset design — one commit per design version (F12)

field value
Status Accepted
Date 2026-08-28
Register factory (docs/adr, 4-digit ids)
Source docs/adr/0039-ruleset-design-commit-per-version.md — permalink at 9c90c0209 (unchanged on master since that commit)
Wiki register entry ADR-0039 (wiki status: Accepted)

← ADR-0038 · ADR-0040 →

The record

Status: Accepted · Date: 2026-08-28 (ratified in-session; recorded here 2026-08-29)

Context

The runtime-ruleset design (plans/ruleset-runtime-design.md, SPEC-115-to-be) evolves through adversarial review rounds; each fold rewrites text. Without per-version commits, prior rationale and reviewer line-citations dangle (the exact loss docs/adr/README.md records for SPEC-033's early rounds).

Decision

Every design version — full folds and amends alike — is snapshotted and committed before the next round. The version label in the header is the audit key; amend commits bump it.

Alternatives rejected

Batching versions per day (loses per-fold diffability for the fold-verifier); keeping snapshots only in scratchpad (not durable, not shareable).

Consequences

20 commits v3→v16 on architecture/domain-model; every reviewer line-citation resolves against a committed snapshot; F12 recorded RATIFIED in §11.

Provenance

Mohamed's order "continue and commit each version" (2026-08-28); design §11 F12.

No other ADR is named in this record.

Rulings cited

None.

Specs cited