This document defines which repository documents are authoritative when guidance conflicts. Lower-precedence documents must be updated to match higher-precedence ones.
- Approved specs in
docs/specs/ - Accepted ADRs in
docs/adr/ ARCHITECTURE.mdand supporting files indocs/architecture/AI_CONSTITUTION.mdDEVELOPMENT_RULES.mdTESTING_STRATEGY.mdanddocs/quality/quality-gates.md- Repository map and supporting governance notes in
docs/meta/ - Contributor workflow docs such as
CONTRIBUTING.mdandRELEASE.md - Informational docs such as
README.mdandCHANGELOG.md - Generated artifacts such as
.ai/,dist/, andcoverage/
- Follow the highest-precedence applicable document.
- Update every lower-precedence document touched by the conflict in the same change when feasible.
- If a higher-precedence document is missing for a material behavior or architectural change, create it before finishing the change.
- If implementation differs from the highest-precedence document, do not silently pick one. Reconcile the gap with a spec, ADR, or explicit follow-up.
Tests are executable evidence, not top-level governance. They should reflect approved specs and accepted architecture.
When tests conflict with higher-precedence documents:
- update the tests if the documented intent is correct
- update the governing document first if the implementation is the new intended behavior
Never use stale tests as justification for undocumented architecture drift.
For shipped public behavior, do not rely on README examples or generated output as the source of truth. Compatibility-sensitive changes must be justified by a spec and, when architectural, an ADR.