feat: sync axis task state parity work

This commit is contained in:
wangdequan
2026-07-07 18:45:26 -04:00
parent 16484afce6
commit 8ef67f94c2
562 changed files with 175971 additions and 248 deletions

View File

@@ -1,5 +1,106 @@
# 05-验收证据
## 2026-07-07 18:18 EDT - AXIS 主控制按钮状态链路收敛证据
本轮按 `working/18-20260707-AXIS主控制按钮调用链与Web完善指南.md` 完成主控制按钮状态链路收敛,覆盖:
```text
ESTOP / RESET
Power ON / OFF
Home All
Run
Pause / Resume
Step
Task/HAL status -> Web policy/store 回写
Web evidence -> compare
```
关键实现证据:
```text
app/src/state/linuxcnc-task-policy.js
app/src/state/store.js
app/src/runtime/linuxcnc-task-hal-runtime.js
wasm-port/runtime/core/linuxcnc_wrap/linuxcnc_task_hal_wasm.cpp
tools/collect-web-xyzbc-trt-evidence.mjs
tests/node/verify_xyzbc_trt_web_app.mjs
tests/browser/xyzbc_trt_browser_smoke.html
wasm-port/tests/wasm/node/verify_task_state_matrix.mjs
```
执行命令:
```text
source /home/mes123456/emsdk/emsdk_env.sh && wasm-port/tools/build_task_hal_wasm.sh
node --check web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/store.js
node --check web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/state/linuxcnc-task-policy.js
node --check web-rtcp-5axis-xyzbc-trt-sim-plan/app/src/runtime/linuxcnc-task-hal-runtime.js
node --check web-rtcp-5axis-xyzbc-trt-sim-plan/tools/collect-web-xyzbc-trt-evidence.mjs
node wasm-port/tests/wasm/node/verify_task_hal_wasm.mjs
node wasm-port/tests/wasm/node/verify_task_state_matrix.mjs
node wasm-port/tests/wasm/node/verify_task_hal_sdk.mjs
node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_run_feedback_loop.mjs
node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_run_preconditions.mjs
node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_linuxcnc_task_hal_runtime.mjs
node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_gmoccapy_xyzab_gates.mjs
node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_rtcp_store.mjs
node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_impeller_feed_task_hal_run.mjs
npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run build
npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:node
npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run smoke:browser
npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run evidence:web
npm --prefix web-rtcp-5axis-xyzbc-trt-sim-plan/app run evidence:compare
```
关键输出:
```text
linuxcnc_task_hal_wasm_build=ok
linuxcnc_task_runtime_smoke=ok
task_state_matrix=ok
linuxcnc_task_hal_sdk=ok
run_feedback_status_loop_smoke=ok
run_preconditions_ini_profile_smoke=ok
linuxcnc_task_hal_runtime_smoke=ok
gmoccapy_xyzab_gates_smoke=ok
rtcp_store_smoke=ok
impeller_feed_task_hal_run=ok
gmoccapy_static_build=ok
xyzbc_trt_web_app_smoke=ok
xyzbc_trt_browser_smoke=ok
web_xyzbc_trt_evidence=/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/evidence/web-xyzbc-trt-evidence.json
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
```
最新 evidence 摘要:
```text
web.status=ready-for-wasm-runtime
web.collectedAt=2026-07-07T22:17:57.900Z
web.executionPath.sampleCount=228
web.executionPath.status=ok
web.basicSimEquivalent.ready=true
web.taskHalEquivalence.ready=true
web.axisMainUi.ready=true
web.blockers=[]
compare.status=pass
compare.comparedAt=2026-07-07T22:17:58.519Z
compare.summary.checkCount=60
compare.summary.passCount=60
compare.summary.failCount=0
compare.summary.blockers=[]
compare.summary.nativeStatus=ok
compare.summary.webStatus=ready-for-wasm-runtime
compare.requiredImprovements=[]
```
结论AXIS 主控制按钮状态链路收敛完成。Web 主控制按钮不再依赖单一 `runState` 判断,而是由 LinuxCNC task/motion/home 状态事实驱动;当前 compare 仍为 `60/60 pass`
## 2026-07-05 18:57 EDT - Pause 按钮 LinuxCNC AXIS 对标修复证据
本轮按用户要求,以 `/home/mes123456/cnc_wams/linuxcnc` 源程序中的 AXIS 行为严格对标 Pause。