Skip to content
bitzorcas
中EN

Concept

ADR 0001:架构规则生命周期

ADR 分类法(Constitution/Strategy/Migration/Historical/Reference)、规则优先级、编号方案,以及架构测试保护不变量而非实现的原则。

Last updated

状态

Accepted(2026-07-09)。

背景

ADR 语料库曾混合了不同稳定性层级——长期不变量、当前策略与迁移期机制并存。合并后,ADR 与架构测试把临时策略当作永久教条保护,催生了浅层模块并阻碍演进。

决策

引入五层分类法(Constitution、Strategy、Migration、Historical、Reference)与规则优先级顺序:最新 Accepted/Revised ADR → Constitution 不变量 → 取代它的 ADR → 当前架构文档/迁移矩阵 → 历史 ADR。编号按类别分段(00xx–07xx,99xx 为被取代)。

由此引出两条原则。架构测试保护不变量,而非实现:保留守卫接口、接缝与不变量的测试;删除强制文件形状或把兼容适配器/白名单当作成功状态的测试。迁移规则必须是可删除的:每条 Migration 层规则声明 owner、范围、过期时间、删除条件、当前阻塞,以及其测试是棘轮还是永久门禁。一条没有删除条件的迁移规则只存在于临时规划中,绝不进入 ADR。

后果

ADR 回归为决策记录,而非规则堆叠。统一聚合、AOT 生成器与深层模块重构不再被迁移规格反向约束。代价是旧测试与指南修订带来的短期文档债务。

另见

接受生命周期变更前,评审者应把目录中的每一项追溯到可执行不变量及其回归测试。

100%

滚轮或按钮缩放 · 放大后拖动画面 · 双击切换 100% / 200%