架构决策记录(ADR)

重大架构变更必须留下 ADR,记录决策背景、决策内容、替代方案和迁移影响(见 AGENTS.md「代码评审与演进」)。

约定

  • 文件名 NNNN-<short-title>.md,四位编号单调递增、永不复用。
  • 已接受的 ADR 不修改正文;决策被推翻时新增一条 ADR,并把旧条目 Status 改为 Superseded by NNNN。
  • Status 取值:Proposed、Accepted、Deprecated、Superseded by NNNN。

ADR 清单

编号 标题 状态 关联记录
0001 Separate scoped service credentials from management sessions Accepted —
0002 数据面窗口与 credit 不变量 Accepted 计划:Client receive-window credit timing fix p…
计划:Client WINDOW_UPDATE 泄漏修复
计划:Agent / Server / Client 数据面流控与阻塞隔离加固
PR:Client receive-window credit timing fix
PR:Client WINDOW_UPDATE 泄漏修复
PR:Agent / Server / Client 数据面流控与阻塞隔离加固
0002 Open a public UDP ingress for an embedded VPN gateway Accepted 规格:内嵌 VPN 网关(WireGuard)
0003 Constrained self-update and process supervision for client and agent Accepted 计划:Client/Agent 自动升级、失败回滚与进程守护
PR:Client/Agent 自动升级、失败回滚与进程守护
0004 Agent 与 Server 之间增加裸 TCP(TLS)与 QUIC 传输 — 计划:Agent 与 Server 之间增加 TCP(TLS)与 QUIC 传输
0005 管理后台在 Agent 上运行脚本 — 计划:管理后台运行脚本(Agent 原生执行)

新增 ADR 的步骤

  1. 复制现有 ADR 的结构,使用下一个可用编号。
  2. 在正文中链接触发该决策的实施计划或设计规格。
  3. 执行 python3 scripts/gen_doc_index.py 重新生成本索引。