Files
cnc_wams/work/working9-执行过程按钮/03-推进台账.md
2026-07-07 18:45:26 -04:00

5.1 KiB
Raw Blame History

03-推进台账

记录规则

每轮推进结束后追加一条记录,格式固定如下:

## YYYY-MM-DD HH:MM EDT - 第 N 轮

### 本轮目标

### 本轮做了什么

### 改了哪些文件

### 验证了什么

### 结果与证据

### 下一步

2026-07-07 16:42 EDT - 第 0 轮:文档初始化

本轮目标

/home/mes123456/cnc_wams/项目分析/AXIS主控制按钮调用链与WASM完善指南.md,在 /home/mes123456/cnc_wams/work/working9-执行过程按钮 建立后续推进所需文档体系。

本轮做了什么

  1. 读取 AXIS 主控制按钮调用链与 WASM 完善指南,确认 working9 应以 Run 执行按钮为主线同时覆盖急停、上电、Home、Pause、Resume、Step 的前置和运行期状态链。
  2. 参考 work/working8-暂停按钮 的文档组织方式,建立 working9 文档索引、功能内容、开发步骤、推进台账、任务矩阵、验收证据、决策记录。
  3. 将任务编号统一为 W9-xxx,便于后续按矩阵继续推进。

改了哪些文件

  • work/working9-执行过程按钮/README.md
  • work/working9-执行过程按钮/01-项目功能内容.md
  • work/working9-执行过程按钮/02-项目程序开发详细步骤.md
  • work/working9-执行过程按钮/03-推进台账.md
  • work/working9-执行过程按钮/04-任务矩阵.md
  • work/working9-执行过程按钮/05-验收证据.md
  • work/working9-执行过程按钮/06-决策记录.md

验证了什么

本轮只创建推进文档,未修改 wasm-port 或 Web 项目代码。验证重点是文件是否齐全、索引是否能覆盖后续继续推进。

结果与证据

  • working9 文档体系已创建。
  • 任务矩阵已列出 Run 门禁、程序 open、task 状态、Web status 投影、Home 前置、Pause/Resume/Step 回归、浏览器验收等后续任务。

下一步

04-任务矩阵.mdW9-001 开始,先补 Run 状态门禁矩阵和 WASM Node 验证。

2026-07-07 17:12 EDT - 第 1 轮:执行过程按钮闭环

本轮目标

完成 W9-001W9-011:补齐 Run 的 LinuxCNC 风格硬门禁、program/canonical plan 边界、Home 过程态、task/motion status 投影、Pause/Resume/Step 回归、浏览器 trace 验收和构建同步。

本轮做了什么

  1. 在 WASM task runtime 中增加 Run 门禁:必须 state=ONmode=AUTOinterpState=IDLE、已 Home 或 noForceHoming、已 open 程序、已加载 motion plan。
  2. 增加 status 字段:task.fileprogramOpenprogramStartLineplanIdmotionPlanLoadederrorTextallHomedhominghomeStatenoForceHoming
  3. 将 Home 改成可观测过程态:先 homing=true/homeState=HOMINGtask cycle 后进入 allHomed=true/homeState=HOMED
  4. motion runtime status 增加 queueDepthactiveDepthmotion.id 等执行推进字段。
  5. Web runtime/status 归一化读取新增字段Web policy 将 homing、program open、motion plan 状态纳入 Run 门禁。
  6. Web store 的 task/HAL Run 不再点击后直接写 runState=running,而是等待 task/HAL status 投影Run 命令链负责发送 MODE_AUTOEMC_TASK_PLAN_RUN
  7. 修复 Home 与 Set Mode 连续操作的竞态Home 过程态下允许 Auto 请求排队,但 Run 在 homing 未完成前仍被拒绝。
  8. 新增 verify_task_state_matrix.mjs,并更新 WASM/Web Node 测试以匹配 working9 的 motion plan 必需语义。
  9. 重建 WASM 与 Web dist执行 Node、trace、50ms 浏览器验收。

改了哪些文件

  • wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp
  • wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_motion_runtime.c
  • wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs
  • wasm-port/tests/wasm/node/verify_task_state_matrix.mjs
  • web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/runtime/linuxcnc-task-hal-runtime.js
  • web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/linuxcnc-task-policy.js
  • web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js
  • web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_linuxcnc_task_hal_runtime.mjs
  • web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_run_preconditions.mjs
  • web-rtcp-5axis-xyzbc-trt-sim-plan/app/dist/*
  • work/working9-执行过程按钮/03-推进台账.md
  • work/working9-执行过程按钮/04-任务矩阵.md
  • work/working9-执行过程按钮/05-验收证据.md
  • work/working9-执行过程按钮/06-决策记录.md

验证了什么

  • WASM build、WASM task/HAL smoke、Run 状态门禁矩阵。
  • Web build、Run feedback loop、Run preconditions、task/HAL runtime smoke。
  • 浏览器 tracePause 后位置冻结。
  • 50ms 截图验收ESTOP、Power、Home、Run、Pause 流程通过。

结果与证据

证据已追加至 05-验收证据.md2026-07-07 17:12 EDT - 任务 W9-001 至 W9-011

关键结论:

  • task_state_matrix=ok
  • run_feedback_status_loop_smoke=ok
  • pause_position_status=passed-position-frozen
  • verification_status=passed

下一步

working9 已闭环。后续若继续推进,应进入更完整的 LinuxCNC interpreter canonical output 替换当前受控 motion plan 适配层,而不是恢复 JS/G-code 正则执行 fallback。