Enforce AXIS source parity across panel controls
This commit is contained in:
@@ -326,3 +326,25 @@ program_replace_browser_screenshot c3e0a5b992381e7b6cb26f98a30338935df5239c87575
|
||||
```
|
||||
|
||||
报告对应提交前工作树保留了既有 coverage 大文件和 LinuxCNC 子模块改动;本轮提交包含 WASM TP/IO/HOME authority、无 JS JOG 运动计算、前端 pending 投影、长程序快照性能修正、聚合测试和本报告。
|
||||
|
||||
## AXIS 源码逐项映射与发布站点审计
|
||||
|
||||
本轮按 `linuxcnc/src/emc/usr_intf/axis/scripts/axis.py` 对照了 `manual_ok()`、`ensure_mode()`、`open_file_guts()`、`task_run/task_pause/task_resume/task_stop/task_step`、`jog_on/jog_off_actual`、`mist_toggle/flood_toggle`、`spindle_*`、`change_tool` 和 MDI 入口。映射约束与禁止事项见 [`LinuxCNC AXIS Web 铁律`](../docs/linuxcnc-axis-web-iron-law.md)。
|
||||
|
||||
发现并修复的实际偏差:
|
||||
|
||||
- 手动/MDI 页签现在通过 WASM `SET_MODE` 同步 LinuxCNC task mode;之前仅切 React 页签会使 JOG、主轴和 MDI 被错误地显示为不可用。
|
||||
- React 现在保留 `panel_snapshot.io` 的 WASM canonical envelope,正确读取 `state.ready/estop` 和设备状态。
|
||||
- `JOG_STOP` 对 LinuxCNC source TP 只停止当前 jog 并保持 TP runnable;不再伪造 `AUTO_PAUSE`,避免后续 MDI/主轴操作得到 `linuxcnc_tp_paused` 调度错误。
|
||||
- MDI 在前一次 JOG_STOP 后明确恢复 WASM TP runnable,再由 WASM 解释器/队列执行 MDI block。
|
||||
- 工具栏 Reset 和 Reopen defaults 均走 WASM gate;Reopen 执行 `LOAD_WORKSPACE + PROGRAM_LOAD`,不再只修改本地编辑器字符串。
|
||||
|
||||
发布地址 `https://49.232.250.35:58010/` 的 Chromium 审计命令:
|
||||
|
||||
```text
|
||||
PLAYWRIGHT_MODULE=... node scripts/test_xyzac_panel_buttons_browser.mjs
|
||||
```
|
||||
|
||||
审计覆盖:WASM startup、Open G-code file、`3D_Chips.ngc`、Load case、POWER ON、HOME ALL、RESET、IDENTITY/TCP:XYZAC/USERK、视图和 Clear plot、MANUAL/MDI、XYZAC 五轴 JOG、主轴正反转/停止/刹车、Mist/Flood、Tool/Probe、Jog/Feed/Spindle/Max velocity overrides、MDI、Run/Pause/Resume/Abort/Step、Run Startup Sequence、编辑器 Load/Reopen 和 ABI-disabled 控件。发布版本 `20260902-linuxcnc-wasm-panel-audit-r27` 最终结果为 20 组 verified、83 个按钮、37 个按 LinuxCNC gate 禁用、`browser_errors=0`;WASM worker authority 标记为 `linuxcnc-wasm-worker` / `wasm_task_canonical`,截图 `/tmp/xyzac-panel-buttons-browser.png`,SHA-256 `dbf6d196cec3fe765a64d5a1d194b7ebb5681a30555f238e084c9ad6deac6032`。
|
||||
|
||||
源代码对标结论:AXIS 的可执行操作均通过对应 WASM command/result 和后续 snapshot;`Override Limits`、Block delete/Optional pause、完整 Tool Touch Off/G10 交互以及桌面 tool editor/Quit 仍明确记录为 `blocked_by_abi` 或浏览器宿主边界,不能用 JavaScript 模拟。整体 `release_status` 继续保持 `STOP_RELEASE`,因为本报告不替代完整 TP 数值 oracle。
|
||||
|
||||
Reference in New Issue
Block a user