按建议,继续工作

结论:扩大 WASM 解释器负向夹具和文件执行路径验证,聚合 host/WASM/OPFS/browser smoke 已通过。
This commit is contained in:
2026-06-08 05:42:08 +08:00
parent 1fcfc7943c
commit c28b629ff6
2 changed files with 35 additions and 6 deletions

View File

@@ -203,12 +203,15 @@ for `minimal_linear`, `arc_semantics`, `length_units`, `modal_incremental`,
`nurbs_g5_semantics`, `nurbs_g6_semantics`, `state_tag_motion`,
`canon_runtime_edges`, `program_end_modal_reset`, and `namedparam_semantics`,
plus the `g1_zero_feed`, `arc_radius_mismatch`, `arc_zero_radius`,
`g53_incremental`, `tool_not_found`, and `tool_length_offset_not_found`
negative fixtures. The WASM interpreter file path additionally covers
`file_open_reset`, `percent_file_finish`, and `oword_subroutine`. OPFS
validation is limited to the JavaScript host-boundary adapter plus the INI
browser smoke harness. Full browser coverage, full SDK coverage, and full
machine-session validation remain future work.
`cutter_comp_plane_change`, `g53_incremental`, `namedparam_readonly`,
`numbered_param_readonly`, `tool_not_found`, and
`tool_length_offset_not_found` negative fixtures. The WASM interpreter file
path additionally covers the same canonical-event fixture group except
`namedparam_semantics` and `position_params`, plus `file_open_reset`,
`percent_file_finish`, and `oword_subroutine`. OPFS validation is limited to
the JavaScript host-boundary adapter plus the INI browser smoke harness. Full
browser coverage, full SDK coverage, and full machine-session validation remain
future work.
The current fixture expectations validate standalone behavior against both the
vendored LinuxCNC source path and an upstream `rs274` side-by-side baseline for

View File

@@ -167,7 +167,10 @@ const errorFixtureNames = [
"g1_zero_feed",
"arc_radius_mismatch",
"arc_zero_radius",
"cutter_comp_plane_change",
"g53_incremental",
"namedparam_readonly",
"numbered_param_readonly",
"tool_not_found",
"tool_length_offset_not_found",
];
@@ -186,6 +189,29 @@ for (const fixtureName of errorFixtureNames) {
}
const fileFixtureNames = [
"minimal_linear",
"arc_semantics",
"length_units",
"modal_incremental",
"plane_selection",
"coordinate_offsets",
"g53_machine_coordinates",
"feed_control_modes",
"probe_semantics",
"spindle_orient",
"comment_logging",
"numbered_params",
"tool_semantics",
"tool_table_setup",
"tool_reload",
"canned_cycles",
"cutter_comp_motion",
"threading_sync",
"nurbs_g5_semantics",
"nurbs_g6_semantics",
"state_tag_motion",
"canon_runtime_edges",
"program_end_modal_reset",
"file_open_reset",
"percent_file_finish",
"oword_subroutine",