A0-G 设计评审:材料包与议程
- 状态:待评审
- 日期:2026-09-23
- 评审对象:A0 边界与选型冻结(里程碑)
- 对应分支:
rewrite/platform,含 ADR-0007(提交 0981004)
- 通过标准:① 七份 ADR 结论无异议,或有异议并已记录处置方式;② 遗留项清单每项有责任人与时限;③ 评审通过后可直接进入 A0.10(文档入库)与 A1(脚手架)
1 材料包清单
| # |
材料 |
位置 |
状态 |
| 1 |
架构设计 |
飞书文档 |
已发布,9 节 |
| 2 |
实施设计 |
飞书文档 |
已发布,10 节 |
| 3 |
ADR-0001 ~ 0007 |
docs/adr/ |
已提交,7 份均为「已接受」 |
| 4 |
术语与边界一页纸 |
docs/glossary.md |
已提交 |
| 5 |
资产盘点表 |
Base · A0.8 资产盘点 |
26 条,26/26 已确认 |
| 6 |
任务分解与状态 |
Base · 任务总表(113 条) |
进行中 |
| 7 |
切换策略 |
ADR-0005 + 任务 A0.2 |
已定 |
| 8 |
决策台账 D1 ~ D11 |
Base · 任务总表 |
全部已完成 |
| 9 |
遗留项清单 |
本文第 4 节 |
待逐条认领 |
| 10 |
评审结论模板 |
docs/review/a0-gate-conclusion.md |
待填 |
2 ADR 一览
| 编号 |
决定 |
状态 |
| 0001 |
原地重写 + 孤儿分支,提交历史从零开始 |
已接受 |
| 0002 |
首版 Provider 进程内运行,Core 按 execution 注入短期凭据 |
已接受 |
| 0003 |
个人会话只读,写操作必须在项目会话内;权威数据源分工 |
已接受 |
| 0004 |
桌面端 Electron + 本地能力边界 |
已接受 |
| 0005 |
直接切换,不并行、不迁移、不保留旧库 |
已接受 |
| 0006 |
两个引擎都以长驻子进程运行 |
已接受 |
| 0007 |
单机 SQLite + 服务端 PostgreSQL,七条写法约定 |
已接受 |
ADR 写完不再修改。评审上若有人不同意某条,处理方式是新写一份 ADR 取代,并在两份里互相标注取代关系(docs/adr/README.md 的约定),不改原文。
3 决策台账
| # |
结论 |
出处 |
影响到 |
| D1 |
Provider 首版进程内运行,凭据由 Core 按 execution 注入 |
ADR-0002 |
A2、A5、B5 |
| D2 |
个人会话只读,写操作必须在项目会话内 |
ADR-0003 |
A1.7、A3.7 |
| D3 |
引擎在开发或部署期二选一,不中途切换 |
架构设计 5.2 |
A3.3、A3.10 |
| D4 |
桌面端用 Electron,不投入 Tauri 评估 |
ADR-0004 |
A6、B6 |
| D5 |
网页默认走系统浏览器;Agent 读网页走 web.fetch 能力 |
架构设计 7 |
A7 |
| D6 |
Sub-agent 首版只做只读调研 |
实施设计 9 |
A8 |
| D7 |
直接切换:不并行、不迁移、不保留旧库,旧代码留 legacy/main 供查证 |
ADR-0005 |
A0.2、B2 |
| D8 |
平台用 TS/Node 从零重写;APS 保持 Python 搬迁适配 |
ADR-0001 |
A1 ~ B7 |
| D9 |
权限归业务系统,身份映射与确认卡归平台;不做转派、委托、多人计数、角色策略 |
架构设计 4.1 |
A4、A4.4 |
| D10 |
两个引擎都以长驻子进程运行,平台只认 AgentRuntime 接口 |
ADR-0006 |
A3.10、A3.11 |
| D11 |
单机 SQLite、服务端 PostgreSQL,一套方言无关 schema + 七条写法约定 |
ADR-0007 |
A1.1、A3、B2 |
4 盘点结论摘要
26 条资产按口径分布:
| 分类 |
条数 |
含义 |
| 保留 |
2 |
设计与思路直接沿用(黄金测试、文档体系) |
| 借鉴 |
15 |
思路可用、实现重写(权力矩阵、审计链、唯一执行入口、求解引擎、柔性排产、世界状态、知识库、外部集成、契约镜像、桌面壳…) |
| 改写 |
7 |
逻辑对、实现要重做(网关、持久层、认证与租户、主流程编排、插件总线、客户端界面、桌面壳) |
| 丢弃 |
2 |
不再需要(旧意图识别、合成数据生成器) |
新系统落点:
| 落点 |
带走什么 |
| 平台 Core |
策略与权力矩阵、唯一执行入口、审计链(对应 server/core 的策略、执行、审计三块) |
| 平台应用与客户端 |
三栏布局与视图清单、桌面壳的进程守护与离线升级、契约与类型镜像 |
| APS 侧(搬迁适配,保持 Python) |
求解引擎、柔性排产、订单与主数据、世界状态与检查点、工艺路线模型、数据导入 |
| 不带走 |
旧意图识别器、合成数据集生成器、旧静态前端代码(页面清单留作 B6 范围参照) |
两条需要拍板的已定:持久层拆成平台 7 张 / APS 6 张;工艺路线模型归 APS,平台不建模板库。
5 遗留项清单
| # |
遗留项 |
出处 |
建议责任人 |
时限 |
阻塞 |
| 1 |
Pi 扩展桥的鉴权细节(nonce 轮换周期、端口预留策略) |
ADR-0006 |
平台侧 |
A3 设计时 |
A3.11 |
| 2 |
引擎进程复用策略(一会话一进程,还是一进程多会话) |
ADR-0006 |
平台侧 |
观察实际进程数后 |
无(首版不做) |
| 3 |
SQLite 驱动最终确认(better-sqlite3 与 node:sqlite 二者择一) |
ADR-0007 |
平台侧 |
A1.1 |
A1.1 |
| 4 |
单机版备份与导出入口 |
ADR-0007 |
客户端 |
A6 |
A6 |
| 5 |
APS 侧数据库选型 |
ADR-0007 |
APS 侧 |
B2 |
B2 |
| 6 |
跨进程 Provider 的启动条件 |
ADR-0002 |
平台侧 |
A8 或更晚 |
无 |
| 7 |
legacy/main 备份分支的创建与只读设置 |
ADR-0001 / A0.2 |
平台侧 |
切换前 |
强推动作 |
| 8 |
孤儿历史不减小仓库体积,是否另立仓库 |
ADR-0001 |
技术负责人 |
A0-G 当场 |
无 |
| 9 |
《实施设计》1.4 补 SQLite 文件路径与主键、时间约定 |
ADR-0007 |
平台侧 |
A0.10 |
A0.10 |
6 议程(60 分钟)
| 时段 |
内容 |
主讲 |
产出 |
| 0–5 |
目标与通过标准 |
主持人 |
确认议程 |
| 5–15 |
分层与边界(架构设计 1–4) |
架构 |
无异议,或记录异议 |
| 15–25 |
引擎适配与 Provider 契约(架构设计 5–6;ADR-0002 / 0006 / 0007) |
平台 |
同上 |
| 25–35 |
数据作用域与切换(ADR-0003 / 0005;盘点结论) |
平台 |
同上 |
| 35–45 |
桌面端与存储(ADR-0004 / 0007) |
客户端 |
同上 |
| 45–55 |
遗留项逐条认领 |
主持人 |
责任人 + 时限 |
| 55–60 |
结论与下一步 |
主持人 |
评审结论表 |
7 评审后动作
- 有异议的 ADR:新写一份取代,旧文标「已取代」,不改原文
- 结论写入任务总表的 A0-G 记录,并回填各 ADR 的「相关」栏
- A0.10:设计文档、ADR、术语表随分支首个提交入库,同时补《实施设计》1.4
- A1 启动:A1.1 脚手架(该工作包依赖 ADR-0001 与 ADR-0007)