# Round 65 可恢复状态快照 更新日期:2026-08-03 - Goal:端到端闭环 APS 排产内核 | active - 用户确认:已确认 Round 65 推荐方案 - 目标分支:`main`(不提交、不推送、不合并、不发布) - 主工作区:`` | 权威 dirty 工作区 - Round:Closed-loop Scheduling Kernel v1 | locally accepted - 首轮正式审计:`AUDIT: FAIL`;7 个 blocking finding 修复后,最终独立复审为 `AUDIT: PASS`。 ## 审计修复结果 - P2/P3 证据摘要绑定完整 V2 problem/solution/validation、活动身份、EQUIPMENT/TEAM/TOOLING 与 FACTORY/WORKSHOP/LINE/WORKSTATION 当前资源快照;身份、维保、能力、班组、模具寿命或层级容量漂移均失败关闭。 - `SchedulingProblemV2` 支持设备 + 班组 + 模具并发分配、组织层级累计容量和模具寿命;外部 Skill 缺少必需 TEAM/TOOLING 分配时拒绝落版。 - WMS Saga 只接受本次确认唯一创建、且审计证据绑定当前 confirmId/WMS event 的新版本;拒绝沿用历史 DRAFT。 - planning `sourceHash/problemId` 排除 DRAFT 建议技术 ID/时间噪声并稳定排序;业务数量、物料或供应状态变化仍会改变指纹。 - 外部 Skill 版本号和创建时间使用业务日期,例如历史业务日 2026-08-02 生成 `EXT20260802-*`。 - `/api/orders` 返回持久化 closedLoop、精确版本、P2/P3 gate;订单页刷新后恢复真实阶段状态。 - 新增真实 Playwright 正/负闭环:MOM 阻断刷新恢复;正向 1 VL/1 WO 经 P2 发布、P3 双人审批并产生 MES 外部工单映射。 - 修复 P0 GET 副作用:`sync_flex_orders_to_sales` 语义幂等;`GET /api/orders` 只在真实投影变化时保存,MRP 预览在深拷贝上运行。 ## 验证证据 - 后端黄金测试:`979 passed`(2 条已知 deprecation warning)。 - Round 65 聚焦回归:87 passed;关键 orders/saga/UI 修复后补充 13 passed。 - Node 测试:`60 passed`。 - Web build:TypeScript + Vite 通过(4844 modules,仅已知大 chunk warning)。 - 真实隔离 Playwright:`closed-loop-scheduling.spec.ts` 2 passed;复核运行 2 passed(10.8s)。 - 运行证据:`docs/round-65-aps-end-to-end-runtime-final.json`。 - 实时服务:8003、5173 HTTP 200;浏览器已登录并真实打开订单管理,6 阶段中文与门禁状态正常。 ## 现场数据边界与异常记录 - 历史 Round 65 基线文件记录的 MOM world SHA-256 为 `290576d3...11ff03`。 - 2026-08-03 10:10:24,现有登录会话调用旧版 `GET /api/orders`;旧实现会无条件重建 FLEX 销售单并保存,MOM world 变为 `6b64adf6...53f7d`。日志中同一时段可见 `/api/orders` 请求。 - 已修复该读路径副作用;对当前 MOM world 的只读投影预检为 `changed=0`,连续两次结果完全一致。 - 隔离运行和真实 Playwright 前后,当前 MOM world SHA-256 均保持 `6b64adf6...53f7d`,最后写入时间仍为 2026-08-03 10:10:24。 - 未擅自恢复或覆盖现场 world;若要回退到历史基线,必须先由用户确认数据恢复策略。 - `server/data/**` 无 Git 状态变化;未写 `.env`,未提交、未推送、未合并、未发布。 ## 剩余外部阻断 - MOM 当前仍有 39 项缺工艺、67 项模板工艺/缺资源能力、124 项可信供应不足;正确结果是 BLOCKED、0 VL、0 WO、P2/P3 关闭。 - 正式 ASM 工作中心、现场班组/模具映射、采购/委外到货承诺仍需工厂/SAP/WMS 提供。 - 真实 MES/WMS/SAP 厂商网络、凭据、白名单、代码签名和离线机验收仍属外部环境。 ## 下一停止点 - Round 65 本地验收与独立复审已通过;形成 pre-target-merge 状态并保持共享 dirty 工作区。 - GitNexus `detect_changes(compare main)` 为 CRITICAL:97 文件、1041 符号、221 个受影响符号,属于多轮共享基线,不可直接归因本轮。 - 没有用户新授权,不执行 commit/merge/push/publish;goal 保持 active,下一轮继续完成矩阵中可本地推进的最高优先级项。