7.8 KiB
7.8 KiB
验收证据
E01 / R01 / 文档与基线
- 状态:verified。
- 文档目录:
docs/glb-machine-manager/。 - 基线能力:现有整机 GLB 导入、严格 URDF、几何参数重载和 WASM 关节投影保留。
- 实现和运行证据见 E02–E04。
E02 / R02 / 开发源浏览器闭环
- 命令:
PLAYWRIGHT_MODULE=/home/mes006/.npm/_npx/e41f203b7505f1fb/node_modules/playwright/index.mjs node scripts/test_machine_manager_browser.mjs - report_id:
GLB-MGR-E01 - 报告:
coverage/glb-machine-manager/browser.report.json - SHA-256:
486108398c757421d59fd5311239675b82d6c688458975b7c613118920ceafbf - 状态:verified;浏览器错误 0。
- 覆盖:8 部件导入和预览、原点显隐、数值/TransformControls 变换、组合 GLB 导出、AC/BC 应用、底座 userData、物理零点、非法层级拒绝、BC 五轴程序。
- 截图:
coverage/glb-machine-manager/manager-ac-config.png,SHA-256b2fc2e00497ddb1e72e3170ee83ed54c21c8da9099036d84eeb4d6d6eef8619bcoverage/glb-machine-manager/managed-bc-running.png,SHA-2564b2d76cd505f1e31847d09650b052a0a9c393515cb7c71ad55ac649072634005
E03 / R02 / 生产构建浏览器闭环
- 构建:
npm --prefix web/react run build,通过;只有既有大 chunk 提示。 - 命令:
MACHINE_MANAGER_SOURCE_MODULES=0 ... node scripts/test_machine_manager_browser.mjs - report_id:
GLB-MGR-E02 - 报告:
coverage/glb-machine-manager/browser-production.report.json - SHA-256:
7ea2ba7c09a2480973e63aedb8da1b8b0d46914eb86519781d99b718c5d3fca6 - 状态:verified;生产资产执行 AC/BC UI 应用和 BC WASM 程序运动,浏览器错误 0。
E04 / R02 / 回归与静态契约
node scripts/test_axis_control_inventory.mjs:verified,99 个文档化控件。node web/react/src/test_dual_canvas_contract.mjs:verified。node web/react/src/test_xyzac_threejs.mjs:verified。npm --prefix web/react run typecheck:通过。node scripts/test_glb_machine_motion.mjs:verified;报告coverage/glb-machine-manager/regression-motion/motion.report.json,SHA-25691c3fa8ed8037aac8e71b8c76d54c38db9dc011ae25f63553966860b624aa626。AC/BC 各 41 个同时五轴变化 tick、42 个样本,最大误差分别约2.26e-16、2.48e-16。git diff --check:通过。scripts/validate_glb_machines.mjs未重跑:本地缺少gltf-validator包;旧示例 GLB 未修改,历史 Khronos 校验报告仍为 verified。该依赖边界不影响新管理器的浏览器导入、导出和运行证据。
E05 / R03 / MILL700 PBR 预览照明
- 状态:verified。
- 命令:
PLAYWRIGHT_MODULE=/home/mes006/.npm/_npx/e41f203b7505f1fb/node_modules/playwright/index.mjs node scripts/test_machine_manager_mill700_browser.mjs - 模型:
MILL700-U_1.glb,9,418,852 bytes,SHA-256bf37130681cc6462412e52744519516e8ade2a3212dd69153c0b1b3e415bcf66。 - report_id:
GLB-MGR-E05;报告 SHA-25609fd47f80dd2f741aa1d585ce5b1b40c2ff32e211b7b6e08b1b0da18327d798e。 - 结构:132 节点、126 网格、深度 6、126 材质,其中 110 个
metalness >= 0.9。 - 检查:已有内部层级完整保留;管理器使用
studio-pmrem、sRGB 输出、ACES、曝光1.45和多向补光;浏览器错误为 0。 - 截图:
coverage/glb-machine-manager/mill700/mill700-studio-lighting.png,SHA-2568943b16fe774427306ccafb5dcbc9817bc87538edbf67bbd5807dd59bd700d8b。
E06 / R04 / Z-up 坐标
- 状态:verified。
- 检查:管理器预览 DOM 标记
data-machine-manager-coordinate-system=machine-z-up、data-machine-manager-camera-up=0,0,1、data-machine-manager-axis-map=X:x,Y:y,Z:z和data-machine-manager-model-transform=none-on-import;MILL700 截图中蓝色 Z 轴竖直,机床 XY 网格水平,导入模型信息未被改写。 - AC/BC 管理器浏览器闭环、MILL700 浏览器闭环、TypeScript、生产构建和控件契约继续通过。
E07 / R05 / GLB 层级树管理
- 状态:verified。
- MILL700:132 节点、126 网格、最大深度 6,全部树节点存在;树默认根展开、子层可折叠。
- 节点选择:
MILL700-A-主轴-JT2显示相对父节点原点-3.969 / -204.276 / 405.633 mm。 - 拖放:
MILL700-A-门1-JT1拖到MILL700-A底座后,草稿父路径等于目标稳定源路径;原始 GLB SHA-256 保持bf37130681cc6462412e52744519516e8ade2a3212dd69153c0b1b3e415bcf66。 - 八个独立 GLB 的根树节点拖放通过;随后 AC/BC 应用、导出和程序运动回归仍通过。
- 控件契约:101 个控件,新增
machine-tree-node和machine-tree-origin;TypeScript、生产构建、双画布测试通过,浏览器错误 0。
E08 / R06 / WebGL framebuffer 稳定性
- 状态:verified。
- 触发环境:页面 viewport
1154x220,deviceScaleFactor 3,模拟底部停靠 DevTools 和高 DPI。 - 修复后:管理器 CSS
656x655,drawing buffer984x982,MAX_RENDERBUFFER_SIZE=8192,MSAA=false,控制台 warning/error=0。 - renderer 诊断字段:
machine-manager-webgl-antialias=false、render-state=ready、动态pixel-ratio/buffer-size/max-buffer。 - MILL700 132 节点树选择/拖放通过;生产 AC/BC 管理器闭环通过,浏览器错误 0。
E09 / R07 / MILL700 层级运动验证
- 状态:verified。
- 绑定:
主轴-JT1→X、主轴-JT2→Y、主轴-JT3→Z、工作台-JT1→A、工作台-JT2→C。 - 输入:X=10 mm、Y=20 mm、Z=30 mm、A=15°、C=45°。
- 结果:XYZ 局部增量依次为 0.01/0.02/0.03 m;A/C 局部旋转增量为 15°/45°;C 世界位置和世界四元数受 A 父节点影响,证明层级联动有效。
- 生命周期:输入和树操作期间
context-generation=1;warning/error=0。删除后部件数和树节点数均为 0。 - 完整变换样本保存在
coverage/glb-machine-manager/mill700/browser.report.json的motion.baseline/driven。
E10 / R08 / 选中关节局部坐标系
- 状态:verified。
- MILL700 选择
MILL700-A-主轴-JT2后,预览发布稳定源路径,selected-joint-axes=local-xyz。 - 三轴箭头组的局部 position=(0,0,0)、quaternion=identity,父对象为所选 GLB 节点;X 红/Y 绿/Z 蓝且按整机尺寸缩放,表示关节自己的局部轴并继承完整父链。
- 节点选择和轴值驱动期间
context-generation=1,浏览器 warning/error=0。
E11 / R09 / 部件平移旋转同步
- MILL700 命令:
PLAYWRIGHT_MODULE=/home/mes006/.npm/_npx/e41f203b7505f1fb/node_modules/playwright/index.js MACHINE_MANAGER_URL=http://127.0.0.1:5180/ node scripts/test_machine_manager_mill700_browser.mjs。 - MILL700 report_id:
GLB-MGR-E05;报告 SHA-256:1a9489e9df2633f54de395a4a116d4726a56cc0bfc8f2115681e7340e52b9fbf。 - MILL700:输入部件 X 平移
100 mm后,选中根节点世界 X 坐标增加0.1 m;输入 Z 旋转20°后,选中根节点世界四元数发生变化;132 节点、126 网格和局部坐标系检查继续通过,浏览器 warning/error=0。 - AC/BC 生产回归命令:
PLAYWRIGHT_MODULE=/home/mes006/.npm/_npx/e41f203b7505f1fb/node_modules/playwright/index.js MACHINE_MANAGER_SOURCE_MODULES=0 MACHINE_MANAGER_URL=http://127.0.0.1:5180/ node scripts/test_machine_manager_browser.mjs。 - AC/BC report_id:
GLB-MGR-E02;报告 SHA-256:7ea2ba7c09a2480973e63aedb8da1b8b0d46914eb86519781d99b718c5d3fca6;浏览器错误 0。 - 8 部件验证:输入部件 X 平移
10 mm、Z 旋转15°后,预览中的选中部件位置和姿态变化;应用生成的 geometry userData 保存translationMm[0]=10、rotationDeg[2]=15,随后 XYZAC 切换 XYZBC 和 BC 五轴 WASM 程序运行通过。 - 截图:
coverage/glb-machine-manager/mill700/mill700-studio-lighting.png,SHA-2562b40f1e6a92e09d54bde17543686cc2fcecee3e2b7d7d3d71296a63737a85c8d;AC 配置coverage/glb-machine-manager/manager-ac-config.png,SHA-256b2fc2e00497ddb1e72e3170ee83ed54c21c8da9099036d84eeb4d6d6eef8619b。