63 lines
2.6 KiB
Markdown
63 lines
2.6 KiB
Markdown
# 03-推进台账
|
||
|
||
## 记录规则
|
||
|
||
每轮推进必须记录:
|
||
|
||
- 时间;
|
||
- 用户目标;
|
||
- 本轮做了什么;
|
||
- 改了哪些文件;
|
||
- 验证了什么;
|
||
- 遗留问题;
|
||
- 下一步。
|
||
|
||
## 2026-07-07 轮次 1:暂停功能 wasm 补齐方案建档
|
||
|
||
### 用户目标
|
||
|
||
根据 `AXIS暂停按钮LinuxCNC调用链分析.md`,实现暂停功能,完善 `wasm-port` 中 LinuxCNC 的 WASM 功能,最终实现 `web-rtcp-5axis-xyzbc-trt-sim-plan` 的暂停按钮正确功能;把完善方法和详细步骤写入 `work/working8`,并包含项目内容、开发步骤、推进台账、任务矩阵、验收证据、决策记录和 README 索引。
|
||
|
||
### 本轮做了什么
|
||
|
||
1. 阅读 AXIS 暂停按钮调用链分析文档,确认暂停必须同时覆盖 task/interpreter 与 motion/trajectory 两层。
|
||
2. 检查 `wasm-port` 结构,确认已有 task-hal、motion runtime、TP wasm、SDK 和 WASM Node 测试。
|
||
3. 检查 `web-rtcp-5axis-xyzbc-trt-sim-plan` 暂停按钮、task policy、store 分发逻辑和已有暂停测试报告。
|
||
4. 识别当前主要差距:
|
||
- task wrapper 没有完整保存和输出 `interpResumeState`;
|
||
- motion pause 仍偏普通队列命令,缺少 GUI immediate pause 语义;
|
||
- STEP 缺少 LinuxCNC 式自动回暂停;
|
||
- Web resume gate 仍需以 motion paused 为优先依据;
|
||
- TP pause/resume 需要补可观测测试。
|
||
5. 创建 `work/working8` 文档体系。
|
||
|
||
### 本轮新增或修改文件
|
||
|
||
- `work/working8/README.md`
|
||
- `work/working8/01-项目功能内容.md`
|
||
- `work/working8/02-项目程序开发详细步骤.md`
|
||
- `work/working8/03-推进台账.md`
|
||
- `work/working8/04-任务矩阵.md`
|
||
- `work/working8/05-验收证据.md`
|
||
- `work/working8/06-决策记录.md`
|
||
|
||
### 本轮验证
|
||
|
||
本轮是方案与推进文档建档,未修改业务代码,未运行构建和测试。
|
||
|
||
已完成的静态核对:
|
||
|
||
- 确认 `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp` 已有 `EMC_TASK_PLAN_PAUSE/RESUME/STEP` 分支。
|
||
- 确认 `wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_motion_runtime.c` 已有 `paused` 字段和 pause/resume 命令识别。
|
||
- 确认 `wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs` 已有最低限度 pause/resume smoke。
|
||
- 确认 Web 侧已有 `trace-pause-position-json.mjs` 和 `verify-estop-power-home-run-pause-50ms.mjs` 暂停冻结验证工具。
|
||
|
||
### 下一步
|
||
|
||
从 `04-任务矩阵.md` 的 `W8-001` 开始:
|
||
|
||
1. 修改 task runtime,增加 `interpResumeState`。
|
||
2. 扩展 WASM status JSON 和 SDK 映射。
|
||
3. 增加 Node WASM 测试,证明 pause/resume 恢复暂停前解释器状态。
|
||
|