{ "authority_chain": [ "linuxcnc_source", "native_fixture", "wasm_core", "dedicated_worker", "react_projection" ], "boundaries": [ "scope is the exact 3axis-tutorial case", "real hardware and realtime kernel remain REAL-EXCLUDED", "historical full-configuration/oracle reports are not promoted by this selected-case report" ], "candidate_eligible": true, "case": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini", "commands": [ { "command": [ "python3", "scripts/validate_baseline.py" ], "exit_code": 0, "name": "baseline", "output_bytes": 15, "output_sha256": "eec799547dcaaa1d88ac3a862a40fe2e3836fd9e1cfb92e5b58c3a745e7f351c", "status": "passed" }, { "command": [ "python3", "scripts/validate_task_pointer.py", "nextTask1.md", "--lock", "context-lock.json" ], "exit_code": 0, "name": "pointer", "output_bytes": 40, "output_sha256": "aaa69f8568274abc1de20ccd3024ccdffab36dedd37c482b214d3b5bc5003a25", "status": "passed" }, { "command": [ "scripts/build-wasm.sh" ], "exit_code": 0, "name": "wasm_build", "output_bytes": 10214, "output_sha256": "b842fb78ac192f1856af805f44e9c8503324738b890cbb023449a0ea7ed651ab", "status": "passed" }, { "command": [ "node", "web/worker/test_panel_snapshot_projection.mjs" ], "exit_code": 0, "name": "panel_snapshot", "output_bytes": 404, "output_sha256": "51fc497c58065f6c15efa0b3e517c7db7a181dd4f31b757dc680c8f45acc7fd6", "status": "passed" }, { "command": [ "node", "web/worker/test_panel_gate_matrix.mjs" ], "exit_code": 0, "name": "panel_gates", "output_bytes": 285, "output_sha256": "21048a2681a7da10779a0508c14c995c15236b4ce742715b211a8b83bd738ada", "status": "passed" }, { "command": [ "node", "web/worker/test_axis3_selected_case.mjs" ], "exit_code": 0, "name": "selected_case", "output_bytes": 1183, "output_sha256": "05c29bd9689196614a00cd0d37e2a561a7c5138c0217c44281f46f945c133428", "status": "passed" }, { "command": [ "node", "web/worker/test_axis3_visible_completion.mjs" ], "exit_code": 0, "name": "visible_completion", "output_bytes": 223, "output_sha256": "621f5980f9ee4c56dafd57e108d3dd1c410aa77e8716c5b574cf887875e0a52e", "status": "passed" }, { "command": [ "node", "web/worker/test_axis3_tutorial_program.mjs" ], "exit_code": 0, "name": "program_mdi", "output_bytes": 499, "output_sha256": "eb2b99723c5a9b26a9773bf1010502521dd30714297b175ee8d94b0182c64220", "status": "passed" }, { "command": [ "node", "web/worker/test_axis3_tutorial_sequence.mjs" ], "exit_code": 0, "name": "sequence_home_tool_ack", "output_bytes": 3656, "output_sha256": "08d119d7d6fa26d7295a580ec28e2ac8261e00a11fa325a0ecc4427c4bb02338", "status": "passed" }, { "command": [ "node", "web/worker/test_axis3_tutorial_tool_io.mjs" ], "exit_code": 0, "name": "tool_io_probe", "output_bytes": 483, "output_sha256": "17cb816f695a789fb79af47eb1625defea670342d1e9a7f9d25ac4b5a34c9315", "status": "passed" }, { "command": [ "node", "web/worker/test_wasm_preview.mjs" ], "exit_code": 0, "name": "preview_wasm_motion", "output_bytes": 198, "output_sha256": "3d4f47d5771b91f8c20102a75233260831a89d529043eee5b615f6c4522e7278", "status": "passed" }, { "command": [ "node", "web/worker/test_wasm_motion_authority.mjs" ], "exit_code": 0, "name": "motion_authority", "output_bytes": 351, "output_sha256": "34f090eef3d78d77d192658fbc279f0bdd72fa038eef44cfdc0138d6068d3d8c", "status": "passed" }, { "command": [ "node", "web/worker/test_wasm_motion_checkpoint.mjs" ], "exit_code": 0, "name": "motion_checkpoint", "output_bytes": 387, "output_sha256": "0e66edea6f69ea7cd7206adf128b2b2ffb1039db6bd27dbfc5f8f89ddb0fa998", "status": "passed" }, { "command": [ "node", "web/worker/test_wasm_canonical_state.mjs" ], "exit_code": 0, "name": "canonical_state", "output_bytes": 309, "output_sha256": "48b41b755925d7065f99db25e11f042789f917d15107de23c3ef980c9f2978ba", "status": "passed" }, { "command": [ "node", "web/worker/test_wasm_canonical_state_checkpoint.mjs" ], "exit_code": 0, "name": "canonical_checkpoint", "output_bytes": 361, "output_sha256": "5a3c0d7e8f2b401cfba08ba9820bfef135c9e3f25d6a001c319f5dddd0abf286", "status": "passed" }, { "command": [ "node", "web/worker/test_axis3_tutorial_persistence.mjs" ], "exit_code": 0, "name": "persistence", "output_bytes": 425, "output_sha256": "350c5319372118604c99abc559b9c20505773aa24e956fbe0d6f4d7ce7c866d2", "status": "passed" }, { "command": [ "node", "web/worker/test_trace_export.mjs" ], "exit_code": 0, "name": "trace", "output_bytes": 63, "output_sha256": "963d8eb749515dcd05a72ac97bce61d29440f3b4ca2fff9fca8ac19c55be1e8d", "status": "passed" }, { "command": [ "bash", "-lc", "for test_file in web/app/test_*.mjs; do node \"$test_file\" >/dev/null || exit 1; done" ], "exit_code": 0, "name": "app_regression", "output_bytes": 0, "output_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "status": "passed" }, { "command": [ "npm", "--prefix", "web/react", "run", "typecheck" ], "exit_code": 0, "name": "react_typecheck", "output_bytes": 59, "output_sha256": "08fb3e3d0d9396a56f8720eb15d9f6920f8a30c2dad7b0b6672ac446801f27e3", "status": "passed" }, { "command": [ "npm", "--prefix", "web/react", "run", "build" ], "exit_code": 0, "name": "react_build", "output_bytes": 949, "output_sha256": "ca43db92e3c34e6eef081eeec1b15d95119cbad819058232b7847cbbef9b74c7", "status": "passed" } ], "context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1", "failure_samples": [], "feature_matrix": [ "load_program", "toolpath_preview", "estop_reset", "power_on", "reset", "home", "execute_gcode", "realtime_path", "realtime_coordinates", "button_gates", "mdi", "jog", "spindle", "coolant", "tool_change", "probe", "checkpoint_recovery", "diagnostics", "accessibility_layout" ], "implementation_status": "verified", "passed_command_count": 20, "release_action": "ALLOW_RELEASE", "report_sha256": "c0e888609af42ae17ced7b11939373431f22e0d5a270377b9efee118290e43b7", "required_command_count": 20, "schema": "axis3-tutorial-web-wasm-complete-parity.v2", "scope": "selected_case_web_wasm_simulation", "source_contract": { "axis": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "case_hal": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.hal", "case_ini": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini", "vismach_program": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial" }, "status": "verified", "task_id": "PANEL-15-SELECTED-CASE-ACCEPTANCE" }