2026-08-11 00:54:05 +08:00
|
|
|
|
# Plan 完成度与验收矩阵
|
|
|
|
|
|
|
2026-08-26 00:25:46 +08:00
|
|
|
|
> 基线日期:2026-08-20(Round 84 经父进程验证的 CP 时间直接物化;Round 83 C3、Round 82 C7 与更早证据继续保留)
|
2026-08-11 00:54:05 +08:00
|
|
|
|
> 范围:根目录 `plan.md` 的 M-POC、M0-M6 与跨阶段治理要求。
|
|
|
|
|
|
> 判定顺序:当前可运行代码与黄金测试 > `docs/` 落地文档 > `plan.md` 目标态描述。
|
|
|
|
|
|
> 状态只使用 `Done`、`Partial`、`Missing`;Mock、代理实现和“首切片”不得标为 `Done`。
|
|
|
|
|
|
|
|
|
|
|
|
## 1. 当前验证基线
|
|
|
|
|
|
|
2026-08-26 00:25:46 +08:00
|
|
|
|
- GitNexus 当前索引:13,991 个节点、63,793 条关系、620 个 communities、300 条执行流(2026-08-20 Round 84 重建)。
|
2026-08-11 00:54:05 +08:00
|
|
|
|
- 黄金测试命令:`.\.venv\Scripts\python.exe -X utf8 -m pytest tests/golden -q`。
|
2026-08-26 00:25:46 +08:00
|
|
|
|
- Round 84 最终全量黄金为 **1540 passed / 5 warnings**;直接物化既有聚焦 **142 passed / 1 warning**,CP/RHS 收口 **81 passed / 1 warning**,CP/子进程/C3/C7 扩展 **171 passed / 1 warning**。Round 83 C3、Round 82 C7 与更早证据继续保留。
|
|
|
|
|
|
- Node **60 passed**;Web build 通过(4853 modules);隔离图纸 Playwright **3 passed** 证据继续保留;`py_compile` 与 `git diff --check` 通过。GitNexus `compare main` 为 **82 files / 727 changed symbols / 109 affected processes / CRITICAL**,不把共享累积脏工作区风险降级。
|
|
|
|
|
|
- 实时服务:8003、5173 与 5173 `/api/health` 均 HTTP 200,5173 显式代理 8003。Round 84 隔离 18184/15184 浏览器真实执行 CP/HYBRID 两版,各 7 PO / 30 WO / 30 slots,页面可见且 console warning/error=0;结构化结果为 C3 精确对齐 30/30、C7 passed、无 CALENDAR/CAPACITY/ENGINE_UNAVAILABLE。
|
|
|
|
|
|
- 求解器隔离真实运行:protocol v2 的普通 CP/HYBRID、整约束诊断和 RHS 诊断 operation 分离;Round 84 可行解由父进程重验后直接物化,`placement=cp-calendar-segmented-direct`、`directlyConsumedByMaterializer=true`、`operationTimingValidation.passed=true`;runtimeSafe=true,fatal/timeout/digest/operation/invocation/扰动篡改继续失败关闭。
|
|
|
|
|
|
- 冻结 Sidecar 已用 CPython 3.13.12/58 个哈希锁包重建;首次真实构建暴露 SciPy Sobol direction npz 漏打包并拒绝作为通过证据,spec 精确收集后第二次冻结 `--probe-child` 输出 `scipy=1.18.0`、无缺文件异常,冻结健康冒烟通过。
|
2026-08-11 00:54:05 +08:00
|
|
|
|
- MOM 复制数据 CP/HYBRID 求解为 `OPTIMAL`,但现有主数据阻断导致 0 PO/WO、1 slot/1 conflict;这不是现场工厂主数据完成证明。
|
|
|
|
|
|
- 审批迁移真实运行:文件后端 P3 grant -> 单事务 DB 迁移 -> request=APPROVED、token 仅存 digest、consume=true/false;损坏 JSON 明确失败且 DB 不变。
|
2026-08-26 00:25:46 +08:00
|
|
|
|
- 数据保护:最终全量前后 `sap_mirror.json=923A05...E1EB1`、`approvals.json=95184E...ECB4D`、`world.json=36E479...EB6E06`、`world-proj_712276ba.json=6B64AD...53F7D` 均不变。`master.db` 可因 license `last_seen` 等运行元数据变化,不以文件 hash 声称数据库完全不变。
|
2026-08-11 00:54:05 +08:00
|
|
|
|
- 矩阵保持 **50 Done / 10 Partial / 0 Missing**。10 个 Partial 的最终验收仍依赖真实外部系统、设备、凭据或构建环境;最终外部步骤见 [external-acceptance.md](./external-acceptance.md),不得因本地首切片、源码冒烟或 Mock 证据虚假标记 `Done`。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 1.1 Round 69 新增验收资产(不改变外部系统 Partial 判定)
|
|
|
|
|
|
|
|
|
|
|
|
- `server/shipyard_synthetic/` 和 `beihai-shipyard-aps-data/` 提供确定性船厂 APS 全链路模拟数据:合同/WBS/BOM/MRP/MAKE-BUY-OUTSOURCE/有限资源/质量返工/场景/Skill/RAG。
|
|
|
|
|
|
- Full 精确规模、51 CSV、world 投影、manifest/哈希和独立校验均通过;`validation-report` 为 PASS/FEASIBLE/0 hard violations。
|
|
|
|
|
|
- 26 类硬约束具有非零样本和 26 个非法变异测试;140 条委外和 50 条返工均完成跨表时间/产能闭环;7 方案和 15 场景为真实 schedule delta。
|
|
|
|
|
|
- WorldStore 隔离加载后 `flex_overview`、`flex_gantt_view`、`list_mrp`、`infer_material_sourcing` 可消费,且 `server/data` 未污染。
|
|
|
|
|
|
- 该资产增强本地开发/回归能力,但不替代真实 MES/WMS/ERP/PLM/QMS、信创打包、生产数据库和现场验收,因此矩阵原有外部依赖 Partial 不翻转为 Done。
|
|
|
|
|
|
|
|
|
|
|
|
## 2. M-POC:左说右动验证
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
|
|
|
|
|
| 中文指令经确定性解析器转为结构化视口命令,不依赖 LLM | Done | `poc/workbench.html`:`parseNL`、`applyCommand` | 固定验收口令集回放结果稳定;离线打开可用 | 产品定义验收口令;开发维护解析与命令协议 |
|
|
|
|
|
|
| 甘特、负荷热力、交期承诺三视图可由同一命令通道切换 | Done | `poc/workbench.html`:`viewport.mode`、`renderGantt`、`renderLoad`、`renderDue` | 每种口令和手动页签产生同构命令与一致视图 | 产品验收交互一致性;前端负责渲染 |
|
|
|
|
|
|
| 过滤、聚焦、高亮、时间粒度和重置命令可联动右侧视口 | Done | `poc/workbench.html`:`viewport.filter/focus/highlight/timescale/reset` | 命令顺序组合可回放,重置后无残留视口状态 | 前端负责状态机;测试负责组合回放 |
|
|
|
|
|
|
| 甘特拖拽与自然语言口令使用同构命令 | Done | `poc/workbench.html` 拖拽处理与结构化 command | 拖拽吸附、冲突提示和命令载荷形成固定验收样例 | 产品定义调程语义;前端实现;算法校验可行性 |
|
|
|
|
|
|
|
|
|
|
|
|
## 3. M0:工程地基
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
|
|
|
|
|
| Monorepo 骨架覆盖 Web、桌面、Python Gateway、Agent Core、领域、状态、共享契约和黄金测试 | Done | `apps/web/`、`apps/desktop/`、`server/`、`shared/`、`tests/golden/`、根 `package.json` | 新模块继续遵守分层边界,不从 UI 直接写世界状态 | 架构/开发负责 |
|
|
|
|
|
|
| UIBlock、ViewportCommand、Intent、排产问题/结果具备跨层类型契约 | Done | `shared/schemas/*.schema.json`、`server/contracts.py`、`apps/web/src/api/types.ts`、`server/aps_domain/scheduling_dto.py`、`server/agent_core/plan_runtime.py`;`test_contract_sync.py` 校验全部 7 个 schema 的字段/必填/枚举三方一致(含 scheduling_problem/scheduling_solution/plan_node),并有 schema 清单门禁与不兼容消费者漂移测试 | 无(本轮验收完成) | 开发负责契约生成与校验;测试负责漂移门禁 |
|
|
|
|
|
|
| 契约版本握手与不兼容显式失败 | Done | 公共 `/api/health` 返回 `interfaceVersion`;`InterfaceGate.tsx` 在认证和业务界面前严格比对本地版本,不兼容/不可用时阻断并显示可重试错误;契约与认证定向 `11 passed` | 保持不兼容版本回归测试;未来多版本窗口必须显式定义兼容策略 | 开发负责 |
|
|
|
|
|
|
| KIMI/DeepSeek/OpenAI 兼容模型可配置切换,失败可降级 | Done | `server/agent_core/providers.py`、`.env.example`、`tests/golden/test_gov_api.py` | 用受控端点做一次 KIMI、DeepSeek 契约测试;密钥不得出现在设置响应和日志 | 开发负责 Provider;测试负责契约与安全 |
|
|
|
|
|
|
| Gateway SSE 会话流打通 | Done | `server/gateway/app.py` 的 `/api/chat`、`StreamingResponse`;`apps/web/src/chat/ChatPanel.tsx` | 断线重连、取消、超时、事件顺序和大响应背压有集成测试 | 开发负责;测试负责网络故障注入 |
|
|
|
|
|
|
|
|
|
|
|
|
## 4. M1:核心排产闭环
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
2026-09-14 15:40:10 +08:00
|
|
|
|
| 自然语言统一交给 Pi Agent(无规则快路 / 关键词意图层) | Done | `server/agent_core/fallback_lane.py`、`server/integrations/pi_bridge.py`;`test_pi_primary_chat.py`、`test_fallback_lane.py` | Pi 只能调用封闭 `IntentName` 工具目录;P2 确认卡与 P3 白名单门禁不变;契约外工具名不产生写动作 | 开发负责 Pi 接线与工具目录;产品维护口令验收集 |
|
2026-08-11 00:54:05 +08:00
|
|
|
|
| Rule 引擎生成 DRAFT 版本、PO/WO、冲突与 KPI | Done | `server/engines/rule_engine.py`、`server/aps_domain/workflow.py`;`test_rule_engine.py` | 黄金算例固定工序顺序、资源独占、日历和交期结果 | 算法负责求解;开发负责装配与持久化 |
|
|
|
|
|
|
| 左说右动正式 UI:聊天驱动甘特/负荷/交期视图 | Done | `apps/web/src/chat/ChatPanel.tsx`、`viewport/ViewportPanel.tsx`、`server/contracts.py` | 浏览器端主旅程通过,命令和按钮行为一致 | 产品定义旅程;前端实现;测试做 E2E |
|
|
|
|
|
|
| P2 发布必须先出确认卡,批准后写入并刷新世界 | Done | `server/agent_core/harness.py`、`server/gateway/app.py`、`workflow.py`;`test_gov_api.py`、`test_constraints.py` | P2 无法绕过唯一确认入口;确认令牌一次性且绑定租户/项目/用户 | 开发负责门禁;审计/测试负责绕过测试 |
|
|
|
|
|
|
| 证据链 v1:排产结果包含 run-id,RAG/报告可携带来源 | Done | `server/contracts.py` 的 `evidenceRefs`;`harness.stage_confirmation` 冻结 `evidenceRefs`/`beforeSnapshot`/`beforeFingerprint`;`execute_confirmed` 统一证据强校验(版本证据绑定、前置快照存在、版本可解析,fail closed);全部 P2/P3 写审计携带 `beforeSnapshot`+`evidenceRefs`;`mes.dispatch` 强绑定保持不变;`tests/golden/test_evidence_contract.py` 9 项覆盖漂移/缺证据/版本替换/审计字段 | 无(本轮验收完成) | 开发负责证据基础设施;算法负责 run 元数据;产品定义可解释口径 |
|
|
|
|
|
|
| 设计系统 v1 与紧凑工作台交互 | Done | `apps/web/src/styles.css`、Ant Design 组件、`docs/product/features.md` | 桌面/常用浏览器关键视口无重叠;主要流程键盘和错误态可用 | 产品/设计验收;前端负责 |
|
|
|
|
|
|
|
|
|
|
|
|
## 5. M2:探索与治理
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
|
|
|
|
|
| 项目和会话服务端持久化、成员权限与租户隔离 | Done | `server/state/projects.py`、`server/db/models.py`、`apps/web/src/projects/`;`test_workspace.py`、`test_auth_tenant_isolation.py`、`test_chat_ensure_session.py` | 并发成员操作、角色变更和跨设备恢复通过 E2E;数据库迁移可回滚 | 开发负责状态/auth;测试负责隔离与并发 |
|
|
|
|
|
|
| 项目 -> 会话 -> 分支三级树及分支生命周期 | Done | `server/state/branches.py` BranchStore + `/api/sessions/{id}/branches` 端点 + 前端 `BranchPanel.tsx` 分支树 UI(fork/rename/switch/discard/merge 操作、活动分支高亮、禁用规则与后端一致)+ `client.ts` 分支 API client;`test_branch_tree.py` 3 项;**分支合并世界差异 diff**:`compute_world_diff` 基于两分支锚定 checkpoint 世界侧计算稳定 JSON 差异(版本/KPI/工序时间/柔性版本/产能池+changed,深拷贝不改世界),merge 响应附 `diff` 并随 `branch.merge` 审计落库,前端合并前预览(接口不可用降级原确认);`test_branch_merge_diff.py` 4 项 | 无(本轮验收完成) | 开发负责状态模型/API/UI;产品定义生命周期 |
|
|
|
|
|
|
| 对话状态与世界状态真正成对快照、成对切换和成对回滚 | Done | `server/state/checkpoints.py` 成对快照(conversationSide)+ 分支切换成对恢复 + 回滚;**PlanStore 可恢复接口**:`plans_snapshot(branch_id, checkpoint_id)` / `restore_for_branch`(plan 视图随 checkpoint 归档物化,切换自动回退/恢复,latest/node_at/versions/create/regenerate/transition_status 视图感知,无锚定完全兼容);gateway switch 响应附 planView + 审计;`test_plan_branch_restore.py` 5 项 + `test_branch_checkpoint_link.py` 3 项 + `test_m2_state.py` 6 项 | 无(本轮验收完成;plan 视图为 store 级单例,多会话并行切换以最后一次为准——文档化简化) | 开发负责原子状态与事务;测试负责破坏/恢复验证 |
|
|
|
|
|
|
| P2/P3 前自动 Checkpoint,手动建档和回滚 | Done | `server/state/checkpoints.py`、`server/agent_core/harness.py`、`TimelineRail.tsx`;`test_checkpoint_roundtrip`、`test_checkpoint_capacity_eviction` | 外部事件重排前和所有写动作前均强制建档;回滚本身可撤销 | 开发负责;审计/测试核对覆盖面 |
|
|
|
|
|
|
| 时间线宏观/中观/微观导航、分支 diff 与回放 | Done | `TimelineRail.tsx` 版本/Checkpoint + 分支树(BranchPanel)+ 微观层分组;`AlgoReplayPanel.tsx` ALGO_RUN 动作链逐步回放(复位/上一步/播放/下一步/末步);`WorldDiffView.tsx` 两个世界并排对比(基准 A × 对比 B:当前世界/版本快照/检查点/回放定位)逐字段 diff 高亮;**检查点世界侧投影接口**:`checkpoints.world_projection(pair_id)` + `GET /api/checkpoints/{pairId}`(单查 200/404 中文)与 `GET /api/checkpoints?pairIds=&branchIds=&sessionId=`(分支锚定批量,缺失上报),固定轨工单/柔性工单/产能池投影;前端 `fetchCheckpointWorld` 优先投影做逐字段全量 diff,失败自动回退元数据+近似快照降级并保留提示(缓存+不重试);`test_checkpoint_projection.py` 5 项 + 回放面板/世界徽标;`npm run build` 无类型错误 | 无(本轮验收完成) | 产品定义信息层级;前端负责;开发提供审计投影 |
|
|
|
|
|
|
| Explore 与 Runtime 数据边界 | Done | `explore_boundary.py` 统一通道(`readonly_view` fail closed + `run_explore` 深拷贝沙盒,5+3 项测试);前端 `WorldModeBadge.tsx` 世界种类徽标(Runtime 主世界/沙盒试排/只读分析 + 只读角标)、ViewportPanel 工具栏徽标 + 画布按世界种类着色(world-explore/runtime/analysis)、时间线根节点徽标、FlexPanel「沙盒试排」徽标;Explore(flex/pool/compare/diff/plan)与 Runtime(gantt/load/util/due)一眼可辨 | 无(本轮验收完成;真实影子价需 LP 对偶重解) | 开发负责通道/权限;测试负责越权与污染测试 |
|
|
|
|
|
|
| 多策略方案卡组、采用后进入受控流程 | Done | `scenario.py` 输出唯一 `recommendationId`;`ChatPanel.tsx` 不再自行重排并禁用 `HARD_REJECTED`;`test_scenario_selection.py` 覆盖无推荐与前端门禁 | 方案输入、引擎版本、KPI 和证据持续可复现;采用动作有审计 | 算法负责方案生成;开发负责卡片与采用流程 |
|
|
|
|
|
|
|
|
|
|
|
|
## 6. M3:知识、上下文与偏好
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
|
|
|
|
|
| RAG 资产、导入、混合检索和来源/版本返回 | Done | `server/knowledge/assets.py`、`ingest.py`、`retrieval.py`、`embedding.py`;`test_knowledge_ingest.py`、`test_embedding_fallback.py`、`test_m3_knowledge.py` | 审批状态、版本替换、租户隔离和未命中不编造持续通过 | 开发负责知识平台;产品维护回答验收集 |
|
|
|
|
|
|
| `@会话`、`@方案`、`@版本`、`@报告` 结构化引用并按时点取值 | Done | `server/agent_core/session_ref.py`:parse_refs 解析 4 类引用 + 第 5 类 `@知识`(强制命中:命中→资产正文+出处 assetId/title/kind/version+证据 ref,未命中→显式 RefResolutionError 中文「知识库未命中…(未编造)」,未接线→显式 not-wired 报错);`resolve_ref`/`resolve_all` 新增 keyword-only `knowledge_lookup`(既有 4 类调用零破坏);workflow `handle_intent` 入口自动解析注入本轮上下文(`_refs`)+ SESSION 审计 evidenceRefs,失败 fail-closed 中文明文回复;`test_ref_knowledge.py` 9 项 + `test_session_ref.py` 6 项 | 无(本轮验收完成) | 开发负责模型/解析;产品定义引用 UX |
|
|
|
|
|
|
| 固定/项目/会话/检索四层上下文、滚动摘要、钉住与预算 | Done | `server/agent_core/context_policy.py`:ContextBudget 四层限额 + 确定性 token 估算(超限 fail closed 可预测拒绝)、assemble_context 四层组装、pin_message 钉住、scroll_summary 带 sourceMessageIds/supersedes 链可溯源 + 可选 `summarizer`(落 compressedBy 溯源);**`summarizer.py` LLM 压缩生成方**(`compress_scroll_summary` 固定中文提示词 + ModelProvider.chat_text,provider 不可用/异常/超预算 → 确定性回退,绝不编造)+ gateway chat 每轮预算门控钩子(autoSummarize 配置开关,长会话开启,try/except 兜底不阻断对话);越权上下文 fail closed 测试补齐;`test_scroll_summary_llm.py` 14 项 + `test_context_policy.py` 9 项 | 无(本轮验收完成;summaries 历史上限裁剪留待后续) | 开发负责;测试做长会话与越权上下文测试 |
|
|
|
|
|
|
| 交期承诺看板与乐观/预计/悲观模拟 | Done | `apps/web/src/viewport/DueView.tsx`、`server/aps_domain/flex.py`;`test_kangni_flex.py` | 区间口径与产能/物料输入一致,关键缺口可追溯 | 算法负责区间计算;产品验收业务口径 |
|
|
|
|
|
|
| 偏好学习影响默认策略 | Done | `server/knowledge/preferences.py`:按用户/项目隔离、explain(cold/medium/high 置信)、reset、冷启动回退、**时间衰减加权评分**(采用2/试排1 × 2^(-age/半衰期14天));**多特征规则归纳**:`extract_features(world)`(订单数/VIP占比/急单占比/品种数/硬冲突数)、分箱条件规则 `induced_rules`(采用2/试排1 条件得分+支持度)、`preferred_strategy_with_features`(规则投票命中→回退全局)、`explain_features` 中文规则依据;workflow/gateway 调用点已传 world_key + features;`test_preference_features.py` 6 项 + 既有偏好测试 | 无(本轮验收完成) | 算法负责偏好模型;开发负责隔离/存储/UI |
|
|
|
|
|
|
| 日报、版本对比和方案报告基于冻结快照并可导出 | Done | `server/aps_domain/reports.py`、报告 API/UI;`test_m3_knowledge.py`、`test_master_query_kb.py` | 增加模板管理、交期承诺函 P2、Word/PDF 输出和审阅状态 | 产品定义模板;开发负责导出;审计校验快照口径 |
|
|
|
|
|
|
|
|
|
|
|
|
## 7. M4:外部集成与自动化
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
|
|
|
|
|
| 真实 MES MCP 下发、状态和报工回流 | Partial | `mes_stub`/`mes.py`(P3 门禁+幂等+回执+补偿)+ **HTTP MES 适配器**(round-45:config-driven HttpMesClient,鉴权/幂等/超时/重试/回流/撤单/fail-closed,stub 测试)+ **对接就绪检查(round-46)**:`readiness(probe)`(configured/baseUrl/tokenPresent/connectivity/lastError/message 稳定字段,未配置 fail-closed 提示不 500,可选轻量连通探测短超时绝不抛错)+ `GET/POST /api/integrations/mes/readiness[/probe]`;`test_mes_readiness.py` 8 项 + `test_mes_http.py` 9 项 | 真实 MES 工厂对接(填 base_url+token,现场联调端点路径/报文;健康端点路径不同需调 _probe_health) | 开发/集成负责适配器;测试负责故障注入;产品验收闭环 |
|
|
|
|
|
|
| 真实 WMS 缺料/库存事件接入 | Done | `server/integrations/wms_stub.py` MockWmsClient(库存台账+缺料事件流+幂等 idem_key+单调 inventoryVersion)+ `server/aps_domain/wms_events.py` 事件消费管线(eventId 全局一次消费、乱序 seq 缓冲排空、重复写 `wms.event.duplicate` 证据、库存版本随事件更新并入证据链 `inventory-version:N`、flexMaterials 库存同步 + WMS-EVENT 冲突);`POST /api/wms/events`(幂等上报)/ `GET /api/wms/replay`(可重放)/ `GET /api/wms/inventory`(P0 只读);`test_wms_events.py` 3 项 + `test_wms_replay.py` 3 项 | 无(本轮验收完成,Mock 形态;真实 WMS 适配器接入留待集成环境) | 开发/集成负责;算法消费标准事件,不直接连 WMS |
|
|
|
|
|
|
| MCP 插件管理与权限面板 | Partial | `mcp_bus.py` 总线(manifest/工具契约/power 门禁/健康/启停/版本兼容)+ 前端 SkillConsole「MCP 插件」页签 + **mes.http 真实适配器注册(round-45)**:mes.http_dispatch(P3)/status(P0)/report(P2)/cancel(P2),默认 deny 需显式放行;`test_mcp_bus.py` 9 项 | 真实 MES/WMS 现场对接(配置+权限放行即可;端点路径/报文现场对齐) | 开发负责插件总线/UI;安全测试负责越权 |
|
|
|
|
|
|
| 房间内事件/定时/阈值自动化与 G0-G4 档位 | Done | `server/agent_core/automation.py`:Gear 状态机 + AutomationGate 升权门禁 + RuleExecutor(事件/定时 cron/阈值)+ **业务动作注册表**(BusinessActionBinding:commit→schedule.publish 发布、reschedule→flex.reschedule 重排,含意图槽位与门禁路径)+ **调度器持久化**(snapshot/restore/save/load,宽容加载,重启恢复)+ **网关定时驱动**(`POST /api/automation/tick` 手动 + lifespan 后台自动 tick,APS_AUTOMATION_DRIVER/TICK_SECONDS 可配)+ G4 受控自动经业务桥走真实动作(未登记 P2/P3 动作即使 G4 也按 P3 fail-closed 拦截,G2/G3 出确认卡);`run_automation_intent`(workflow,auto=True 出卡后经 execute_confirmed 执行,真实写入始终过 harness);`test_automation_gateway.py` 6 项 + `test_automation_gears.py` 8 项 | 无(本轮验收完成;规则 CRUD UI 与规则管理端点留待后续) | 产品定义档位语义;开发实现调度与治理 |
|
|
|
|
|
|
| 缺料触发重排端到端闭环 | Done | `wms_events.py` 全链:WMS 缺料(event.consume)→ 影响半径(深拷贝沙盒+PoolEngine 差分只读)→ Explore 方案卡(复用 `flex.reschedule` P2 动作,wmsTriggered 护栏防重复触发)→ 人工确认(execute_confirmed L4 重排 DRAFT)→ MES 下发(P3 双人 SOD 门禁 mes.dispatch)→ 回执(wmsReceipts 镜像 + 审计 `wms.mes.receipt` 带全链证据引用);`test_wms_events.py` 闭环用例(含驳回不重排) | 无(本轮验收完成,Mock 全链) | 开发负责事件编排和门禁;算法负责影响半径 |
|
|
|
|
|
|
| 跨内部世界状态与外部系统的 Saga/补偿 | Done | `server/aps_domain/saga.py` SagaCoordinator:状态机(PENDING/RUNNING/WAITING_HUMAN/SUCCEEDED/FAILED/COMPENSATING/COMPENSATED/MANUAL_TAKEOVER)+ SagaStep(name/action/idem_key/timeout_sec/max_retries/compensation_action/gate)+ 恢复队列(world["sagas"] 持久化、宽容加载、resume_all 重放)+ 补偿注册表(失败逆序补偿链,补偿失败→MANUAL_TAKEOVER)+ 超时/重试 + 审计(saga.step.* 含 idemKey/status/compensation)+ 写前快照回滚锚点;WMS 缺料闭环接入 `build_wms_shortage_saga`/`run_shortage_saga`(事件级 dedupe);`GET /api/saga`(中间态列表)/详情/retry/compensate/takeover;`test_saga.py` 13 项 + `test_saga_wms_closure.py` 6 项 | 无(本轮验收完成;P3 双人确认自动代行需生产接真实操作员授权,auto_approve=False 停 WAITING_HUMAN) | 开发/集成负责;产品定义业务补偿边界 |
|
|
|
|
|
|
|
|
|
|
|
|
## 8. M5:算法与求解升级
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
2026-08-26 00:25:46 +08:00
|
|
|
|
| 真 CP-SAT 与 Hybrid 求解 | Done | `cp_engine.py` 工序级模型(C1 工艺串联/C2 NoOverlap/C10 换型/C11 冻结窗)+ **Cumulative 班组/工装聚合容量**(C12:跨工位并行工序占用 ≤ 班组/工装可用容量,teamId/toolingId 主数据接线,personnel+世界剖面双闸开关,solverMeta.cumulative 含 enabled/capacity/resources[peakConcurrent]/unwired 诚实报告);**gap/时限/性能基线**(objective/bestBound/gap 元数据含 None 语义、timeLimitSeconds 确定性超时 FEASIBLE 契约、n=12 固定算例 <30s 壁钟基线);Round 84 由父进程严格验证 `operationSlots` 后将 CP 时间/segments 直接绑定到 WO,RuleEngine 仅承担业务对象持久化;`test_cp_cumulative.py`、`test_cp_operation_level.py`、`test_cp_c3_calendar.py` | 无(本轮验收完成;FEASIBLE 目标随多 worker 壁钟略有波动,位级可复现需 num_search_workers=1+seed) | 算法负责模型;开发仅负责引擎装配 |
|
2026-08-11 00:54:05 +08:00
|
|
|
|
| 真 GA/NSGA-II 多目标求解 | Done | `server/engines/nsga2_engine.py`(新):标准 NSGA-II——快速非支配排序(Deb 2002)+ 拥挤度距离(边界 inf+归一化边长)+ 锦标赛选择(rank 优先拥挤度次之)+ 精英保留;工序级染色体(sequence 沿工艺路线保序 + lines 产线,OX/PMX 交叉保可行性 + 工序交换/资源迁移变异);3 目标(加权总延迟/容量溢出冲突/负载均衡取负)输出 Pareto 解集;`nsga2_defaults` 参数模板 + `build_nsga2_manifest`(algolib manifest 对齐);`get_engine("NSGA2")` 集成 + `solve_nsga2` entrypoint;`nsga2_solutions_to_cards` 衔接 rank_scenarios;大算例基线(35 订单:50 代/40 种群 <15s,Pareto 互不支配且不劣于单目标 GA 基线);**时间预算确定性**(小预算跑满固定代数与 GA 口径一致,大预算墙钟兜底);algolib nsga2 条目翻转为可用;`test_nsga2_engine.py` 11 项 | 无(本轮验收完成;ScheduleResult.engineType 复用 GA 槽位以 solverMeta 标注 NSGA2,字面 Literal 扩展留待契约轮) | 算法负责;测试维护黄金算例 |
|
|
|
|
|
|
| 独立算法库注册表与 A-E 资产分类 | Done | `server/agent_core/algolib.py` AlgorithmRegistry:A-E 分类(启发式/精确/元启发/ML/集成)、AlgorithmManifest 元数据(输入输出 schema/版本/随机种子/测试/健康)、register/query/health/version/next_seed;**ML/元启发目录资产如实登记**(milp/nsga2/ml.* available=False + 健康检查如实报告未就绪);**LNS 随 round-36 交付翻转为真实可用**(entrypoint=server.aps_domain.lns:lns_local_repair + test_rush_lns.py 黄金测试);`test_algolib.py` 5 项 + `test_algolib_catalog.py` 4 项(A-E 齐全/ML元启发如实登记/query 过滤) | 无(本轮验收完成) | 算法定义元数据;开发实现注册/调用接口 |
|
|
|
|
|
|
| 参数优化闭环、评测、灰度生效和回滚 | Done | `server/agent_core/param_opt.py` ParameterOptimizer:split 隔离/回放/GRAY 灰度/退化自动 ROLLED_BACK/敏感性衔接 + **propose**(P1 触发)+ **record_observation 线上观测**(生产 KPI 对比生效前基线、连续劣化默认 2 次可配自动回滚 + 审计 param.experiment.auto_rolled_back、观测落盘 paramObservations)+ **P2 门禁接线**(promote 经 harness 确认卡:实验摘要/候选参数/回放 KPI,批准执行验证回放 finalize GRAY→FULL、拒绝留 GRAY;harness _POWER_MAP 登记 param.* 动作);`GET /api/params/experiments` + `POST /api/params/optimize|observations` + `POST /api/params/experiments/{id}/promote|rollback`;`test_param_opt_gateway.py` 9 项 + `test_param_opt.py` 13 项 | 无(本轮验收完成;观测入口为接口驱动,每次排产自动采样可后续一行接线) | 算法负责调优;开发负责版本和灰度;产品定义 KPI |
|
2026-08-26 00:25:46 +08:00
|
|
|
|
| What-if/Tornado/Monte Carlo/Sobol 与鲁棒性评分 | Done | `sensitivity.py` OAT/Tornado + 独立 Sobol/Jansen(2d scrambled、5 因子、8~64 基础样本、显式 seed/startDate/variance、一阶/总效应,零方差返回不可识别 null)+ `robustness.py` 可配置分布/相关性/置信区间蒙特卡洛;JobQueue tenant/project/actor/并发/取消门禁 + `/api/jobs*` 严格 422 + SkillConsole 异步任务 UI;SciPy 已同步 runtime/requirements/Sidecar lock 和冻结 probe;`test_sobol_sensitivity.py` 23 项 | 无(本轮本地验收完成;真实现场参数范围仍需业务校准) | 算法负责;开发负责异步任务与可视化 |
|
|
|
|
|
|
| 紧约束/影子价、IIS 与冲突归因 | Done | Round 74 IIS/API/UI;Round 75 CP-SAT sufficient assumption core(非最小 IIS);Round 79 GLOP;Round 80 整约束;Round 81 C8/C12 RHS;Round 82 C7 line/day;Round 83 `cp-calendar-segmented.v1`;Round 84 直接消费父进程验证后的 CP timing,C3 `cpTimingApplied=true` 且 C7 复核同源,`test_cp_c3_calendar.py` | 真实现场费率/罚则需业务确认;整约束与有限差分均不是 CP 对偶 | 算法负责;产品定义可理解的归因文案 |
|
2026-08-11 00:54:05 +08:00
|
|
|
|
| LNS 插单局部修复和影响半径 | Done | `server/aps_domain/lns.py`:`lns_local_repair`(P1 沙盒评估)/ `apply_lns_local`(P2 落主干,DRAFT+LNS_RUSH+LOCAL_REPAIR,窗口外订单冻结)/ `format_lns_text`+UI 块;固定窗口(默认交期±36h)内最小扰动(movedOrderCount/shiftedHours/tardinessDelta/disturbanceRatio 度量),受影响数/扰动率/窗口宽度超阈值 → ESCALATE 升级信号;`rush.evaluate` 附加 impact.lns、`rush.apply` 出卡携带 lns、`execute_confirmed` 路由 LOCAL→apply_lns_local / ESCALATE→apply_rush 全量重排(audit 记录 mode+escalateReasons);`test_rush_lns.py` 9 项 + test_rush.py 3 项兼容 | 跨产线邻域与强制选线修复需引擎 forcedLineId 支持;网关 rush.apply 透传 lns 参数(当前默认全量安全兜底) | 算法负责;开发负责事件编排和门禁 |
|
|
|
|
|
|
| 可重生算法流水线 | Done | `server/agent_core/rebuild_orchestrator.py`(新):可重生流水线执行器——候选构建(scan_modules 解析 moduleId + 源文件/依赖/黄金测试映射)、隔离运行(subprocess + 全部 APS_* 指向随机临时目录跑 pytest 子集)、安全扫描(S1 可重生声明阻断 + S2 动态执行/S3 硬编码路径/S4 未登记写路径告警)、灰度(GRAY shadow 并存 + gray_probe 扩展点)、失败自动回滚(黄金失败/灰度探针失败恢复基线 + autoRolledBack)、审计(rebuild.started/passed/failed/gray/rolled_back,链式哈希兼容);registry.py 候选版本登记 + 激活指针 + 基线恢复;`/api/rebuild/{module_id}` 触发/`GET /api/rebuild` 状态/promote/rollback;`test_rebuild_pipeline.py` 10 项 + `test_registry.py` 6 项 | 无(本轮验收完成;激活版本为注册表逻辑指针,物理源码替换需接发布机制) | 开发负责流水线;算法负责验收基准;测试拥有发布门禁 |
|
|
|
|
|
|
|
|
|
|
|
|
## 9. M6:双形态、私有化与完整治理
|
|
|
|
|
|
|
|
|
|
|
|
| 需求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
|
|
|
|
|
| Web 与桌面共用前端 | Done | `apps/web/`、`apps/desktop/`、根构建脚本 | 双端同一版本前端的关键旅程一致 | 开发负责 |
|
|
|
|
|
|
| Tauri 桌面壳 | Done | **架构决策(round-40):接受 Electron 为当前桌面壳**——`apps/desktop/`(Electron 43.2.0 + electron-builder 26.15.3 + NSIS + Sidecar 随包分发,打包冒烟通过);`plan.md` 目标态已同步修订(桌面端=Electron 已实现,Tauri 列为未来迁移备选不阻塞);文档漂移门禁 `test_doc_drift.py` 通过;`docs/architecture/desktop.md` 与实现一致 | 无(本轮决策收口;Tauri 迁移需另行立项评估) | 产品/架构决策;开发实施 |
|
2026-08-26 00:25:46 +08:00
|
|
|
|
| 自包含 Python Sidecar、守护、随机端口和离线运行 | Partial | 本地冒烟全覆盖:sidecar-local、Defender 静态扫描、真实 APS 求解与 NSIS 临时目录真装;Round 78 用 CPython 3.13.12 + require-hashes 58 包重建冻结 EXE,SciPy/qmc 确定性 probe 与健康 smoke 通过,Sobol direction npz 打包合同已覆盖 | 干净 Win10/11 离线机实机安装(%LOCALAPPDATA% 落点/快捷方式/冷启动/升级回滚)、perMachine 路径、Defender 实时防护真实拦截演练(需外部验证机/策略) | 开发/发布工程负责;测试拥有安装门禁 |
|
2026-08-11 00:54:05 +08:00
|
|
|
|
| 桌面许可证和设备隔离 | Done | `server/auth/licenses.py`、数据库迁移、`test_desktop_license_auth.py` | 密钥轮换、吊销、时钟回拨、防复制和离线续期策略通过安全测试 | 开发/安全负责;产品定义授权策略 |
|
|
|
|
|
|
| 语音、图片、文件多模态与低置信确认 | Partial | `multimodal.py` 管线框架(Extractor 协议/注册表/低置信 P2 确认门禁)+ stub 文本/文件提取器 + **ImageMetaExtractor(round-45)**:文件名/元数据级结构化候选(订单/物料/日期/附件类型,置信 ≤0.6 + requiresVlm,无线索不编造返回空、9 位数字守卫),走既有低置信确认门禁;真实 VLM 经 register(replace=True) 覆盖切换(测试断言 stub→VLM);`test_multimodal_image.py` 10 项 | 真实 ASR/VLM/OCR 模型服务接入(注册接口已就绪,需外部模型);attachments 批次确认后域表写入语义(真实 VLM 接入时接线) | 产品定义交互;开发负责管线;模型/算法负责质量评测 |
|
|
|
|
|
|
| 国产化/信创多架构交付 | Partial | **依赖矩阵与检测脚本(round-45)**:`docs/architecture/platform-matrix.md`(Python >=3.11、Windows/Linux × x86-64/ARM64、ortools/cryptography/uvicorn 等平台 wheel 覆盖标注、信创关键依赖说明)+ `scripts/platform-deps-check.py`(检测 python/平台/架构/requirements 全依赖可导入与版本下限,本地 16/16 PASS);无 GPU 依赖 | 麒麟/统信 × x86-64/ARM64 四组合实机安装、求解性能基线、离线依赖包、安全软件兼容性(需外部信创环境) | 发布工程主责;算法验证求解器兼容性 |
|
|
|
|
|
|
| CI/CD、构建矩阵、签名、SBOM、漏洞扫描和离线升级 | Partial | 可复现本地构建+打包冒烟;CI 6-job 矩阵;离线升级+失败自动回滚(upgrade-manifest + updater.cjs);health version + 审计上报端点(round-45)+ 升级 nonce 续接收口(round-46)+ applyUpdate 竞态根治(round-47)+ **pending 跨进程持久化(round-48)**:upgrade-nonce.cjs statePath 持久化 upgrade-state.json(setPending/markInstalled/settle/clear 原子写盘),应用重启后新协调器恢复未过期 pending 为 verifying 并随新 sidecar 补验,过期自动丢弃;main.cjs 接线;node 48/48 | 签名 Authenticode/SBOM 上链/provenance(外部证书);真实 GitHub CI 跑通;NSIS 真装到用户落点 | DevOps/开发负责;测试拥有门禁规则 |
|
|
|
|
|
|
| 全审计:独立存储、Merkle/WORM、保留脱敏、导出和异常检测 | Partial | 链+锚定+镜像+脱敏导出+告警+通知+Merkle+WORM 归档模拟+归档加密(AES-256-GCM 双层哈希);**审计查询与报表前端(round-46)**:GovConsole「审计统计」分区(AuditStatsView:分类计数/动作 Top8/近 7 天趋势/告警概览含 traceAlerts 断链明细,中文标签+空态提示,前端聚合 limit=300 零后端改动);`test_audit_worm.py` 7 项 + `test_audit_encryption.py` 12 项 | WORM 物理介质(光盘/WORM 盘)与 HSM/KMS 真实密钥管理/轮换(需外部介质/密钥设施);审计量达万级后引入 /api/gov/audit/stats 端点 | 安全/开发负责;产品定义审计查询与报表 |
|
|
|
|
|
|
|
|
|
|
|
|
## 10. 跨阶段治理要求
|
|
|
|
|
|
|
|
|
|
|
|
| 治理要求 | 状态 | 当前证据路径 / 测试 | 剩余验收标准 | 建议责任边界 |
|
|
|
|
|
|
| --- | --- | --- | --- | --- |
|
|
|
|
|
|
| L0-L3 Plan 是不可变、可版本化、可局部重生对象 | Done | `server/agent_core/plan_runtime.py`、`server/gateway/plan_api.py`、`plan_node.schema.json`;HTTP 来源派生 USER 拒伪造;node_at 时间线版本化;replay_verify 动作级重放校验;transition_status 合法流转+审计;plan_orchestration 自动编排;round-38 分支维度回退(restore_for_branch);`test_plan_runtime.py` + `test_plan_replay.py` 4 + `test_plan_transition.py` 4 + `test_plan_orchestration.py` 4 + `test_plan_branch_restore.py` 5 项 | 无(矩阵 110 行收口,状态补正为 Done) | 开发负责状态/编排;产品定义审批;算法提供 L1/L2 建议 |
|
|
|
|
|
|
| LLM 只有提议权 | Done | Provider 只返回文本/JSON;Harness 控制已登记动作;`tool_runtime.py` 统一工具运行时(gateway 聊天唯一执行入口)+ **异步入口 `run_tool_async` 接入其余直连端点**(scenario.apply 由直连 handle_intent 改为经工具运行时,未登记拒绝+TOOL 审计,响应契约保留;盘点确认其为唯一直连端点,chat _run_intent 已门禁);**前端工具调用可视化**:GovConsole「工具调用」视图(TOOL 审计条目:意图/等级/执行者/时间/结果 放行·确认卡·拒绝,中文标签);`test_tool_runtime_gateway.py` 5 项(含 source-level 无直连绕过盘点断言) | 无(本轮验收完成;chat _run_intent 收敛到 run_tool_async 属整洁性事项,建议下轮) | 开发/安全负责 |
|
2026-08-26 00:25:46 +08:00
|
|
|
|
| P3 外部副作用二次确认 | Partial | 文件后端原子持久化 + database request/grant/event 规范表、revision CAS、token 摘要、全局一次消费、失败关闭;P3 双人 SOD;迁移 grant digest/损坏源 fail-closed/稳定快照/原子事务已完成;Round 70 MySQL 权威 clock/TTL/expiry-CAS/DOUBLE epoch/Alembic 本地合同已完成;Round 68 SAP outbound P3 冻结 evidence envelope;Round 72 全 P2/P3 决策前重算 paramsHash/envelopeHash | 真实 MySQL 8 多节点时钟偏移、隔离级别并发、deadlock/断连/HA 故障注入,以及 WORM 物理介质仍需外部环境 | 产品定义确认 UX;开发负责门禁 |
|
2026-08-11 00:54:05 +08:00
|
|
|
|
| 硬约束不可被 LLM 或软权重关闭 | Done | `constraints.py` 13 类约束目录齐全(C1-C13:工艺先后序/工位独占/班次日历/维保窗口/选线/物料齐套/产能上限/交期/客户优先级/换型/冻结窗口/班组工装/SOP;新增 C9、C12 归位、goldenCase/kindConfigurable)+ `constraint_catalog()` 只读接口;四引擎(RULE/CP/HYBRID/GA)硬约束语义一致黄金测试(EQUIPMENT/CAPACITY/MATERIAL 三态一致,未发现不一致);**关闭请求被拒并审计**:`ConstraintProfileDenied` 门禁(enabled=False 落硬约束/硬→软降级/对硬约束设权重三类路径拒绝)+ write_audit DENIED(action=constraint.profile.save,LLM 提案同门禁);`test_constraint_catalog.py` 19 项 + `test_engine_constraint_semantics.py` 19 项 | 无(本轮验收完成;API/LLM 拒绝分支的 store.save 持久化建议补,属整洁性) | 算法负责语义;开发负责配置/门禁 |
|
|
|
|
|
|
| 结论、动作、报告可追溯和复算 | Done | `server/agent_core/evidence.py` 统一 EvidenceItem + trace_chain/verify_chain + **verify_audit_trace**(遍历 ALGO_RUN 审计链哈希逐条重算比对,产出 broken 列表 expected/actual/reason,旧记录无 traceItems 不误报);workflow `_build_run_trace`/`_build_external_trace` 落 traceItems(canonical 全量条目供精确重算);`/api/gov/audit` 扩展 traceAlerts/traceChecked/traceOk + `GET /api/gov/trace/verify`;GovConsole「可追溯链」列 ⚠断链徽标(期望 vs 实际哈希)+ 顶部提示条;**EXTERNAL 真实 HTTP skill 端到端验收**:test_trace_external_http.py(uvicorn stub + HTTP skill → flex.schedule.external 真实 POST → trace 可复算);`test_trace_break_visual.py` 6 项 + `test_trace_external_http.py` | 无(本轮验收完成) | 开发负责协议/存储;算法负责复算信息 |
|
|
|
|
|
|
| 未登记动作默认最高风险 | Done | `server/agent_core/harness.py` 的 `power_of` 默认 P3;`test_unregistered_action_defaults_to_p3` | 保持白名单测试;新增动作必须同步门禁文档 | 开发负责;测试/审计把关 |
|
|
|
|
|
|
| 审计 append-only 且可检测篡改 | Partial | 链式哈希+独立锚定根+镜像+跨进程锁+清理归档+**WORM 归档模拟与篡改检测**(round-42)+**归档加密模拟**(round-43:AES-256-GCM+scrypt 派生+双层哈希校验+密钥缺失/错误显式失败);`test_audit_encryption.py` 12 项 + `test_audit_worm.py` 7 项 + `test_audit_appendonly_guard.py` 4 项 + `test_audit_merkle.py` 6 项 | WORM 物理介质与归档密钥管理(HSM/KMS)需外部设施 | 安全/开发负责 |
|
|
|
|
|
|
| 跨层契约和文档同轮同步 | Done | `docs/README.md`、`docs/CHANGELOG.md` 有规则;`test_contract_sync.py` schema 清单门禁与不兼容消费者测试;`test_doc_drift.py` 文档技术选型漂移门禁;`scripts/generate_contract_types.py` 契约 TS 类型生成器 + `test_contract_generation.py` 5 项(确定性、必填/枚举/手写关键面与 schema 一致) | 无(本轮验收完成;pydantic 端自动生成与复杂嵌套类型完整支持留待扩展) | 开发维护;测试/审计拥有门禁 |
|
2026-08-26 00:25:46 +08:00
|
|
|
|
| 黄金测试是发布门禁 | Partial | Round 84 full golden **1540 passed / 5 warnings**、CP 扩展171、Node **60 passed**;Web build、compile/diff-check、8003/5173 与隔离浏览器 CP/HYBRID 真实链;4 个受保护业务文件哈希与既有基线一致 | 继续完成干净离线机、Defender for Endpoint、签名/provenance 和真实 GitHub CI | 测试主责;开发/算法修复各自失败 |
|
2026-08-11 00:54:05 +08:00
|
|
|
|
| 世界状态与真实外部系统提交具有明确补偿语义 | Done | `saga.py` 每个 P3 动作定义:幂等键(mes.dispatch step 用 `dispatch:{eventId}`)、超时(timeoutSec)、重试(maxRetries 指数退避简化)、补偿(`mes.cancel_dispatch` 外部工单撤销 + 回执 VOIDED + 世界回滚;重排 step 用 `flex.reschedule.rollback` 写前快照回滚)、人工接管(补偿失败→MANUAL_TAKEOVER + takeover 端点)、审计事件(saga.step.*);`mes_stub.cancel_work_order` + `mes.cancel_dispatch` 幂等;`test_saga_wms_closure.py` 6 项(全链成功/重排失败回滚/下发失败撤销/补偿失败人工接管/gate 暂停/入口幂等) | 无(本轮验收完成;P3 自动代行身份与真实操作员授权接线留待生产) | 产品定义业务补偿;开发/集成实现 |
|
|
|
|
|
|
|
|
|
|
|
|
## 11. 建议交付顺序
|
|
|
|
|
|
|
|
|
|
|
|
| 批次 | 用户价值 | 范围 | 批次验收出口 |
|
|
|
|
|
|
| --- | --- | --- | --- |
|
|
|
|
|
|
| P0 可信试点基线 | 计划员敢发布,企业敢留痕 | 全量 P2/P3 evidence 封套、审批迁移可靠性、审计前置快照;Windows 求解器 fatal 已本地隔离关闭但冻结产物待构建后验收 | P0/P1/P2/P3 权力路径自动化验收;证据全动作一致;审批迁移故障关闭;冻结 solver-child/契约三方一致 |
|
|
|
|
|
|
| P1 安全探索与长期会话 | 试排不污染、后悔可恢复、多人可协作 | 分支树、真正成对状态、时间线 diff/回放、会话引用、四层上下文 | 任意分支切换/回滚后对话和世界逐字段一致;跨租户隔离 |
|
|
|
|
|
|
| P2 真实现场闭环 | 从“能演示”升级为“能接厂” | WMS 事件、MES MCP、房间自动化、幂等重试、Saga | 缺料 -> 重排 -> 审批 -> 下发 -> 回执全链通过;断网可恢复且不重复下单 |
|
|
|
|
|
|
| P3 算法可信升级 | 提升可行率、交期和方案质量 | 工序级 CP、GA/NSGA-II、LNS、Pareto、调参、Monte Carlo、主控约束 | 每个引擎是真实现;固定基准集报告可行率/KPI/gap/性能/稳定性 |
|
|
|
|
|
|
| P4 私有化产品化 | 可在客户内网稳定安装、升级和审计 | 桌面技术路线决策、自包含 Sidecar、信创、CI/CD、签名/SBOM、多模态、WORM | 干净离线机器可运行;签名产物可追溯;升级失败回滚;合规审计可导出 |
|
|
|
|
|
|
|
2026-08-26 00:25:46 +08:00
|
|
|
|
最高优先级未完成项仍是 **P0 可信试点基线的外部验收**。P0 本地清单已闭合;Round 84 已让物化层直接消费经父进程验证的 CP 时间,Round 83 遗留的本地优先项完成。当前矩阵没有新的 Missing,本地可独立闭合项已收口;真实 MySQL 多主机、旧节点停写编排、厂商联调、现场费率/罚则、签名/Defender/干净离线机均需外部环境或授权。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 82 专项:C7 产线/日容量 CP 模型
|
|
|
|
|
|
|
|
|
|
|
|
- C7 assumption 以产线/自然日为实例,工序 setup+run、激活换型及既有已发布/冻结负荷按开工日整笔记账;容量来自 shiftCalendar 有效分钟,效率不重复折算。
|
|
|
|
|
|
- 日历缺失、跨午夜/重叠班次和非法休息段失败关闭;非工作日容量 0,不能用 RHS 增量替代日历变更。
|
|
|
|
|
|
- `C7_line_day_capacity_minutes` 显式绑定 `line-day:{id}:{date}`;实例增量/费率、strict 422、单线程 seed0、摘要/拓扑/RHS 差值和取消边界完整。
|
|
|
|
|
|
- CP/Hybrid 物化后 exact C7 复核;Rule 5% 展示阈值未覆盖的超载补 CAPACITY 冲突,模型 status 与物化偏差分开。
|
|
|
|
|
|
- 隔离 Web 实测 L001/#1 2026-08-19:869→929(+60),无费率未配置、实例费率 2 时 CNY120,console0。
|
|
|
|
|
|
- 验收:C7 专项26、联合206、Node60、Web build;full golden 1504 passed / 5 warnings;冻结 Sidecar C7 改善51000/runtimeSafe;GitNexus 76/621/104 CRITICAL;独立审计 findings 已关闭。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 83 专项:C3 班次日历分段 CP 模型
|
|
|
|
|
|
|
|
|
|
|
|
- `cp-calendar-segmented.v1` 以扣休息后的有效窗口表达加工时间;长工序只在窗口边界暂停/续作,C1 用逻辑工序包络,C2/C12 用 processing segments。
|
|
|
|
|
|
- C3 baseline 为 `calendar-boundary-only`,removal 为互斥 `continuous`;父进程严格绑定 calendar digest、anchor/horizon/coverage、bucket/window/segment 数和 model identity,50,000 segment 门禁失败关闭。
|
|
|
|
|
|
- `operationSlots` 输出完整 segment/processing/elapsed/pause/compliance 契约;UNKNOWN 后的固定可行 hint fallback 与主求解隔离并留痕。
|
|
|
|
|
|
- Rule 尚未直接消费 CP 时间;`materializedC3Validation.cpTimingApplied=false`,跨休息/停工窗口生成 C3 硬冲突并阻断发布/MES,但不覆盖 CP status。
|
|
|
|
|
|
- 验收:C3 专项11、扩展245、审计117、full golden1522/5warnings、Node60、Web build;冻结 Sidecar 和隔离 Web 均确认 runtimeSafe、模式和 topology,console0,受保护哈希不变,`AUDIT PASS`。
|
|
|
|
|
|
- 下一本地优先级为 CP 时间直接物化;真实现场费率/罚则和外部 P0/P4 验收边界不变。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 84 专项:经父进程验证的 CP 时间直接物化
|
|
|
|
|
|
|
|
|
|
|
|
- 可行 CP/HYBRID 结果经父进程重验稳定订单身份、路线双射、产线/工位/班组/工装、segments、前后序、资源容量、C3/C7 后,绑定 `_cpOperationTiming`;预检失败不创建版本、PO 或 WO。
|
|
|
|
|
|
- RuleEngine 不再重算可行 CP 工序时间,只把 plannedStart/End、`plannedSegments`、processing/elapsed/pause/count 和逻辑工序键原样持久化;`placement=cp-calendar-segmented-direct`,C3 `cpTimingApplied=true`。
|
|
|
|
|
|
- 父校验器识别诊断 C2/C12 合法松弛与 C12 RHS 有效容量,同时继续拒绝未授权重叠、容量伪造和日历窗口漂移。
|
|
|
|
|
|
- 隔离浏览器 CP/HYBRID 各 7 PO / 30 WO / 30 slots;C3 30/30 精确对齐、0 violation,C7 passed,无 CALENDAR/CAPACITY/ENGINE_UNAVAILABLE;页面和 console 通过。
|
|
|
|
|
|
- 验收:既有聚焦142、CP/RHS81、扩展171、full golden1540/5warnings、Node60、Web build、compile/diff-check;8003/5173/前端代理健康。主项目 V006 为 0 条目 `TRIVIAL`,不冒充正向求解证据。
|
|
|
|
|
|
- 剩余仅为真实 MySQL、厂商系统、现场费率/罚则和发布环境外部验收;矩阵保持 **50 Done / 10 Partial / 0 Missing**。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 81 专项:CP RHS 参数增量与现场成本口径
|
|
|
|
|
|
|
|
|
|
|
|
- protocol v2 新增 RHS baseline/perturbation operation,与生产排产和整约束移除 strict schema 隔离;随机 invocation、request/response digest、单个扰动和 RHS 参数状态绑定。
|
|
|
|
|
|
- C8 只增加延期目标 due RHS 分钟,不改变可行性;C12 只增加真实 `AddCumulative` 的具体班组/工装资源 capacity;C7 未进当前 CP 可行模型,不生成结果。
|
|
|
|
|
|
- OPTIMAL 输出精确有限差分,FEASIBLE 仅输出改善界限;拓扑/RHS 漂移、区间矛盾和单调性异常失败关闭。无费率时货币字段全 null,显式容量费率按本次计划期计,目标与成本不可直接相减。
|
|
|
|
|
|
- JobQueue/API/UI 已接;隔离 Web 真实完成无费率和有费率任务,C8 60 分钟费率 2 -> CNY 120,C12 无实例不重解且不估算成本。
|
|
|
|
|
|
- 验收:专项 43、扩展 180、Node60、Web build、冻结 RHS C8=18000;full golden 1478 passed / 5 warnings;GitNexus 累计 CRITICAL(73 files / 591 symbols / 90 flows)保持诚实。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 80 专项:CP 整约束 one-at-a-time 重解
|
|
|
|
|
|
|
|
|
|
|
|
- protocol v2 严格隔离生产/诊断 operation;诊断单元素约束、invocation、所有 solve 状态回显与实例集合绑定。
|
|
|
|
|
|
- OPTIMAL 给精确目标差,FEASIBLE 只给界限区间;C11 双门控、active 实例、单调性/partial/取消语义完整。
|
|
|
|
|
|
- JobQueue/API/UI 已接;冻结 EXE diagnostic C2 精确改善 28000;隔离 Web 显示 C1/C11/C2 改善和未激活项,console0。
|
|
|
|
|
|
- 验收:专项 36、扩展 144、Node60、Web build;full golden 1435 passed / 5 warnings;独立复审 `AUDIT PASS`。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 79 专项:诊断 LP 局部边际率与归因校准
|
|
|
|
|
|
|
|
|
|
|
|
- GLOP 诊断冲突松弛仅支持 C4/C7/C8 分钟 RHS;有限差分为主值,cap dual 只作数值证据,CP-SAT 边界和不可加性明确。
|
|
|
|
|
|
- conflictId 全局失败关闭;一致重复、物理 RHS 去重和不一致重复独立留痕;solver error/unsupported 分开。
|
|
|
|
|
|
- API 加法兼容;浏览器真实显示 rate=1、1分钟收益=1、coverage=1/1、proxy/非CP/不可加标签,console 0。
|
|
|
|
|
|
- 验收:专项 26、扩展 108、Node 60、Web build、冻结 `glop=GLOP`;full golden 1399 passed / 5 warnings;独立复审 `AUDIT PASS`。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 78 专项:Sobol 全局敏感性与冻结 Sidecar
|
|
|
|
|
|
|
|
|
|
|
|
- 2d scrambled Sobol + Jansen 一阶/总效应,5 因子、8/16/32/64 基础样本;日期确定性、逐评估取消、退化不可识别语义完整。
|
|
|
|
|
|
- `/api/jobs` 严格 422,JobQueue tenant/project/actor/并发门禁继续生效;Web 真实提交 8 样本完成 56 次评估,console 0。
|
|
|
|
|
|
- SciPy 同步三份依赖和 Sidecar lock;真实冻结构建发现并修复 direction npz 漏打包,第二次冻结 probe/health 通过。
|
|
|
|
|
|
- 验收:focused 61、相邻 62、Node 60、Web build;full golden 1381 passed / 2 warnings;受保护哈希不变;独立复审 `AUDIT PASS`。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 77 专项:异步分析任务安全基础设施
|
|
|
|
|
|
|
|
|
|
|
|
- tenant/project/认证 actor 绑定 submit/list/poll/cancel;默认并发 2、在途线程 8,饱和在创建线程前拒绝。
|
|
|
|
|
|
- pending 取消仍计入线程配额;取消成功不得被 done/failed 覆盖;thread.start 失败原子回滚记录和配额。
|
|
|
|
|
|
- 验收:专项 11 passed;相邻 20 passed;full golden 1358 passed / 2 warnings;受保护哈希不变;独立复审 `AUDIT PASS`。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 75 专项:CP-SAT 原生不可行核心 solverMeta
|
|
|
|
|
|
|
|
|
|
|
|
- C1/C2/C10/C11/C12 约束族通过 assumptions 保持全 true 时原模型语义;INFEASIBLE 才读取原生核心。
|
|
|
|
|
|
- solverMeta `nativeIis` 使用规范约束 ID,可直接衔接归因目录;C2 统一为 `C2_no_overlap`。
|
|
|
|
|
|
- 核心明确为 sufficient assumption core,不冒充最小 IIS。
|
|
|
|
|
|
- 验收:CP focused 24 passed;solver affected 79 passed;full golden 1302 passed / 2 warnings;受保护哈希不变;独立复审 `AUDIT PASS`。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 74 专项:归因 API 与冲突中心接线
|
|
|
|
|
|
|
|
|
|
|
|
- `GET /api/attribution` 严格绑定当前项目世界、fixed/flex 轨道和单一版本;无版本/错轨版本失败关闭。
|
|
|
|
|
|
- fixed/flex 产能证据分别读取 `conflicts`/`flexConflicts`,禁止跨轨归因污染。
|
|
|
|
|
|
- IIS 提供稳定 `iisId`,逐条 attribution 返回 evidence;前端展示主控约束、最小冲突集和证据详情。
|
|
|
|
|
|
- 项目/会话 scopeKey 变化自动重载,请求开始或失败即清旧报告;“近似影子价”显式保留,不冒充 LP 对偶值。
|
|
|
|
|
|
- 验收:focused 12 passed / 1 warning;Web build;full golden 1301 passed / 2 warnings;受保护哈希不变;独立复审 `AUDIT PASS`。
|
2026-08-11 00:54:05 +08:00
|
|
|
|
|
|
|
|
|
|
## Round 65 专项:闭环 APS 排产内核
|
|
|
|
|
|
|
|
|
|
|
|
| 能力 | 状态 | 直接证据 | 剩余边界 |
|
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
| 跨订单 BOM/库存/供应净算 | Done (local) | `closed_loop_problem.py`、`supply_netting.py`、`test_closed_loop_scheduling.py`、`test_closed_loop_provenance.py` | 真实供应承诺仍需 SAP/WMS |
|
|
|
|
|
|
| 制造需求准入与原子排产 | Done (local) | `closed_loop_runtime.py`、`test_flex_atomic_schedule.py`;MOM 新版本 0 VL/WO | 39 缺工艺、67 模板/缺能力待现场补齐 |
|
|
|
|
|
|
| `SchedulingProblemV2` + 多资源 Validator | Done (local) | `test_closed_loop_resource_adapter.py`:设备/班组/模具/组织层级/容量/寿命正负用例 | 外部 V1 Skill 必须补多资源分配,否则按设计拒绝 |
|
|
|
|
|
|
| P2/P3 完整证据绑定 | Done (local) | `test_mes_evidence_v2.py`、`test_flex_publish_mes_gate.py`;身份/维保/能力/班组/模具漂移失败关闭 | 真实 MES 仍需凭据/白名单 |
|
|
|
|
|
|
| WMS 重排精确新版本 | Done (local) | `test_saga_wms_closure.py`:确认拒绝且已有旧 DRAFT 时不发布 | 真实 WMS 事件源待接入 |
|
|
|
|
|
|
| 6 阶段持久状态与真实浏览器 E2E | Done (local) | `OrderPanel.tsx`、`closed-loop-scheduling.spec.ts`;MOM 刷新恢复 + 正向 P2/P3/MES | 现场操作仍受真实主数据和厂商系统约束 |
|
|
|
|
|
|
| 订单 GET 读语义与现场保护 | Done (local) | `sync_flex_orders_to_sales` 幂等、MRP 预览深拷贝、`test_orders_flex_pool.py`、`test_closed_loop_gateway.py` | 历史 world 漂移未擅自回退 |
|
|
|
|
|
|
|
|
|
|
|
|
验收:2026-08-03 全量黄金测试 979 passed、Node 60 passed、Web build passed、真实隔离 Playwright 2 passed。首轮审计 7 个阻断已修复,最终独立复审 `AUDIT: PASS`;本项不改变原有 P0 跨主机审批存储、真实厂商对接、签名/离线机等剩余优先级。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 66 专项:Windows 求解器进程隔离
|
|
|
|
|
|
|
|
|
|
|
|
| 能力 | 状态 | 直接证据 | 剩余边界 |
|
|
|
|
|
|
|---|---|---|---|
|
2026-08-26 00:25:46 +08:00
|
|
|
|
| 子进程协议与父进程校验 | Done (local) | `solver_process.py`、`solver_worker.py`、`test_solver_subprocess.py`;protocol v2 strict schema、生产/诊断 operation 隔离、invocation、relaxed/assumption/实例集合和 objective/bound/gap 校验 | 干净 Windows/真实 CI 仍需重复 |
|
2026-08-11 00:54:05 +08:00
|
|
|
|
| CP/HYBRID 失败关闭 | Done (local) | fatal/timeout 均 `UNAVAILABLE`、0 PO/WO、不可发布、父存活、业务原子、无 RULE 降级 | 外部监控/告警接线可继续扩展 |
|
|
|
|
|
|
| 健康正向求解 | Done (local) | 复制 `world.json`:CP/HYBRID `OPTIMAL`、1 PO/10 WO/10 slots、`runtimeSafe=true` | MOM 真实主数据仍阻断,不得外推 |
|
|
|
|
|
|
| 进程树回收 | Done (local) | timeout 15.633s,grandchild 随进程树回收 | 真实压力/长期 soak 待 CI/客户机 |
|
|
|
|
|
|
| 运行时来源门禁 | Done (local) | 默认 Anaconda 稳定拒绝;`.venv`/`.sidecar-venv` 各 5 次通过 | 发布 runtime 仍需冻结产物与签名 |
|
|
|
|
|
|
| 源码 Sidecar `--solver-child -I` | Done (source) | trusted source root bootstrap + `test_source_solver_child_entry_runs_under_isolated_python`;实际 CP 1/10/10 | 不等同于冻结 EXE 打包通过 |
|
|
|
|
|
|
| 冻结 Sidecar 新入口 | Partial | 现有 EXE 仅旧 `--probe-child` 通过 | 重建后验证新 `--solver-child`,并做干净机/Defender/签名验收 |
|
|
|
|
|
|
| Round 66 最终全量黄金 | Done (local) | focused 80;full golden 1029 passed / 2 warnings;首轮假绿复现现被 `SOLVER_RESPONSE_INVALID` 拒绝 | 冻结 EXE 重建与干净机仍属构建后验收 |
|
|
|
|
|
|
| 成功响应完整性与业务语义 | Done (local) | 临时文件 stdin 消除 Windows pipe 写入背压并恢复有界 timeout; 父进程重算 `responseDigest`;条目缺失/多余/重复/字段改写、错误 pipeline/status/slots 均拒绝 | 无;真实冻结制品仍需重建后复验同一协议 |
|
|
|
|
|
|
|
|
|
|
|
|
数据边界:`world.json` 与 MOM JSON 业务源 hash 验收前后不变,`server/data/**`/`.env` 无 Git 状态;`master.db` 的 license `last_seen` 等运行元数据允许变化,不能拿文件 hash 冒充业务不变。矩阵总计仍为 **50 Done / 10 Partial / 0 Missing**。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Round 67 专项:审批迁移 Fail-Closed
|
|
|
|
|
|
|
|
|
|
|
|
| 能力 | 状态 | 直接证据 | 剩余边界 |
|
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
| grant digest 归一化与 consume once | Done (local) | `approval_migrate.py`、`test_real_file_p3_grant_migrates_as_digest_and_consumes_once` | 真实 MySQL 多主机待验收 |
|
|
|
|
|
|
| corrupt/schema/record fail-closed | Done (local) | 10 类非法源 + corrupt JSON,数据库零写 | 外部切换编排需运维停写 |
|
|
|
|
|
|
| 单事务与稳定源快照 | Done (local) | QUIESCED + 同锁 + source digest;late event/flush/drift 故障整体回滚 | 跨主机共享文件锁不冒充完成 |
|
|
|
|
|
|
| 终态 request 重建与状态单调 | Done (local) | grant+terminal history 重建 APPROVED;状态前进/回退测试 | DB clock/TTL 属 B2 |
|
|
|
|
|
|
| legacy raw-token 修复与 payload 身份 | Done (local) | 一致行原子修复并 consume once;列/payload 冲突零变化 | 生产遗留量需实际盘点 |
|
|
|
|
|
|
| canonical event digest | Done (local) | 同秒近似事件保留、重跑幂等 | WORM 物理介质仍外部 |
|
|
|
|
|
|
|
|
|
|
|
|
验收:migration 29 passed;approval related 74 passed;full golden 1053 passed / 2 warnings;真实临时 SQLite 闭环通过;最终独立复审 `AUDIT: PASS`。
|
2026-08-26 00:25:46 +08:00
|
|
|
|
|
|
|
|
|
|
## Round 71 专项:未完成功能补齐本地切片
|
|
|
|
|
|
|
|
|
|
|
|
| 能力 | 状态 | 直接证据 | 剩余边界 |
|
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
| DXF 上传/项目内选择/批量解析 | Done (local) | `app.py` drawing routes、`DrawingPanel.tsx`、`test_dxf_api.py`、`drawing-upload-flow.spec.ts` | 现场真实图纸与侧栏 accept 已同步,仍需现场复验 |
|
|
|
|
|
|
| 图纸理解与 drawingLink 证据 | Done (local) | `drawing_understanding.py`、`test_drawing_understanding.py`、`test_drawing_links.py` | DWG/STEP/扫描件 OCR 依赖真实多模态接入 |
|
|
|
|
|
|
| PDF 图纸解析与 PNG 预览 | Done (local) | `drawing_pdf.py`、`test_drawing_pdf.py`、`DrawingCanvas.tsx` | 扫描件/图片型 PDF 需真实 OCR |
|
|
|
|
|
|
| 工艺/工序与细节识别 | Done (local) | `drawing_process.py`、`test_drawing_process.py` | 标准工时/资源仍需人工或工艺数据 |
|
|
|
|
|
|
| 图纸管理与 AI 精确解析 | Done (local) | `drawing_ai.py`、`test_drawing_manage.py`、`DrawingPanel/DrawingAnalysisBlock` | 真实视觉模型/OCR 仍需 R71.6 |
|
|
|
|
|
|
| 中文工艺文档结构化 | Done (local) | `drawing_process.recognize_process_text`、`/api/drawings/analyze-text`、`DrawingAnalysisBlock` | 真实视觉模型/OCR 仍需 R71.6 |
|
2026-09-14 15:40:10 +08:00
|
|
|
|
| 主数据维护与版本发布 | Done (local) | `masterdata.py`、`masterdata_api.py`、`MasterPanel.tsx`(「工位·版本·日历」页签,R71 能力已并入唯一入口)、`test_masterdata_api.py` | 现场 39 缺工艺/67 缺能力需数据补齐 |
|
2026-08-26 00:25:46 +08:00
|
|
|
|
| MPS/计划层切片 | Partial (local) | `mps_planning.py`、`test_mps_planning.py`、`/api/mps/*` | 与发布/执行回流接线待 R71.7 |
|
|
|
|
|
|
| 治理规则与审计统计 | Done (local) | `governance_rules.py`、`governance_api.py`、`GovernancePanel.tsx`、`test_governance_api.py` | 真实模型服务/多模态不属本项 |
|
|
|
|
|
|
|
|
|
|
|
|
验收(2026-08-17):四个审计修复文件 focused 37 passed,相邻回归 74 passed;全量黄金 1276 passed / 2 warnings;Web build、Node 60/60、隔离图纸 Playwright 3/3、8003/5173 与浏览器主界面均通过;最终独立复审 `AUDIT PASS`。图纸绝对路径脱敏、显式项目不接受全局根扩权、文件与元数据失败补偿、`PENDING_REVIEW` 证据门禁,MPS 租户/项目/世界隔离及 trace/L2 双向失败补偿,治理真实 P2、主数据漂移失败关闭、齐套/技能策略口令均纳入回归。矩阵总计仍为 **50 Done / 10 Partial / 0 Missing**;真实外部系统、模型服务、发布制品和现场数据边界不因本地通过而翻为 Done。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 72 专项:工程目录排产 P2 安全闭环
|
|
|
|
|
|
|
|
|
|
|
|
| 能力 | 状态 | 直接证据 | 剩余边界 |
|
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
| SQL 完整数据不绕 P2 | Done (local) | `workflow.handle_intent`、`test_sql_folder_schedule_stage_is_read_only_and_always_p2` | 无 |
|
|
|
|
|
|
| Stage 主业务世界零污染 | Done (local) | `prepare_folder_schedule` 深拷贝沙盒;SQL/Excel/DXF 混合分析不写主世界 | 无 |
|
|
|
|
|
|
| Manifest 与 payload 同源字节 | Done (local) | `read_folder_source_snapshots`;SQL/Excel/CSV 共用 immutable bytes;临时 ORD1→ORD2→ORD1 攻击回归 | 无 |
|
|
|
|
|
|
| P2/P3 通用确认信封完整性 | Done (local) | `paramsHash` + `envelopeHash` 决策前重算;action/project/world/session/evidence/snapshot 绑定 | 旧确认卡升级后失败关闭,需重新发起 |
|
|
|
|
|
|
| Import/schedule/save 原子失败语义 | Done (local) | `_FolderCandidateStore` 候选世界;三点故障注入均 DENIED 且业务指纹不变 | 无 |
|
|
|
|
|
|
|
|
|
|
|
|
验收:专项 14 passed;审批/folder 相邻回归 108 passed / 1 warning;全量黄金 1290 passed / 2 warnings;Web build、Node 60/60、8003/5173、浏览器与数据哈希通过;独立复审 `AUDIT PASS`。矩阵仍为 **50 Done / 10 Partial / 0 Missing**。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 73 专项:Automation G4 授权载荷绑定
|
|
|
|
|
|
|
|
|
|
|
|
| 能力 | 状态 | 直接证据 | 剩余边界 |
|
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
| G4 完整授权快照 | Done (local) | `automation_authorization` / `validate_automation_authorization`;完整 Rule + Binding schema | 无 |
|
|
|
|
|
|
| Grant 与当前规则/Binding 一致 | Done (local) | `EscalationGrant.authorization_digest`;7 类漂移撤销测试 | 无 |
|
|
|
|
|
|
| G4 写动作只走真实业务桥 | Done (local) | 无 `business_bridge` 或 Binding 预先按 P3 DENIED;删除 handler 直通 | 无 |
|
|
|
|
|
|
| 真实 API 双人审批铸 grant | Done (local) | `/api/actions/confirm`/batch `_confirm_one`;TestClient 两身份后真实发布 PUBLISHED | 无 |
|
|
|
|
|
|
| RuleId 替换与 grant 重放 | Done (local) | 消费前 scope 校验、一次性 executionGrant 回归 | 无 |
|
|
|
|
|
|
|
|
|
|
|
|
验收:Automation focused 24 passed / 1 warning;审批/治理相邻回归 92 passed / 1 warning;全量黄金 1300 passed / 2 warnings;受保护哈希、8003/5173、浏览器通过;独立复审 `AUDIT PASS`。矩阵仍为 **50 Done / 10 Partial / 0 Missing**。
|
|
|
|
|
|
|
|
|
|
|
|
## Round 76 专项:康尼真实数据 Web 全流程试排
|
|
|
|
|
|
|
|
|
|
|
|
| 能力 | 状态 | 直接证据 | 剩余边界 |
|
|
|
|
|
|
|---|---|---|---|
|
|
|
|
|
|
| 10 订单工艺/BOM/工时导入 | Done (local) | `kangni_intake.py`、`test_kangni_intake.py`、`test_kangni_real_data_gate.py`;10/72/26/965 | 现场源表结构变化需重新验证映射 |
|
|
|
|
|
|
| 浏览器上传目录到 P2 trial | Done (local) | `folder_pack.py`、`workflow.py`、`test_kangni_folder_schedule.py`、浏览器 9 文件全链 | 仅本地 trial,不等同生产发布 |
|
|
|
|
|
|
| 五策略可信比较 | Done (local) | `flex.py`、`analytics.py`;DEGRADED/PARTIAL 不推荐,状态 `TRIAL_ONLY` | 齐套/技能/能力字段仍需现场补齐 |
|
|
|
|
|
|
| MPS 保存、版本关联与 gap | Done (local trial) | `/api/mps/*`、`PlanBucketsView.tsx`、`test_mps_planning.py`;`OPEN -> SCHEDULE -> ADOPT` | 自动发布/执行反馈仍属 R71.7 外部闭环 |
|
|
|
|
|
|
| 订单/设备版本化 XLSX | Done (local) | `reports.py`、`test_schedule_exports.py`、Web 两个下载入口 | 生产版本导出仍须现场发布流程 |
|
|
|
|
|
|
| 设备/模具生产映射 | Partial | 41 台设备、40 套模具已读取;共享设备覆盖 26 工序 | 40 台真实设备无能力;40 套模具缺工序/设备/寿命 |
|
|
|
|
|
|
|
|
|
|
|
|
验收:focused **136 passed / 2 warnings**;full golden **1352 passed / 2 warnings**;Node **60 passed**;Web build、真实浏览器和双下载通过;9 份源 Excel 与 4 个受保护业务文件哈希不变;独立复审 `AUDIT PASS`。矩阵总计仍为 **50 Done / 10 Partial / 0 Missing**,现场资源映射、真实 MES/WMS/SAP 与外部发布环境不因本地 trial 翻为 Done。
|