8.9 KiB
12-20260704 真实执行复验与缺失功能工作计划
目标
按用户要求,对仿真项目 /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan 与 LinuxCNC 源程序 /home/mes123456/cnc_wams/linuxcnc 中 xyzbc-trt 功能重新做真实执行对比,分析仿真项目缺失功能,并形成后续工作计划。
本轮真实执行范围
native LinuxCNC
执行入口:
/home/mes123456/cnc_wams/linuxcnc/scripts/rip-environment
执行命令:
/home/mes123456/cnc_wams/linuxcnc/scripts/rip-environment \
python3 /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/tools/collect-native-xyzbc-trt-evidence.py \
--run --timeout 90
输出:
native_xyzbc_trt_evidence=/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/evidence/native-xyzbc-trt-evidence.json
关键结果:
status=ok
executionMode=auto-run
coverage=35/35
previewPath.sampleCount=1300
executionPath.sampleCount=4
semanticExecutionPath.sampleCount=1300
lineExecutionTrace=64
axisValuesByLine=29
blockers=[]
Web 仿真项目
执行命令:
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run evidence:web
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:browser
输出:
web_xyzbc_trt_evidence=/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/evidence/web-xyzbc-trt-evidence.json
xyzbc_trt_web_app_smoke=ok
xyzbc_trt_browser_smoke=ok
关键结果:
status=ready-for-wasm-runtime
coverage=49/49
previewPath.sampleCount=1300
executionPath.sampleCount=228
semanticExecutionPath.sampleCount=1300
lineExecutionTrace=64
axisValuesByLine=29
blockers=[]
native/Web compare
执行命令:
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run evidence:compare
输出:
compare_xyzbc_trt_evidence=/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/evidence/compare-xyzbc-trt-evidence.json
compare_xyzbc_trt_status=pass
关键结果:
status=pass
checkCount=60
passCount=60
failCount=0
blockers=[]
nativeStatus=ok
webStatus=ready-for-wasm-runtime
对比结论
本轮真实执行与 compare 没有发现新的缺失功能。当前仿真项目已覆盖并通过以下对标面:
- LinuxCNC 源树 manifest、启动入口、运行环境和源码/构建产物绑定。
xyzbc-trt.ini全字段、HAL 图谱、POSTGUI HAL、PyVCP、tool table、parameter file。xyzbc-trt-kins.c、trtfuncs.c的 switchkins 与 TRT 运动学公式级证据。- M428/M429/M430 remap、Ngcgui 子程序和示例程序执行过程。
- AXIS/PyVCP UI 按钮、状态联锁、MDI、jog、override、运行/暂停/停止等行为证据。
- Vismach 变换树、刀具方向、截图/视觉证据、task/HAL 状态、错误路径和性能预算。
- 源码派生、运行观察、运行采样三类证据已在 JSON 中区分,避免静态推导冒充真实运行。
关键一致性数据:
semanticExecutionVsSemanticExecution.status=pass
nativeSampleCount=1300
webSampleCount=1300
maxTcpErrorMm=3.552713678800501e-15
rmsTcpErrorMm=4.515420281608176e-16
maxJointError=3.552713678800501e-15
maxToolAxisAngleDeg=0
machineStateMismatchCount=0
sampleCountDelta=0
lineExecutionComparison.status=pass
nativeTraceCount=64
webTraceCount=64
mismatchCount=0
axisValuesByLineComparison.status=pass
nativeLineValueCount=29
webLineValueCount=29
maxTcpErrorMm=0
maxJointError=0
maxToolAxisAngleDeg=0
mismatchCount=0
gcodeExecutionProcessComparison.status=pass
nativeExecutionStepCount=128
webExecutionStepCount=128
nativeSourceLineCoverageCount=65
webSourceLineCoverageCount=65
mismatchCount=0
缺失功能分析
当前按既有 60 项硬检查结果,缺失功能清单为空:
| 类别 | 缺失功能 | 当前判定 | 证据 |
|---|---|---|---|
| 源码/manifest | 无新增缺失 | 通过 | sourceManifestComparison.status=pass |
| 启动/运行态 | 无新增缺失 | 通过 | runtimeLaunchComparison.status=pass |
| INI/HAL | 无新增缺失 | 通过 | iniFullComparison.status=pass、halGraphComparison.status=pass |
| 运动学/remap | 无新增缺失 | 通过 | kinematicsFormulaComparison.status=pass、remapSemanticsComparison.status=pass |
| UI/Vismach/视觉 | 无新增缺失 | 通过 | uiBehaviorComparison.status=pass、visualComparison.status=pass |
| G 代码执行过程 | 无新增缺失 | 通过 | lineExecutionComparison.status=pass、gcodeExecutionProcessComparison.status=pass |
| task/HAL/限制/错误路径 | 无新增缺失 | 通过 | taskHalFullStateComparison.status=pass、limitInterlocksComparison.status=pass、errorPathComparison.status=pass |
| 性能/采样误差 | 无新增缺失 | 通过 | performanceBudgetComparison.status=pass |
说明:本结论只对 2026-07-04 18:12 EDT 本轮重新生成的 native/Web/compare evidence 有效。后续任何 LinuxCNC 源码、Web 源码、staging 文件、WASM artifact、UI 行为或采样逻辑变更,都必须重新执行同一组命令并更新本文件或后续任务文档。
工作计划
P-001 固定本轮证据为当前基线
状态:完成。
验收:
working/evidence/native-xyzbc-trt-evidence.json
working/evidence/web-xyzbc-trt-evidence.json
working/evidence/compare-xyzbc-trt-evidence.json
均已重新生成,compare 为 60/60 pass。
P-002 变更后强制复验
状态:长期执行。
触发条件:
/home/mes123456/cnc_wams/linuxcnc中xyzbc-trt相关源码、配置、HAL、NGC、PyVCP、Vismach 或 rtlib 变化。web-rtcp-5axis-xyzbc-trt-sim-plan/app、tools、tests、working/evidence中与执行、UI、采样或对比相关内容变化。- WASM artifact 重新构建或替换。
复验命令:
/home/mes123456/cnc_wams/linuxcnc/scripts/rip-environment \
python3 /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/tools/collect-native-xyzbc-trt-evidence.py \
--run --timeout 90
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run evidence:web
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run evidence:compare
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:browser
通过标准:
compare.status=pass
summary.failCount=0
summary.blockers=[]
smoke:node=ok
smoke:browser=ok
P-003 出现 fail/blocker 时的处理顺序
状态:待触发。
处理顺序:
- 先定位
compare-xyzbc-trt-evidence.json.requiredImprovements。 - 按 category 分配到源码/运行态、INI/HAL、运动学/remap、UI/Vismach、G 代码执行、task/HAL、错误路径、性能预算。
- 回查
native-xyzbc-trt-evidence.json与web-xyzbc-trt-evidence.json的同名字段,确认是 native 采集失败、Web 实现缺失,还是 compare 阈值/字段映射问题。 - 修改实现或采集脚本后重新执行 P-002 全量复验。
- 只有 compare 恢复
pass后,才能把对应缺失项标为完成。
P-004 working 文档维护规则
状态:长期执行。
要求:
- 若 compare 仍为
60/60 pass,不得新增“缺失功能已发现”的误报任务。 - 若新增对标维度,应扩展
04-任务矩阵.md的任务编号和 compare 硬检查,不只写文字结论。 - 每次复验必须更新
03-推进台账.md、05-验收证据.md,并在gptlog-process/gpdlog.md追加中文过程日志。
最终结论
截至 2026-07-04 18:12 EDT,仿真项目通过真实执行对比后未发现相对 LinuxCNC xyzbc-trt 的新增缺失功能。当前工作计划不是补缺实现,而是固定本轮 60/60 pass 证据,并建立后续变更后的强制复验和 fail/blocker 处置流程。
2026-07-05 18:08 EDT 复验补充
按用户再次要求“除了硬件相关的,在仿真的所有方面完全对标”,已重新执行 P-002 全量复验并更新 working 入口文档、任务矩阵、推进台账和验收证据。
本轮硬件排除边界:只排除实体伺服、电气 I/O、现场总线、真实主轴/冷却/刀库等物理设备接入;LinuxCNC xyzbc-trt 软件仿真的源码、配置、HAL/task、AXIS/PyVCP/Vismach 等效 UI、switchkins/remap、G 代码执行、路径采样、错误联锁和 evidence/compare 仍全部纳入对标范围。
复验结果:
native.status=ok
web.status=ready-for-wasm-runtime
compare.status=pass
compare.summary.checkCount=60
compare.summary.passCount=60
compare.summary.failCount=0
compare.summary.blockers=[]
compare.requiredImprovements=[]
smoke:node=ok
smoke:browser=ok
build=ok
结论:截至 2026-07-05 18:08 EDT,仍未发现相对 /home/mes123456/cnc_wams/linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzbc-trt.ini 的新增非硬件仿真缺失功能。