84 lines
7.3 KiB
Markdown
84 lines
7.3 KiB
Markdown
|
|
# 第87轮交付:主数据改得对、排产用得上
|
|||
|
|
|
|||
|
|
日期:2026-09-09。结论:本轮软件改动和验收完成,已应用回用户当前项目工作区。
|
|||
|
|
|
|||
|
|
代码验证提交:`48b5a8cbc3bb123df77be679f22bca3992d62a36`。独立分支 `codex/round-87-master-data` 保存实现和审查历史;截至 2026-09-09,当前项目 main 仍为 `f9873ee`,没有创建 main 提交、修改暂存区或推送。
|
|||
|
|
|
|||
|
|
## 1. 完成的行为
|
|||
|
|
|
|||
|
|
- 聊天附件保存完整原文件到当前项目,检查/采用/维护/试排使用同一个来源。
|
|||
|
|
- 锐扬16表结构识别,45物料、15设备、42用料关系、15工艺、26人员、5在制、2班次/1维护完整保留;5正式订单与1沙盒插单分开。
|
|||
|
|
- 在途420、12条关键料、损耗、工时来源、21天计划周期及24小时冻结得到结构化保存与消费。
|
|||
|
|
- 资料检查不提前改主数据,确认采用后再维护;相同原文件重复导入不覆盖维护,不同版本在原项目拒绝静默覆盖,需独立项目核对或后续差异审核。
|
|||
|
|
- 导入后物料/设备/BOM/工艺使用稳定编辑编号;普通维护同步到柔性排产输入,历史版本和工单保持。
|
|||
|
|
- 周末模板正确生成,并按真实设备区域限定范围;人员、在制、设备维护、午休/跨夜休息、库存与真实到货日期参与实际排程。
|
|||
|
|
- 原表资料不足时按订单明确阻断;多批在制或剩余量不明确不覆盖、不猜测、不从零重复全量排。
|
|||
|
|
- 复查已采用资料显示当前维护结果;原文件的问题另作历史记录。无工单时显示5单待补资料,不提示下载完整生产计划。
|
|||
|
|
- 等待确认时隐藏重复排产快捷操作;修复新建项目临时会话竞态;桌面和手机完成上传、采用、工艺编辑及刷新恢复。
|
|||
|
|
|
|||
|
|
## 2. 最终验证
|
|||
|
|
|
|||
|
|
| 验证 | 结果 |
|
|||
|
|
|---|---|
|
|||
|
|
| 冻结代码全量 pytest | **2270 passed / 54 skipped / 5 warnings,0 failed,0 errors**;789.89秒 |
|
|||
|
|
| 当前项目回写后的关键测试 | **57 passed / 1 warning**;13.44秒 |
|
|||
|
|
| 实际源文件维护→试排脚本 | **PASS**;原始数据阻断与明确隔离补充的正向场景均通过 |
|
|||
|
|
| 真实浏览器桌面1440×900、手机390×844 | **2 passed**;18.7秒;业务网络未模拟,仅登录为测试provider;无控制台错误 |
|
|||
|
|
| Node | **63 passed / 1 skipped / 0 failed**;跳过的是未构建NSIS安装包的发现测试 |
|
|||
|
|
| Web构建 | 独立工作区和当前项目均通过,输出同一JS/CSS构建文件 |
|
|||
|
|
| 独立审查 | **AUDIT PASS**;7项可复现发现全部修复并复验 |
|
|||
|
|
| 新增核心模块静态检查 | Ruff通过;git diff --check通过 |
|
|||
|
|
| 源文件/工作区保护 | 源Excel SHA不变;原工作区19个已有文件在回写前逐项校验,回写46文件与测试树逐字节一致 |
|
|||
|
|
|
|||
|
|
54个Python跳过来自各自现有外部数据/环境条件;本轮指定锐扬原文件的验收不跳过。没有进行真实ERP/MES/WMS生产写入、正式授权或桌面安装包发布验收。
|
|||
|
|
|
|||
|
|
全量首轮发现的机器路径、旧DXF测试前置缺失和运行中脚本接口变更均已处理,失败范围508项先通过,再从冻结代码重新完整运行;最终结论只采用最后全量的通过结果。
|
|||
|
|
|
|||
|
|
## 3. 维护确实改变计算的证据
|
|||
|
|
|
|||
|
|
| 操作 | 实际结果 |
|
|||
|
|
|---|---|
|
|||
|
|
| 修改普通工艺工时 | 对应运行分钟88.9→177.8 |
|
|||
|
|
| 库存和在途清零,再补回 | 缺料时0工单,补回后4工序;就绪提示与求解一致 |
|
|||
|
|
| 停用A00047 | 新方案不分配该设备 |
|
|||
|
|
| 保留/移除8月10日维护的隔离对照 | 有维护使用A00048,无维护可用A00047 |
|
|||
|
|
| 普通周模板启用周末 | 实际开工8月10日08:00→8月8日08:00 |
|
|||
|
|
| 保留已完成CUT | 仅排SO-001后续4工序,不重复已完成工序 |
|
|||
|
|
| 保留运行中占用 | 后续任务需等原在制占用释放 |
|
|||
|
|
| 再次排产 | 使用当前维护值,无再次导入;旧版本/输入快照/工单保持 |
|
|||
|
|
|
|||
|
|
正向场景明确在隔离内存世界选择SO-001,补测试喷涂人员及对应库存,按需启用周末。补充清单保存在运行证据的 supplements 字段,未修改原Excel,不能解释为客户已经确认这些值。
|
|||
|
|
|
|||
|
|
## 4. 原始资料仍需确认
|
|||
|
|
|
|||
|
|
原表明确注明订单、客户、库存、标准工时包含演示补充。本轮保留这一来源边界。
|
|||
|
|
|
|||
|
|
- 人员表缺喷涂技能。
|
|||
|
|
- WIP-004引用A00247,但设备表没有该设备。
|
|||
|
|
- 部分在制任务缺少剩余数量及前序完成确认。
|
|||
|
|
- 原始日期为2026-08-04,使用历史日期回放,不把它当作今日新订单。
|
|||
|
|
|
|||
|
|
原始5单因此正确显示待补资料。本轮完成的是可靠导入、维护与实际消费闭环,未宣称原表已经满足生产放行。
|
|||
|
|
|
|||
|
|
## 5. 使用方式
|
|||
|
|
|
|||
|
|
在当前应用中新建一个锐扬项目,通过聊天附件上传用户指定的 `湖南锐扬APS精简演示数据.xlsx`,发送“分析一下数据文件”,核对资料后点击“确认采用资料”。在主数据中修改库存、工艺或设备,再发送“根据这些数据排产”;系统使用已维护的值并说明仍影响试排的问题。
|
|||
|
|
|
|||
|
|
可复跑独立脚本:`python scripts/round87_masterdata_e2e.py --source <用户指定工作簿> --output <证据文件>`。源文件缺失或哈希不匹配会直接失败,不使用替代样本。
|
|||
|
|
|
|||
|
|
详细背景见 [主数据专项审查](product/master-data-completion-audit-2026-09-09.md)、[源工作簿基准](product/ruiyang-workbook-intake-baseline-2026-09-09.md)、[独立审查报告](round-87-independent-audit.md)。前两份是整改前问题记录,以本交付报告为本轮完成状态。
|
|||
|
|
|
|||
|
|
## 6. 交付与保留状态
|
|||
|
|
|
|||
|
|
实现采用三个可互通子Agent:完整导入、主数据一致性、排产消费;完成后增加跨片独立审查和真实浏览器测试。
|
|||
|
|
|
|||
|
|
用户原main工作区的既有改动先保存基线,再在独立工作区实施。全量/浏览器/实际数据验证后,只将经过验证的文件改动应用回当前工作树,未推进main分支或暂存文件。回写前原文件备份、哈希清单、完整日志和6张浏览器截图保存在本轮独立 evidence 目录。独立分支和工作树作为恢复点保留。
|
|||
|
|
|
|||
|
|
2026-09-14:用户要求将当前工作区中已验证的集成改动整理为本地 Git 提交。该提交只在本地 `main` 创建,不推送、不合并、不发布。
|
|||
|
|
|
|||
|
|
本轮测试端口18787/18788已停止且无监听。自动审批以“blocked by policy”拒绝删除已识别的临时测试目录,因此这些目录保留;没有改用其他方式绕过。测试用旧DXF副本仅用于既有回归,留在独立工作树的忽略目录,未进入用户锐扬项目或Git提交。
|
|||
|
|
|
|||
|
|
## 7. 2026-09-13 语义变更(试排假设)
|
|||
|
|
|
|||
|
|
用户实测反馈「排产未排出来」后,试排(trial)语义调整:导入侧 `dueDate` 改为日期归一化比较(Excel 日期单元格不再误报 `SANDBOX_CONFLICT` 整份拒收);算法侧把「未登记人员技能」「在制剩余量/结束时间/前序/资源未确认」等在制事实类问题降级为显式 `ASSUMPTION`,真实物料短缺仍阻断。因此原始工作簿不再 5 单全灭:试排实测 `SO-002/003/005` 排出、`SO-001/004` 因真实缺料阻断、15 个工单、10 项试排假设、`solveStatus=PARTIAL_WITH_ASSUMPTIONS`。正式链路(`trial=False`)语义不变;本文第 4 节「原始 5 单全部待补资料」为 2026-09-09 当时结论,以本节为准。
|