From 26373835de74dd6ad5238df1e2574c4fd16f65af Mon Sep 17 00:00:00 2001 From: zh Date: Wed, 23 Sep 2026 16:44:05 +0800 Subject: [PATCH] =?UTF-8?q?docs(review):=20A0-G=20=E8=AF=84=E5=AE=A1?= =?UTF-8?q?=E6=9D=90=E6=96=99=E5=8C=85=E4=B8=8E=E8=AE=AE=E7=A8=8B=EF=BC=88?= =?UTF-8?q?A0.11=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 材料包含 ADR-0001~0007 一览、决策台账 D1~D11、盘点结论摘要(26 条:保留 2 / 借鉴 15 / 改写 7 / 丢弃 2)、九项遗留清单、60 分钟议程与结论模板。来源:任务表 A0.11。 --- docs/review/a0-gate-conclusion.md | 50 ++++++++++++++ docs/review/a0-gate-review.md | 107 ++++++++++++++++++++++++++++++ 2 files changed, 157 insertions(+) create mode 100644 docs/review/a0-gate-conclusion.md create mode 100644 docs/review/a0-gate-review.md diff --git a/docs/review/a0-gate-conclusion.md b/docs/review/a0-gate-conclusion.md new file mode 100644 index 0000000..d903e99 --- /dev/null +++ b/docs/review/a0-gate-conclusion.md @@ -0,0 +1,50 @@ +# A0-G 设计评审结论 + +> 本文件由评审现场填写。模板结构对应 `docs/review/a0-gate-review.md`。 + +- **评审日期**: +- **参与人**: +- **材料包版本**:`rewrite/platform`,含 ADR-0007(提交 `0981004`) +- **结论**:通过 / 有条件通过 / 不通过 + +## 1 逐份 ADR + +| 编号 | 结论 | 条件、异议或处置 | 责任人 | 时限 | +| --- | --- | --- | --- | --- | +| ADR-0001 技术栈与仓库形态 | | | | | +| ADR-0002 引擎与 Provider 部署形态 | | | | | +| ADR-0003 数据作用域与权威数据源 | | | | | +| ADR-0004 桌面端与本地能力边界 | | | | | +| ADR-0005 直接切换,不并行、不迁移 | | | | | +| ADR-0006 引擎以长驻子进程运行 | | | | | +| ADR-0007 数据存储选型与双形态一致规则 | | | | | + +结论取值:接受 / 有条件接受(写明条件)/ 退回(写明缺什么)。退回或改结论一律新写一份 ADR 取代。 + +## 2 遗留项认领 + +| # | 遗留项 | 责任人 | 时限 | 处置 | +| --- | --- | --- | --- | --- | +| 1 | Pi 扩展桥鉴权细节 | | | | +| 2 | 引擎进程复用策略 | | | | +| 3 | SQLite 驱动最终确认 | | | | +| 4 | 单机版备份与导出入口 | | | | +| 5 | APS 侧数据库选型 | | | | +| 6 | 跨进程 Provider 启动条件 | | | | +| 7 | `legacy/main` 备份分支与只读 | | | | +| 8 | 是否另立仓库(体积归零) | | | | +| 9 | 《实施设计》1.4 补存储细节 | | | | + +## 3 门槛判定 + +| 通过标准 | 结论 | 说明 | +| --- | --- | --- | +| 七份 ADR 结论无异议,或异议已记录处置方式 | | | +| 遗留项每项有责任人与时限 | | | +| 通过后可直接进入 A0.10 与 A1 | | | + +## 4 后续 + +- A0.10 入库范围: +- A1 启动条件: +- 需新增或调整的任务: \ No newline at end of file diff --git a/docs/review/a0-gate-review.md b/docs/review/a0-gate-review.md new file mode 100644 index 0000000..d571471 --- /dev/null +++ b/docs/review/a0-gate-review.md @@ -0,0 +1,107 @@ +# A0-G 设计评审:材料包与议程 + +- **状态**:待评审 +- **日期**:2026-09-23 +- **评审对象**:A0 边界与选型冻结(里程碑) +- **对应分支**:`rewrite/platform`,含 ADR-0007(提交 `0981004`) +- **通过标准**:① 七份 ADR 结论无异议,或有异议并已记录处置方式;② 遗留项清单每项有责任人与时限;③ 评审通过后可直接进入 A0.10(文档入库)与 A1(脚手架) + +## 1 材料包清单 + +| # | 材料 | 位置 | 状态 | +| --- | --- | --- | --- | +| 1 | 架构设计 | [飞书文档](https://scneju2wtbd7.feishu.cn/docx/DPHSdeVtAo8bLExzbufcpRZ3nAb) | 已发布,9 节 | +| 2 | 实施设计 | [飞书文档](https://scneju2wtbd7.feishu.cn/docx/SNW8dLae7ozvBVxY7CDc2pLSnEe) | 已发布,10 节 | +| 3 | ADR-0001 ~ 0007 | `docs/adr/` | 已提交,7 份均为「已接受」 | +| 4 | 术语与边界一页纸 | `docs/glossary.md` | 已提交 | +| 5 | 资产盘点表 | [Base · A0.8 资产盘点](https://scneju2wtbd7.feishu.cn/base/UTkYbMacdaz6O1sxzsEcd3BTnne) | 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](../adr/0001-tech-stack-and-repo.md) | 原地重写 + 孤儿分支,提交历史从零开始 | 已接受 | +| [0002](../adr/0002-engine-provider-deployment.md) | 首版 Provider 进程内运行,Core 按 execution 注入短期凭据 | 已接受 | +| [0003](../adr/0003-data-scope-and-authority.md) | 个人会话只读,写操作必须在项目会话内;权威数据源分工 | 已接受 | +| [0004](../adr/0004-desktop-and-local-capabilities.md) | 桌面端 Electron + 本地能力边界 | 已接受 | +| [0005](../adr/0005-cutover-strategy.md) | 直接切换,不并行、不迁移、不保留旧库 | 已接受 | +| [0006](../adr/0006-engine-as-subprocess.md) | 两个引擎都以长驻子进程运行 | 已接受 | +| [0007](../adr/0007-storage-and-consistency.md) | 单机 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 评审后动作 + +1. 有异议的 ADR:新写一份取代,旧文标「已取代」,不改原文 +2. 结论写入任务总表的 A0-G 记录,并回填各 ADR 的「相关」栏 +3. A0.10:设计文档、ADR、术语表随分支首个提交入库,同时补《实施设计》1.4 +4. A1 启动:A1.1 脚手架(该工作包依赖 ADR-0001 与 ADR-0007) \ No newline at end of file