Files
cnc_wams/web-rtcp-5axis-sim-plan/working_run/07-browser-run-feedback-evidence-complete-next-steps.md

136 lines
3.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 07 浏览器 RUN feedback 证据完成记录与下一步
生成时间2026-06-22
## 1. 本轮执行范围
`06-run-implementation-traceability-matrix-and-next-steps.md` 的优先级,完成浏览器端 `07-run-preconditions-and-feedback` 证据采集。
本轮没有继续扩展 ABORT/STEP/xyzbc 对称测试。
## 2. 已完成改动
更新:
```text
qa/web-rtcp-5axis-site-test/capture-toolpath-preview-cases.mjs
```
新增:
```text
07-run-preconditions-and-feedback
```
浏览器流程:
```text
1. 等待 app、INI、kinematics runtime、machine files ready。
2. 选择 LinuxCNC vendored G-code:
configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins_test_1.ngc
3. 确认 taskHalSession.programPath 已 open 同一个 G-code。
4. POWER -> MANUAL -> HOME -> AUTO。
5. RUN。
6. 采集 baseline 和 0.2s / 0.5s / 1.0s / 2.0s / 5.0s state。
7. 截图并输出 JSON 证据。
```
输出:
```text
qa/web-rtcp-5axis-site-test/output/run-preconditions-feedback.json
qa/web-rtcp-5axis-site-test/screenshots/run-preconditions-feedback/
```
## 3. 断言结果
`run-preconditions-feedback.json` 当前状态:
```text
status=PASS
```
通过的关键断言:
```text
1. INI ready。
2. selected G-code 是 xyzac_switchkins_test_1.ngc。
3. task/HAL session opened selected G-code。
4. RUN 后 taskHalStatusLoop sequence 从 1 变为 2。
5. 本次 RUN tickCount=4。
6. 本次 RUN programRuntimeFeedbackHistory=5。
7. feedback sourceMode 全部是 linuxcnc-task-motion-hal-wasm。
8. 不含 fixture-line-playback feedback。
9. semanticBoundary 全部是 linuxcnc_task_motion_hal_wasm_simulation_runtime。
10. activeLine 等于 UI 高亮行。
11. DRO 等于 runtime feedback axisPose。
12. RTCP canvas 状态与 state.rtcpState 一致。
13. taskCycle/servoCycle 可见。
14. canvas 执行轨迹可见。
```
样本摘要:
```text
t=0.2s / 0.5s / 1.0s / 2.0s / 5.0s
runState=complete
taskHalStatusLoop.sequence=2
taskHalStatusLoop.tickCount=4
programRuntimeFeedbackHistory.length=5
activeLine=29
sourceMode=linuxcnc-task-motion-hal-wasm
```
说明:
```text
xyzac_switchkins_test_1.ngc 很短,浏览器首个 0.2s 样本时程序已 complete。
因此证据不要求 5 秒内持续 active=true而是验证本次 RUN 的新 loop sequence、tick/history、task/HAL feedback 和 UI snapshot 一致性。
```
## 4. 已运行验证
执行:
```bash
node qa/web-rtcp-5axis-site-test/capture-toolpath-preview-cases.mjs
```
结果:
```text
01-home-toolpath: PASS
02-operator-demo-toolpath: PASS
03-arc-demo-toolpath: PASS
04-clear-preview-reference: PASS
05-vendored-impeller-toolpath: PASS
06-running-rtcp-toolpath: PASS
07-run-preconditions-and-feedback: PASS
```
## 5. 接续工作
下一步建议补控制类 node 测试:
```text
1. ABORT 后 taskHalStatusLoop.active=falserunState/stopped status 正确。
2. STEP 在 task/HAL loaded 时 sourceMode 仍是 linuxcnc-task-motion-hal-wasm。
3. RUN gate 对 machine ON / AUTO / homed / opened-file 增加更细粒度失败断言。
4. taskHalStatusLoop 的 taskPeriodNs/servoPeriodNs 从 INI CYCLE_TIME/SERVO_PERIOD 派生。
5. xyzbc-trt 增加 RUN status loop 对称测试。
```
## 6. 当前完成矩阵变化
`06` 中的阶段 13 状态从:
```text
未完成:无新 JSON/截图
```
更新为:
```text
完成run-preconditions-feedback.json + run-preconditions-feedback/*.png07 case PASS
```