From 57f3085e3765ddd387dd983b836f8339cc28c164 Mon Sep 17 00:00:00 2001 From: wangdequan Date: Mon, 8 Jun 2026 13:37:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8C=89=E8=A7=84=E5=88=92=E7=BB=A7=E7=BB=AD?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 结论:扩展 feed_control_modes 期望,固定 G93/G94/G95 与 G61/G61.1/G64 后 vendored LinuxCNC 的 feed/motion modal 及 post-execute 状态读回,并同步验证文档。 --- wasm-port/docs/compatibility-validation.md | 12 ++++++++---- wasm-port/docs/drift-report.md | 6 +++--- .../fixtures/canon/feed_control_modes.events | 16 ++++++++++++++++ 3 files changed, 27 insertions(+), 7 deletions(-) diff --git a/wasm-port/docs/compatibility-validation.md b/wasm-port/docs/compatibility-validation.md index cc1dc59..8deaa23 100644 --- a/wasm-port/docs/compatibility-validation.md +++ b/wasm-port/docs/compatibility-validation.md @@ -300,6 +300,9 @@ and flood `_setup` state readback. `tool_semantics` also pins the post-execute position-parameter and modal, override, spindle, mist, and flood `_setup` state after T/M6/G43/G49/M61 tool behavior. +`feed_control_modes` pins the post-execute feed and motion-control modal state +plus the same position-parameter, override, spindle, mist, and flood `_setup` +state readback after G93/G94/G95 and G61/G61.1/G64 transitions. The same Node WASM and browser file-path smokes also cover the negative fixture group and check the LinuxCNC file-execution error text plus absent canonical motion constraints where applicable. @@ -535,10 +538,11 @@ canned-cycle, state-tag motion, tool-table setup, and O-word subroutine fixtures, plus threading/rigid tap, NURBS dispatch boundaries, and the comparable canonical runtime edge and program-end cleanup calls. The standalone vendored-source harness, Node WASM smoke, and browser smoke also -pin the `position_params` MDI/file-path, `tool_semantics`, and -`canon_runtime_edges` post-program modal, override, spindle, mist, and flood -`_setup` state. The same upstream baseline also validates the current negative -fixture error text and absent canonical-event constraints. Fixtures that depend on standalone-only runtime +pin `feed_control_modes`, the `position_params` MDI/file-path, +`tool_semantics`, and `canon_runtime_edges` post-program modal, override, +spindle, mist, and flood `_setup` state. The same upstream baseline also +validates the current negative fixture error text and absent canonical-event +constraints. Fixtures that depend on standalone-only runtime adapters, HAL state, upstream `rs274` output gaps such as `WAIT` or hidden NURBS control-point detail, or richer machine session state still need dedicated native LinuxCNC baselines. diff --git a/wasm-port/docs/drift-report.md b/wasm-port/docs/drift-report.md index 43cd010..9f07fd3 100644 --- a/wasm-port/docs/drift-report.md +++ b/wasm-port/docs/drift-report.md @@ -98,9 +98,9 @@ semantic rewrites: fixtures; it also covers threading/rigid tap, NURBS dispatch boundaries, and comparable canonical runtime edge and program-end cleanup calls. The vendored-source native harness plus Node WASM and browser smokes also pin - the `position_params` MDI/file-path, `tool_semantics`, and - `canon_runtime_edges` post-program modal, override, spindle, mist, and flood - `_setup` state. It now also checks the negative fixture set + `feed_control_modes`, the `position_params` MDI/file-path, + `tool_semantics`, and `canon_runtime_edges` post-program modal, override, + spindle, mist, and flood `_setup` state. It now also checks the negative fixture set against upstream `rs274 -g` for expected error text and absent canonical event constraints. HAL-backed adapter-heavy fixtures, standalone modal-state assertions, and upstream diff --git a/wasm-port/tests/fixtures/canon/feed_control_modes.events b/wasm-port/tests/fixtures/canon/feed_control_modes.events index 79f27a9..5c69ca0 100644 --- a/wasm-port/tests/fixtures/canon/feed_control_modes.events +++ b/wasm-port/tests/fixtures/canon/feed_control_modes.events @@ -12,3 +12,19 @@ canon_event=SET_MOTION_CONTROL_MODE mode=2 tolerance=0 canon_event=SET_MOTION_CONTROL_MODE mode=1 tolerance=0 canon_event=SET_MOTION_CONTROL_MODE mode=3 tolerance=0.02 canon_event=SET_NAIVECAM_TOLERANCE tolerance=0.03 +setup.current_x=0 +setup.current_y=0 +setup.current_z=0 +setup.parameter_5420=0 +setup.parameter_5421=0 +setup.parameter_5422=0 +post_execute.plane=1 +post_execute.distance_mode=0 +post_execute.feed_mode=2 +post_execute.motion_mode=0 +post_execute.origin_index=0 +post_execute.feed_override=0 +post_execute.speed_override_0=0 +post_execute.spindle_turning_0=1 +post_execute.mist=0 +post_execute.flood=0