Files
linuxcncWebWASM/coverage/full-case-acceptance-s8-10.report.json

1429 lines
86 KiB
JSON

{
"acceptance_status": "blocked",
"blockers": [
{
"count": 139,
"id": "remaining_case_blockers",
"reason": "235-case startup matrix retains resource/HAL/INI/STARTUP blockers; blocked rows are not promoted",
"status": "blocked"
},
{
"count": 1,
"id": "official_oracle",
"reason": "official full LinuxCNC oracle inputs remain source-gated",
"status": "blocked"
},
{
"count": 1,
"id": "browser_matrix",
"reason": "locked Chromium/Firefox/Safari minimums are not pinned and Safari is unavailable in this environment",
"status": "blocked"
}
],
"boundaries": [
"implementation coverage is not a LinuxCNC full-feature release claim",
"blocked case rows retain their first diagnostics and are not reclassified",
"official oracle and browser matrix blockers are independent of module regression status"
],
"candidate_eligible": false,
"checks": {
"acceptance_blockers_retained": {
"blockers": [
{
"count": 139,
"id": "remaining_case_blockers",
"reason": "235-case startup matrix retains resource/HAL/INI/STARTUP blockers; blocked rows are not promoted",
"status": "blocked"
},
{
"count": 1,
"id": "official_oracle",
"reason": "official full LinuxCNC oracle inputs remain source-gated",
"status": "blocked"
},
{
"count": 1,
"id": "browser_matrix",
"reason": "locked Chromium/Firefox/Safari minimums are not pinned and Safari is unavailable in this environment",
"status": "blocked"
}
],
"status": "verified"
},
"case_matrix_aggregated": {
"blocked": 139,
"cases": 235,
"ready": 96,
"status": "verified"
},
"context_consistency": {
"context_ids": [
"linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"linuxcnc-2.10.0-pre0-wasm-m1-py-c1"
],
"status": "verified"
},
"direct_inputs": {
"status": "verified"
},
"implementation_regression": {
"status": "verified"
},
"release_stop_preserved": {
"candidate_eligible": false,
"release_action": "STOP_RELEASE",
"status": "verified"
}
},
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"coverage": {
"case_matrix": {
"blocked": 139,
"case_count": 235,
"counts": {
"BLOCKED_HAL": 106,
"BLOCKED_INI": 19,
"BLOCKED_RESOURCE": 11,
"BLOCKED_STARTUP": 3,
"TASK_READY": 96
},
"ready": 96,
"status": "verified"
},
"display_families": {
"case_count": 235,
"counts": {
"axis": 85,
"gladevcp": 6,
"gscreen": 14,
"other": 37,
"pyvcp": 5,
"qtvcp": 61,
"touchy": 6,
"vismach": 21
},
"status": "verified"
},
"machine_families": {
"implementation_status": "verified",
"status": "verified"
},
"runtime_extensions": {
"runner_counts": {
"failed": 0,
"passed": 10,
"runners": 10
},
"status": "verified"
}
},
"implementation_status": "verified",
"inputs": [
{
"bytes": 7647,
"path": "context-lock.json",
"role": "context_lock",
"sha256": "bf6651f8d1803f2219d40e61f5e86dcf0821862d087eec2e19f99f593561353e",
"status": "present"
},
{
"bytes": 297684,
"implementation_status": "verified",
"path": "coverage/sim-case-matrix-s8-06.report.json",
"role": "case_matrix",
"schema": "sim-case-matrix-s8-06-report.v1",
"sha256": "0ee1db9f8cec6718a438598eaa193b2f7a1b57b5ad52f151da17ca5d4a32dfe2",
"status": "verified",
"task_id": "S8-06"
},
{
"bytes": 1082,
"implementation_status": "verified",
"path": "coverage/sim-display-families-s8-07.report.json",
"role": "display_families",
"schema": "sim-display-families-s8-07-report.v1",
"sha256": "9318c909e2274f005451900a480f280a2469fa3c667695e1b00a3f5ccc028cf4",
"status": "verified",
"task_id": "S8-07"
},
{
"bytes": 5535,
"implementation_status": "verified",
"path": "coverage/machine-families-s8-08.report.json",
"role": "machine_families",
"schema": "machine-families-s8-08-report.v1",
"sha256": "9622d9551e759b3bf8cba0ed5f48a962affd56ce0c855eab4594e896c96c8a96",
"status": "verified",
"task_id": "S8-08"
},
{
"bytes": 10529,
"implementation_status": "verified",
"path": "coverage/runtime-extensions-s8-09.report.json",
"role": "runtime_extensions",
"schema": "runtime-extensions-s8-09-report.v1",
"sha256": "2e5ef1318e681b96d3d01361c3ab4bb13ac61f06be101b2ab7991fc6caa629cf",
"status": "verified",
"task_id": "S8-09"
},
{
"bytes": 5781,
"path": "coverage/native-linuxcnc-case-conditions.report.json",
"role": "real_native_regression",
"schema": "native-linuxcnc-case-conditions.v1",
"sha256": "52b326160c58203444fdc4dd8b7a162f96aeee0ed886ed3c2871c34e754de94b",
"status": "verified",
"task_id": "REAL-CASE-CONDITIONS-01"
},
{
"bytes": 2027,
"path": "coverage/native-oracle-closure.report.json",
"role": "official_oracle_boundary",
"schema": "native-oracle-closure-report.v1",
"sha256": "d001ce551dde7451efa113ec986f34d631c2ff9d14e7e9135377033ce1f1fb53",
"status": "verified",
"task_id": "P8-01"
},
{
"bytes": 6180,
"path": "coverage/browser-matrix-remediation.report.json",
"role": "browser_matrix",
"schema": "browser-matrix-remediation.v1",
"sha256": "8eacc6c6e168df19fc2082c1788ce3e5c025e9b528cccc0c5dcf62a84a8664d7",
"status": "complete",
"task_id": "K8-REL-12"
},
{
"bytes": 7196,
"path": "coverage/release-candidate-gate.report.json",
"role": "release_gate",
"schema": "release-candidate-gate.v1",
"sha256": "ff46025b4d03a4ab002d22a4f6101c213a702ff6b36dc688274304f79ef8a7a8",
"status": "blocked"
}
],
"real_regression": {
"native_case_conditions": "verified",
"technical": {
"commands": [
{
"command": [
"bash",
"scripts/build-wasm.sh"
],
"label": "wasm_build_and_native_ctest",
"returncode": 0,
"status": "passed",
"stderr_sha256": "79601cd2eb9ffcb19a9738a297a76641a6c7e77e45be3a15fde7c10c4b9b5d20",
"stderr_tail": "configure: cmake -S /home/mes006/linuxcncWebWASM/wasm-core -B /home/mes006/linuxcncWebWASM/build-wasm -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=/usr/share/emscripten/cmake/Modules/Platform/Emscripten.cmake -DCMAKE_CROSSCOMPILING_EMULATOR=/usr/bin/node;--experimental-wasm-threads\n",
"stdout_sha256": "861a0a9ae95b8cef9e6b504a14748ba14fa8a5a73519e1d2bde34d9dab6f675c",
"stdout_tail": "st ... Passed 0.00 sec\n Start 19: sim_io_test\n19/20 Test #19: sim_io_test ...................... Passed 0.00 sec\n Start 20: sim_device_io_test\n20/20 Test #20: sim_device_io_test ............... Passed 0.00 sec\n\n100% tests passed, 0 tests failed out of 20\n\nTotal Test time (real) = 0.03 sec\nwasm_build=/home/mes006/linuxcncWebWASM/build-wasm/linuxcnc-sim-core.js\nnative_test=/home/mes006/linuxcncWebWASM/build-native/sim_api_test\nnative_protocol_test=/home/mes006/linuxcncWebWASM/build-native/sim_protocol_test\nwasm_kinematics_test=/home/mes006/linuxcncWebWASM/build-wasm/sim_kinematics_wasm_test.js\nwasm_hal_test=/home/mes006/linuxcncWebWASM/build-wasm/sim_hal_wasm_test.js\nwasm_source_unit_test=/home/mes006/linuxcncWebWASM/build-wasm/sim_source_unit_adapter_wasm_test.js\n"
},
{
"command": [
"ctest",
"--test-dir",
"build-native",
"--output-on-failure"
],
"label": "native_ctest",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "abaf2510da92421bd302a77c23f0045196482d356764f8bcb19fe8f94b91c324",
"stdout_tail": "test ................ Passed 0.00 sec\n Start 15: sim_kinematics_registry_test\n15/20 Test #15: sim_kinematics_registry_test ..... Passed 0.00 sec\n Start 16: sim_kinematics_motion_test\n16/20 Test #16: sim_kinematics_motion_test ....... Passed 0.00 sec\n Start 17: sim_kinematics_feedback_test\n17/20 Test #17: sim_kinematics_feedback_test ..... Passed 0.00 sec\n Start 18: sim_kinematics_home_limit_test\n18/20 Test #18: sim_kinematics_home_limit_test ... Passed 0.00 sec\n Start 19: sim_io_test\n19/20 Test #19: sim_io_test ...................... Passed 0.00 sec\n Start 20: sim_device_io_test\n20/20 Test #20: sim_device_io_test ............... Passed 0.00 sec\n\n100% tests passed, 0 tests failed out of 20\n\nTotal Test time (real) = 0.03 sec\n"
},
{
"command": [
"node",
"web/worker/test_authoritative_kinematics_s6.mjs"
],
"label": "web/worker/test_authoritative_kinematics_s6.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "462ecdac6d757e2f36df5c66c9d9d1c5c4596cef5585dc9ef5c2353f0a4a2d50",
"stdout_tail": "{\"schema\":\"authoritative-kinematics-s6-sample.v1\",\"status\":\"verified\",\"context_id\":\"linuxcnc-2.10.0-pre0-wasm-m1-py-c1\",\"supported\":{\"type\":\"corexy\",\"pose\":[4,2,3],\"joints\":[6,2,3],\"endpoint_hash\":\"fnv1a64:e9356bbd07e346b4\"},\"parity\":{\"mode\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:e9356bbd07e346b4\",\"actual_hash\":\"fnv1a64:e9356bbd07e346b4\"},\"recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:179f9db1e698d8a3\",\"actual_hash\":\"fnv1a64:179f9db1e698d8a3\"}},\"checkpoint_hash\":\"fnv1a64:b0841e6a6279e0ce\",\"unsupported\":{\"type\":\"puma\",\"code\":\"authoritative_kinematics_unsupported\"},\"boundaries\":[\"other non-trivkins families remain queued for later slices\",\"official LinuxCNC kinematics oracle remains SOURCE_BLOCKED\"]}\n"
},
{
"command": [
"node",
"web/worker/test_authoritative_kinematics_s6_04.mjs"
],
"label": "web/worker/test_authoritative_kinematics_s6_04.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "95169ca50193d7eeccb7356cfa22145c30b35eac35a97f5e730349b0de262b96",
"stdout_tail": "]],\"joint_semantics\":[\"AD\",\"BD\",\"CD\"]},\"endpoint_hash\":\"fnv1a64:8aa05a6abc6d5b50\"},\"parity\":{\"mode\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:8aa05a6abc6d5b50\",\"actual_hash\":\"fnv1a64:8aa05a6abc6d5b50\"},\"recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:80734148737fcdaf\",\"actual_hash\":\"fnv1a64:80734148737fcdaf\"}},\"checkpoint_hash\":\"fnv1a64:257785be8e73ceae\",\"unsupported\":[{\"type\":\"xyzac-trt\",\"code\":\"authoritative_kinematics_unsupported\"},{\"type\":\"puma\",\"code\":\"authoritative_kinematics_unsupported\"}],\"boundaries\":[\"TRT, serial robot, Delta, Hexapod, Pentapod and switch/user families remain queued for later slices\",\"official LinuxCNC kinematics oracle remains SOURCE_BLOCKED\",\"tripod native/WASM golden is implementation evidence, not official oracle evidence\"]}\n"
},
{
"command": [
"node",
"web/worker/test_authoritative_kinematics_s7_03.mjs"
],
"label": "web/worker/test_authoritative_kinematics_s7_03.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "7624f212d7a0ad7c59ee0eb5b13fc2120e6ed66e5ae68a8206b55755ea4cc620",
"stdout_tail": ".0000000002803],\"endpoint_hash\":\"fnv1a64:9df35c35a99dcff9\"},\"parity\":{\"mode\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:9df35c35a99dcff9\",\"actual_hash\":\"fnv1a64:9df35c35a99dcff9\"},\"recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:6429b034483d2f6e\",\"actual_hash\":\"fnv1a64:6429b034483d2f6e\"}},\"checkpoint_hash\":\"fnv1a64:b554f91256ee206a\",\"unsupported\":{\"type\":\"xyzac-trt\",\"code\":\"authoritative_kinematics_unsupported\"},\"range\":{\"code\":\"scheduler\",\"message_key\":\"authoritative_kinematics_range\"},\"geometry\":{\"radius\":130.25,\"rod_length\":269,\"tower_layout\":\"120-degree equilateral\"},\"boundaries\":[\"official kinematics oracle remains SOURCE_BLOCKED\",\"TRT/robot/Hexapod/Pentapod/switch/user remain queued\",\"missing ldelta HAL resources are retained as configuration gaps\"]}\n"
},
{
"command": [
"node",
"web/worker/test_authoritative_kinematics_s7_04.mjs"
],
"label": "web/worker/test_authoritative_kinematics_s7_04.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "656ff23b047c61f3698556d6cbadb8bb2c602889335d8ccf78575de76c92a5c8",
"stdout_tail": "10.000000000717074,10.000000000717074],\"endpoint_hash\":\"fnv1a64:1b5b7845cc279e47\"},\"parity\":{\"mode\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:1b5b7845cc279e47\",\"actual_hash\":\"fnv1a64:1b5b7845cc279e47\"},\"recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:4456b951ad95e2ec\",\"actual_hash\":\"fnv1a64:4456b951ad95e2ec\"}},\"checkpoint_hash\":\"fnv1a64:db424cc8ecea9a45\",\"singular\":{\"message_key\":\"authoritative_kinematics_singular\"},\"unsupported\":{\"type\":\"xyzac-trt\",\"code\":\"authoritative_kinematics_unsupported\"},\"geometry\":{\"platform_radius\":10,\"thigh_length\":10,\"shin_length\":14,\"foot_radius\":6},\"boundaries\":[\"official kinematics oracle remains SOURCE_BLOCKED\",\"TRT/robot/Hexapod/Pentapod/switch/user remain queued\",\"missing rdelta HAL resources remain configuration gaps\"]}\n"
},
{
"command": [
"node",
"web/worker/test_authoritative_sim_task_s6.mjs"
],
"label": "web/worker/test_authoritative_sim_task_s6.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "c40f3107fb25e8eebed74b826337908bc005077d1f0c2140dbde7c8bb3a87f9d",
"stdout_tail": "\"fixed_tick_phases\":[\"reconcile\",\"task\",\"tp\",\"kinematics\",\"motion\",\"hal_io\",\"callbacks\",\"publish\"]},\"parity\":{\"mode\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:2cb42c594943f07b\",\"actual_hash\":\"fnv1a64:2cb42c594943f07b\"},\"one_x_recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:8d47fffda5edd3da\",\"actual_hash\":\"fnv1a64:8d47fffda5edd3da\"},\"fast_recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:8d47fffda5edd3da\",\"actual_hash\":\"fnv1a64:8d47fffda5edd3da\"}},\"endpoint_hash\":\"fnv1a64:2cb42c594943f07b\",\"authoritative_hash\":\"fnv1a64:a3603848d8533846\",\"task_hash\":\"fnv1a64:27f97adf789499ce\",\"checkpoint_hash\":\"fnv1a64:61445b64e9d439c0\",\"boundaries\":[\"non-trivkins kinematics remain S6-03+\",\"full LinuxCNC canonical/native oracle remains explicitly blocked\"]}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_selected_case.mjs"
],
"label": "web/worker/test_axis3_selected_case.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "2fac97a3555e431b1e836727ac5315c684e73aae9dea9d40472dd13f098b1963",
"stdout_tail": "s-tutorial/3axis-tutorial.hal\",\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial\",\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial_mm.var\",\"linuxcnc/configs/nc_files/3dtest.ngc\",\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/tool.tbl\",\"linuxcnc/linuxcnc.gif\"],\"loader\":{\"fetched\":7,\"missing\":0,\"state_hash\":\"fnv1a64:94e21a5c7a684e63\"},\"startup\":{\"state\":\"TASK_READY\",\"hal_blocked\":0},\"operation_sequence\":[\"HOME\",\"JOG_START\",\"SIM_STEP\",\"JOG_STOP\",\"SET_OVERRIDE\",\"PROGRAM_LOAD\",\"PROGRAM_RUN\",\"CHECKPOINT\",\"SPINDLE_COMMAND\",\"COOLANT_COMMAND\",\"TOOL_PREPARE\",\"TOOL_CHANGE\",\"ESTOP\",\"IO_RECOVER\",\"RECOVER\"],\"observed\":{\"jog_x\":0.016,\"program_status\":\"completed\",\"checkpoint_hash\":\"fnv1a64:048eca9e5dd4e2df\",\"recovery\":\"recovered\",\"final_hash\":\"fnv1a64:4509e2eaf38657d7\"}}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_hal_adapter.mjs"
],
"label": "web/worker/test_axis3_tutorial_hal_adapter.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "0b683d9b780d5074eb5196c9424311cbe158eecb51b352828aa6777ac62bf0b9",
"stdout_tail": "{\"schema\":\"axis3-tutorial-hal-adapter.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"hal\":{\"record_count\":37,\"loadrt\":[\"trivkins\",\"motmod\",\"ddt\",\"hypot\"],\"net_count\":21,\"web_equivalent\":\"./3axis-tutorial\",\"capability\":\"WEB-EQUIV\"},\"startup\":{\"state\":\"TASK_READY\",\"hal_blocked\":0,\"state_hash\":\"fnv1a64:a7f7c05da5d79f9d\"}}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_motion.mjs"
],
"label": "web/worker/test_axis3_tutorial_motion.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "2c483fcd28e27f12d4cefab81fb4b5c070d57be6125b0d368fad0e09f5155b7e",
"stdout_tail": "{\"schema\":\"axis3-tutorial-motion.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"axes\":[\"X\",\"Y\",\"Z\"],\"home\":true,\"positions\":{\"x\":0.08,\"y\":-0.025,\"z\":-0.01},\"limits\":{\"blocked_code\":\"motion_faulted\",\"cleared\":true},\"following_error\":{\"blocked_code\":\"motion_faulted\"},\"snapshot_hash\":\"fnv1a64:5d30187951be107a\"}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_persistence.mjs"
],
"label": "web/worker/test_axis3_tutorial_persistence.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "9ce3fc6579febc30a2a01bdcf451142e8ad4b2fdb27812380c7c17874dbb0858",
"stdout_tail": "{\"schema\":\"axis3-tutorial-persistence.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"exact_runtime_files\":[\"3axis-tutorial_mm.var\",\"tool.tbl\",\"position_mm.txt\"],\"checkpoint_hash\":\"fnv1a64:0c1d1b22db211940\",\"continuous_hash\":\"fnv1a64:9a5dd34aba49674c\",\"recovered_hash\":\"fnv1a64:9a5dd34aba49674c\",\"endpoint_equal\":true,\"blocked_bad_checkpoint\":\"blocked\",\"event_cursor\":6}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_program.mjs"
],
"label": "web/worker/test_axis3_tutorial_program.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "c08d5b1b2c4102aba1b2eb67c474d98425b00676aa766f0c0a31229bfdd0f51f",
"stdout_tail": "{\"schema\":\"axis3-tutorial-program.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"units\":\"G21\",\"distance_modes\":[\"G90\",\"G91\"],\"run\":{\"paused\":true,\"resumed\":true,\"final\":\"completed\",\"state\":\"STOPPED\"},\"mdi\":{\"blocked_while_paused\":\"mdi_while_program_active\",\"status\":\"verified\",\"distance_mode\":90,\"position\":{\"x\":2,\"y\":3,\"z\":-1}},\"restart\":\"loaded\",\"step\":\"verified\",\"invalid_code\":\"program_interpreter\",\"final_hash\":\"fnv1a64:35cfce230eb7f9ee\"}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_sequence.mjs"
],
"label": "web/worker/test_axis3_tutorial_sequence.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "5e6a434cfccb61dc73274c03ec7bee38f54acf32f07c8e5d0126634d2afcca67",
"stdout_tail": "MAND_RESULT\",\"status\":\"verified\",\"code\":\"sim_io_ok\",\"state_hash\":\"fnv1a64:135fb60b4301fb56\"},{\"operation\":\"TOOL_PREPARED_T1\",\"kind\":\"TOOL_PREPARED\",\"seq\":19,\"tick\":11,\"response_kind\":\"COMMAND_RESULT\",\"status\":\"verified\",\"code\":\"sim_io_ok\",\"state_hash\":\"fnv1a64:ddbc5ae64aecc679\"},{\"operation\":\"TOOL_CHANGE_T1\",\"kind\":\"TOOL_CHANGE\",\"seq\":20,\"tick\":11,\"response_kind\":\"COMMAND_RESULT\",\"status\":\"verified\",\"code\":\"sim_io_ok\",\"state_hash\":\"fnv1a64:6bdc3f14d85b7ae7\"},{\"operation\":\"TOOL_CHANGED_T1\",\"kind\":\"TOOL_CHANGED\",\"seq\":21,\"tick\":11,\"response_kind\":\"COMMAND_RESULT\",\"status\":\"verified\",\"code\":\"sim_io_ok\",\"state_hash\":\"fnv1a64:5c31c79e9a721120\"}],\"checkpoint_hash\":\"fnv1a64:402cfc050703daba\",\"endpoint_hash\":\"fnv1a64:af27acb00b551d90\",\"sequence_hash\":\"fnv1a64:b30e83e92d4ffe52\",\"first_error\":null}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_startup.mjs"
],
"label": "web/worker/test_axis3_tutorial_startup.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "4285c54ef6aebb1ee183707228b60896b0625bbca0a2eceeae6966692abf861d",
"stdout_tail": "{\"schema\":\"axis3-tutorial-startup.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"transitions\":[\"NEW\",\"MOUNTED\",\"PARSED\",\"RESOLVED\",\"CORE_CREATED\",\"HAL_READY\",\"TASK_READY\"],\"loader_hash\":\"fnv1a64:94e21a5c7a684e63\",\"startup_hash\":\"fnv1a64:a7f7c05da5d79f9d\",\"deterministic\":true,\"generated\":[\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial_mm.var\"],\"hal_blocked\":0}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_tool_io.mjs"
],
"label": "web/worker/test_axis3_tutorial_tool_io.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "17cb816f695a789fb79af47eb1625defea670342d1e9a7f9d25ac4b5a34c9315",
"stdout_tail": "{\"schema\":\"axis3-tutorial-tool-io.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"tool\":{\"current\":1,\"changed\":true,\"busy_change_code\":\"sim_io_state\"},\"spindle\":{\"command_rpm\":600,\"speed_rpm\":600,\"at_speed\":true},\"coolant\":{\"mist\":true,\"flood\":true,\"fault_blocked\":true},\"probe\":{\"state\":\"tripped\",\"position\":{\"x\":1,\"y\":2,\"z\":-3}},\"estop\":{\"blocked_code\":\"sim_io_estop\",\"recovered\":true},\"final_hash\":\"fnv1a64:ab919686d0398b3c\"}\n"
},
{
"command": [
"node",
"web/worker/test_axis3_visible_completion.mjs"
],
"label": "web/worker/test_axis3_visible_completion.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "621f5980f9ee4c56dafd57e108d3dd1c410aa77e8716c5b574cf887875e0a52e",
"stdout_tail": "{\"schema\":\"axis3-visible-completion.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"final_pose\":{\"x\":0,\"y\":0,\"z\":0},\"task_state\":\"STOPPED\",\"program_status\":\"completed\"}\n"
},
{
"command": [
"node",
"web/worker/test_axis_state.mjs"
],
"label": "web/worker/test_axis_state.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "c62347c275199275e041f6091b970fccc4981ef4775bde1a1d1853422bea456c",
"stdout_tail": "{\"schema\":\"axis-state-v1-sample\",\"status\":\"verified\",\"states\":[\"ESTOP\",\"ESTOP_RESET\",\"OFF\",\"ON\",\"HOME\",\"IDLE\",\"RUNNING\",\"PAUSED\"],\"cases\":[\"ESTOP\",\"ESTOP_RESET\",\"OFF\",\"ON\",\"HOME\",\"IDLE\",\"RUNNING\",\"PAUSED\"]}\n"
},
{
"command": [
"node",
"web/worker/test_configuration_batch.mjs"
],
"label": "web/worker/test_configuration_batch.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "dfdd33f0386a058f002a4fbedb6a963ac12af5dc870f7a608a3d03941a64c52c",
"stdout_tail": "{\"schema\":\"configuration-batch-s2-sample.v1\",\"status\":\"verified\",\"total\":264,\"ready\":56,\"blocked\":208,\"batch_hash\":\"fnv1a64:8e61897622fda66f\",\"native_state_hash\":\"fnv1a64:0181097fa846342d\",\"wasm_state_hash\":\"fnv1a64:0181097fa846342d\",\"worker_hash\":\"fnv1a64:152b83c479037715\",\"checkpoint_hash\":\"fnv1a64:9784c7e4930e619f\"}\n"
},
{
"command": [
"node",
"web/worker/test_configuration_corexy_s7_05.mjs"
],
"label": "web/worker/test_configuration_corexy_s7_05.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "29dea60c2a6741aa92259bbea8019c64690fcfe6f7dc6f77e5622191a3a35c81",
"stdout_tail": "{\"schema\":\"configuration-corexy-s7-05-sample.v1\",\"status\":\"verified\",\"entrypoint\":\"linuxcnc/configs/sim/axis/corexy/corexy_by_kins.ini\",\"include_graph\":[\"linuxcnc/configs/sim/axis/corexy/corexy_by_kins.ini\",\"linuxcnc/configs/sim/axis/corexy/corexy_base.inc\"],\"hal_preflight\":{\"status\":\"ready\",\"record_count\":72,\"blocked_count\":0},\"runtime_startup\":{\"status\":\"ready\",\"state\":\"TASK_READY\",\"generated_resources\":[\"linuxcnc/configs/sim/axis/corexy/linuxcnc.var\",\"linuxcnc/configs/sim/axis/corexy/tool.tbl\"],\"state_hash\":\"fnv1a64:d3e31a8e7bd69348\"},\"boundaries\":[\"static HAL preflight is verified\",\"missing parameter/tool files are materialized at their exact configured paths\",\"no basename substitution is fabricated\"]}\n"
},
{
"command": [
"node",
"web/worker/test_configuration_preflight.mjs"
],
"label": "web/worker/test_configuration_preflight.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "27f51a643e31903d55310440f83e7fc3758399aab8420c1fa4b809821037abf4",
"stdout_tail": "configuration_preflight=passed\n"
},
{
"command": [
"node",
"web/worker/test_configuration_startup_runtime.mjs"
],
"label": "web/worker/test_configuration_startup_runtime.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "f16a32ff78ac0c48c7070d76f9b950b1b1a061c6f9c5cb6a128741a96f9f6e20",
"stdout_tail": "configuration_startup_runtime=passed state_hash=fnv1a64:0181097fa846342d resource_hash=fnv1a64:05c778ded69fb8e2\n"
},
{
"command": [
"node",
"web/worker/test_contracts.mjs"
],
"label": "web/worker/test_contracts.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "4f3a3f5cd65c7278590c3a8927293a4f83c7e5718f354039649cc5991c894001",
"stdout_tail": "contracts=passed schemas=sim_task.v1,command-envelope.v1,snapshot.v1,event-log.v1,workspace-package.v1 tick=5 cursor=4\n"
},
{
"command": [
"node",
"web/worker/test_corexy_dual_path_s8_05.mjs"
],
"label": "web/worker/test_corexy_dual_path_s8_05.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "fa5123c5384ba6c00e007f808b5d4390160c2eb9e04be1d0c33e68ee76afdfa0",
"stdout_tail": "a5082bab8c60d62\"},\"checkpoint_hash\":\"fnv1a64:da13bd1a376c3d3c\"},{\"path\":\"linuxcnc/configs/sim/axis/corexy/corexy_by_hal.ini\",\"mode\":\"hal\",\"joints\":[6,2,3],\"endpoint_hash\":\"fnv1a64:530e70e7e19940d5\",\"hal_records\":100,\"mode_parity\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:530e70e7e19940d5\",\"actual_hash\":\"fnv1a64:530e70e7e19940d5\"},\"recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:ba5082bab8c60d62\",\"actual_hash\":\"fnv1a64:ba5082bab8c60d62\"},\"checkpoint_hash\":\"fnv1a64:4981fd79ff5691c3\"}],\"distinction\":{\"kins\":\"corexykins homes motor joints directly\",\"hal\":\"trivkins + corexy_by_hal routes Cartesian commands through alpha/beta HAL transform\"},\"boundary\":\"native/WASM corexy HAL formula oracle remains separately source-verified; other case families remain queued\"}\n"
},
{
"command": [
"node",
"web/worker/test_device_io.mjs"
],
"label": "web/worker/test_device_io.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "730c8d6c97dde3895db9ba5b5676eed82c06b1b3238626343b141defb9cb62e5",
"stdout_tail": "{\"schema\":\"device-io-worker-sample.v1\",\"status\":\"verified\",\"tick\":12,\"count\":40,\"state_hash\":\"fnv1a64:d303b40b131396ff\",\"worker_tick\":2,\"worker_state_hash\":\"fnv1a64:128eb22bfba5d6f9\",\"checkpoint_hash\":\"fnv1a64:c14d5dcf0739ef6d\"}\n"
},
{
"command": [
"node",
"web/worker/test_device_recovery.mjs"
],
"label": "web/worker/test_device_recovery.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "f17aca6b3395e9326b8b2bdfd0359ecc5e73f16de63507bfe2c48d95969d15ac",
"stdout_tail": "device_recovery=passed state_hash=fnv1a64:cbe6e101047659e5\n"
},
{
"command": [
"node",
"web/worker/test_endpoint_replay_s4.mjs"
],
"label": "web/worker/test_endpoint_replay_s4.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "311d1cc43763c482be035b5b12e41c95b3d1d3bfeef0f0899b07bf24d3051cd5",
"stdout_tail": "re0-wasm-m1-py-c1\",\"modes\":{\"one_x\":\"fnv1a64:719f460e6bd88fa3\",\"fast\":\"fnv1a64:719f460e6bd88fa3\",\"single_step\":\"fnv1a64:58e9db9b94754b91\"},\"parity\":{\"mode_equal\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:719f460e6bd88fa3\",\"actual_hash\":\"fnv1a64:719f460e6bd88fa3\"},\"duplicate_operation_equal\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:719f460e6bd88fa3\",\"actual_hash\":\"fnv1a64:719f460e6bd88fa3\"},\"recovery_equal\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:14b147c6f19bf5e3\",\"actual_hash\":\"fnv1a64:14b147c6f19bf5e3\"},\"trace_equal\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:14b147c6f19bf5e3\",\"actual_hash\":\"fnv1a64:14b147c6f19bf5e3\"}},\"first_divergence\":null,\"checkpoint_hash\":\"fnv1a64:ae9e6225ea49edde\",\"trace_hash\":\"fnv1a64:d96cb706cf4ec6bc\"}\n"
},
{
"command": [
"node",
"web/worker/test_full_simulation_s4.mjs"
],
"label": "web/worker/test_full_simulation_s4.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "400b85463eca858c28e1151ae4b17adde298da674656e886a0f0b4e951e7b148",
"stdout_tail": "rrent_line\":1},\"motion\":\"fnv1a64:576eb95f1fe3dc0d\",\"plc\":\"fnv1a64:28dbc52f68ec6d9d\",\"hal\":\"fnv1a64:6fb2cf74df990a55\",\"device_io\":\"fnv1a64:51775281b8e08af6\",\"python\":\"fnv1a64:c47ee401132f56d5\",\"callbacks\":\"fnv1a64:b2f1b2de0f02b1f6\"},\"recover\":{\"tick\":1,\"task\":{\"state\":\"RUNNING\",\"mode\":\"AUTO\",\"program_status\":\"running\",\"current_line\":1},\"motion\":\"fnv1a64:652166fd17776833\",\"plc\":\"fnv1a64:2e69e18471ba84ff\",\"hal\":\"fnv1a64:d6c68eccad41cbc8\",\"device_io\":\"fnv1a64:70a8ea706931237f\",\"python\":\"fnv1a64:c481e001133185e0\",\"callbacks\":\"fnv1a64:9ff5f9ff975b0155\"}},\"parity\":{\"one_x_fast_equal\":true,\"recovery_status\":\"recovered\",\"recovery_tick\":true},\"hashes\":{\"one_x\":\"fnv1a64:234553c7663107d7\",\"fast\":\"fnv1a64:234553c7663107d7\",\"single_step\":\"fnv1a64:d190e23a4e7c7cfa\",\"recover\":\"fnv1a64:ab5153954a79d1a0\"}}\n"
},
{
"command": [
"node",
"web/worker/test_hal_preflight.mjs"
],
"label": "web/worker/test_hal_preflight.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "b905759e2921807f35d9fdf6085933871523b5f5f0d66eeeefb8f4ae939b1315",
"stdout_tail": "hal_worker_preflight=passed\n"
},
{
"command": [
"node",
"web/worker/test_hal_runtime.mjs"
],
"label": "web/worker/test_hal_runtime.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "8ee11fee1f021a328d403f7e29820900fc26d6079f64803b599cffafe78eee93",
"stdout_tail": "hal_runtime=passed tick=1 components=3 worker_tick=1\n"
},
{
"command": [
"node",
"web/worker/test_ini_parser.mjs"
],
"label": "web/worker/test_ini_parser.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "600b0fd0bd19fb4e68adbea95df09c401cb9ae1905979078ebafd5d2878aa860",
"stdout_tail": "ini_parser=passed sections=3 graph=2 state_hash=fnv1a64:de67bf9882687207\n"
},
{
"command": [
"node",
"web/worker/test_io_ack.mjs"
],
"label": "web/worker/test_io_ack.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "bfbcda8b9c187024c056226ae2e0e951cd3085494ccb9ef9a2c5a1d7dcfaacd1",
"stdout_tail": "io_ack=passed timeout=timed_out worker=io_ack_late hash=fnv1a64:d017728dd8296b29\n"
},
{
"command": [
"node",
"web/worker/test_machine_families_s8_08.mjs"
],
"label": "web/worker/test_machine_families_s8_08.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "a46fcb0030991852d505eb0243a8b9e0f736a6b085f89186376862a5f41d568c",
"stdout_tail": "ash\":\"fnv1a64:9b214addf253ec33\"},\"checkpoint_hash\":\"fnv1a64:84a0a6512d681b81\",\"fast_endpoint_hash\":\"fnv1a64:8e59d93e9482b97c\"},{\"path\":\"linuxcnc/configs/sim/axis/rdelta.ini\",\"type\":\"rotarydelta\",\"startup\":\"TASK_READY\",\"joints\":[10.000000000717074,10.000000000717074,10.000000000717074],\"endpoint_hash\":\"fnv1a64:a7d4f465f2dcc6ba\",\"mode_parity\":{\"equal\":true,\"expected_hash\":\"fnv1a64:a7d4f465f2dcc6ba\",\"actual_hash\":\"fnv1a64:a7d4f465f2dcc6ba\"},\"recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:233fdd933c098ef1\",\"actual_hash\":\"fnv1a64:233fdd933c098ef1\"},\"checkpoint_hash\":\"fnv1a64:133f9e6fc397beba\",\"fast_endpoint_hash\":\"fnv1a64:a7d4f465f2dcc6ba\"}],\"boundary\":\"Delta lineardelta/rotarydelta only; official kinematics oracle remains separately blocked; other machine families queued\"}\n"
},
{
"command": [
"node",
"web/worker/test_minimal_xyz_vertical_s8_04.mjs"
],
"label": "web/worker/test_minimal_xyz_vertical_s8_04.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "f0391a463bdd54e4e370e79e304c7690d9a496f054118239d52d8d4cce8af985",
"stdout_tail": "{\"schema\":\"minimal-xyz-vertical-s8-04-sample.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/minimal_xyz.ini\",\"startup_state\":\"TASK_READY\",\"jog\":{\"tick\":10,\"x\":0.020000000000000004},\"override\":{\"feed\":0.5,\"spindle\":1.2},\"program\":{\"status\":\"completed\",\"line\":5,\"mdi\":\"verified\"},\"recovery\":{\"status\":\"recovered\",\"parity\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:fe976bb5bf649a72\",\"actual_hash\":\"fnv1a64:fe976bb5bf649a72\"}},\"estop\":{\"blocked_code\":\"sim_io_estop\",\"recovered\":\"READY\"},\"endpoint_hash\":\"fnv1a64:fe976bb5bf649a72\",\"checkpoint_hash\":\"fnv1a64:de006d1f39f57b23\"}\n"
},
{
"command": [
"node",
"web/worker/test_motion_state.mjs"
],
"label": "web/worker/test_motion_state.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "6345bb8b33d72a289a7aeaba0b8d6a1daad5572943e121f2dece373ae3dfc39c",
"stdout_tail": "motion_state=passed jog_x=0.02 fault=limit hash=fnv1a64:14e7aeaa4e55b254\n"
},
{
"command": [
"node",
"web/worker/test_plc_runtime.mjs"
],
"label": "web/worker/test_plc_runtime.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "c6c6ee4249124b09e18b57630c7ea3ad53269c02a2a52edd0dc0f8e5c97ce440",
"stdout_tail": "plc_runtime=passed count=2 dropped=0 worker_tick=1\n"
},
{
"command": [
"node",
"web/worker/test_program_control.mjs"
],
"label": "web/worker/test_program_control.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "e92789d66731d7416ecec0d5e594f2c7a3f62d9353384abe35381eb163c5feb1",
"stdout_tail": "program_control=passed while=3 call=2 if=else depth_budget=verified\n"
},
{
"command": [
"node",
"web/worker/test_python_api_s3.mjs"
],
"label": "web/worker/test_python_api_s3.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "ef20abcf638153460174e4d9c87c2cba65996aec22457505790f9c74d867ac0b",
"stdout_tail": "{\"schema\":\"python-api-s3-sample.v1\",\"status\":\"verified\",\"manifest_version\":\"0.29.4\",\"bridge_hash\":\"fnv1a64:0b74fea2bb927042\",\"restored_hash\":\"fnv1a64:0b74fea2bb927042\",\"session_tick\":0,\"checkpoint_hash\":\"fnv1a64:d4bfaf1076f3964c\"}\n"
},
{
"command": [
"node",
"web/worker/test_python_bridge.mjs"
],
"label": "web/worker/test_python_bridge.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "fc8f0fe87b0f5108877980686b1ea3abbfe415a27d60d126ed0a2f52d4aa3209",
"stdout_tail": "python_bridge=passed calls=7 errors=4 hash=fnv1a64:21646389b3adc61b\n"
},
{
"command": [
"node",
"web/worker/test_python_callbacks.mjs"
],
"label": "web/worker/test_python_callbacks.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "531b7be35a842a946c7cac8bebfef9d45756969fdae33fa470598fe353d4be78",
"stdout_tail": "python_callbacks=passed remap=3 errors=1 worker=real_hardware_excluded\n"
},
{
"command": [
"node",
"web/worker/test_python_callbacks_s3.mjs"
],
"label": "web/worker/test_python_callbacks_s3.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "58a51e782520c9c2cdfdf60bade4c22544d76964603b13c148235b9170d41dd2",
"stdout_tail": "{\"schema\":\"python-callbacks-s3-sample.v1\",\"status\":\"verified\",\"calls\":3,\"errors\":8,\"callback_hash\":\"fnv1a64:67e7a5316f57b53d\",\"worker_hash\":\"fnv1a64:88c1a0e2e868fbc4\",\"checkpoint_hash\":\"fnv1a64:05ceecd05af67de8\"}\n"
},
{
"command": [
"node",
"web/worker/test_python_session.mjs"
],
"label": "web/worker/test_python_session.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "674713609dc1f223896f18a058acec083c0369adaa1ce6bc432ea68fb89dda29",
"stdout_tail": "python_session=passed hash=fnv1a64:d415e295fd0eed31\n"
},
{
"command": [
"node",
"web/worker/test_recovery_offline_faults.mjs"
],
"label": "web/worker/test_recovery_offline_faults.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "912523ab087f74502eb39173e61e687b63b413cb9aaa886a615455ce209afbf8",
"stdout_tail": "recovery_offline_faults=passed scenarios=5\n"
},
{
"command": [
"node",
"web/worker/test_recovery_s3.mjs"
],
"label": "web/worker/test_recovery_s3.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "e8c777040d3a2ae725b29b4b816560010cddef2ece0945f5e80191609ccd851a",
"stdout_tail": "{\"schema\":\"recovery-s3-sample.v1\",\"status\":\"verified\",\"crash_count\":1,\"restart_count\":1,\"recovery_hash\":\"fnv1a64:763cd1217e060ddf\",\"package_hash\":\"fnv1a64:06530a6164a3fcec\",\"state_hash\":\"fnv1a64:d7a8b5f5a048487f\"}\n"
},
{
"command": [
"node",
"web/worker/test_replay.mjs"
],
"label": "web/worker/test_replay.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "3f951633795ca00a23ad9fbea670ccdd29679c6cc12f7438e75fb976a28c22a8",
"stdout_tail": "replay=passed cursor=3 tick=9\n"
},
{
"command": [
"node",
"web/worker/test_resource_intro_graphic_s7_06.mjs"
],
"label": "web/worker/test_resource_intro_graphic_s7_06.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "9aa66803c98251ee4bae2c7215a6a673a78530e4d7bda0be92e4114366e0a47a",
"stdout_tail": "ild_INI.py\",\"statement\":\"print(\\\"INTRO_GRAPHIC = linuxcnc.gif\\\", file=file)\",\"sha256\":\"487639b7fdc52127b13076a81eb0f1a599f527051011d798b19339487fe230f2\"},\"resource\":{\"type\":\"image\",\"path\":\"linuxcnc/linuxcnc.gif\",\"bytes\":11,\"asset_sha256\":\"6c6da4afc3ecdc1b812dd6878318da0120996bd6889b4dd2ddb480b905d9f4b1\",\"data_hash\":\"fnv1a64:074f2812443c9d8f\"},\"resource_graph\":{\"state_hash\":\"fnv1a64:1842a65975649a25\",\"repeated_state_hash\":\"fnv1a64:1842a65975649a25\",\"deterministic\":true},\"wrong_key\":{\"status\":\"blocked\",\"code\":\"resource_missing\",\"type\":\"tool_table\"},\"wrong_section\":{\"status\":\"blocked\",\"code\":\"resource_missing\",\"type\":\"image\"},\"boundaries\":[\"only DISPLAY.INTRO_GRAPHIC linuxcnc.gif uses the canonical shared asset\",\"generic basename and tool/parameter/HAL/program substitution remains blocked\"]}\n"
},
{
"command": [
"node",
"web/worker/test_resource_resolver.mjs"
],
"label": "web/worker/test_resource_resolver.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "bc37c2f01580bc4adb8e8288fb7ed038b55c45114278888928eb674728049d72",
"stdout_tail": "resource_resolver=passed resolved=7 blocked=0 state_hash=fnv1a64:3f3a016998337082\n"
},
{
"command": [
"node",
"web/worker/test_runtime_mapping.mjs"
],
"label": "web/worker/test_runtime_mapping.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "39d36e2f613f2e0361f361d93a71be3864f980300565a5b3ece959d9737be7ae",
"stdout_tail": "runtime_mapping=passed errors=18 exclusions=3\n"
},
{
"command": [
"node",
"web/worker/test_sim_case_batch_s8_03.mjs"
],
"label": "web/worker/test_sim_case_batch_s8_03.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "ffa1c661b43a983806fd7b54f5b23f522b145642f62947043c4272ef94bc6c6f",
"stdout_tail": "ash\":\"fnv1a64:a4ab68a146862e0b\",\"startup_hash\":\"fnv1a64:44094ec5ccb824dc\",\"generated_hal\":\"linuxcnc/configs/sim/axis/ja_tests/xz/xz_cmds.hal\"},{\"path\":\"linuxcnc/configs/sim/axis/ja_tests/xz/xz_both.ini\",\"state\":\"TASK_READY\",\"loader_hash\":\"fnv1a64:a98e33012b17653d\",\"startup_hash\":\"fnv1a64:dfb0daf3ee7e0870\",\"generated_hal\":\"linuxcnc/configs/sim/axis/ja_tests/xz/xz_both_cmds.hal\"},{\"path\":\"linuxcnc/configs/sim/axis/ja_tests/xz/xz_both_auto.ini\",\"state\":\"TASK_READY\",\"loader_hash\":\"fnv1a64:df19f8a145f1489d\",\"startup_hash\":\"fnv1a64:6377e82e4920afd8\",\"generated_hal\":\"linuxcnc/configs/sim/axis/ja_tests/xz/xz_both_auto_cmds.hal\"}],\"fixture_policy\":\"user-authorized-runtime-copy\",\"boundary\":\"XZ identity/BOTH/AUTO cases share exact xz.var and xz.tbl inputs; unrelated cases remain outside this batch\"}\n"
},
{
"command": [
"node",
"web/worker/test_sim_case_matrix_s8_06.mjs"
],
"label": "web/worker/test_sim_case_matrix_s8_06.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "ba337b4cb358561db88e6263cf92ab3d15a61ded6b728bc8c1c062778c4fe398",
"stdout_tail": "th\":\"linuxcnc/configs/sim/woodpecker/woodpecker.ini\",\"source_sha256\":\"1948487bf44a5c7d5b32186a6b9f330d55cb61bbab55da4a5834f95439cc0deb\",\"static_status\":\"blocked\",\"loader_status\":\"ready\",\"classification\":\"TASK_READY\",\"fetched_count\":6,\"missing\":[],\"runtime_fixtures\":[{\"case_path\":\"linuxcnc/configs/sim/woodpecker/woodpecker.ini\",\"resource_path\":\"linuxcnc/configs/sim/woodpecker/woodpecker.var\",\"key\":\"PARAMETER_FILE\",\"kind\":\"parameter_file\",\"reason\":\"LinuxCNC restores a missing parameter file as zeroed defaults and creates it on exit\",\"data_hash\":\"fnv1a64:14650fb0739d0383\"}],\"loader_state_hash\":\"fnv1a64:871dd4be4f95f9ce\",\"startup_state\":\"TASK_READY\",\"startup_state_hash\":\"fnv1a64:a327a522476bca50\",\"resource_blocked_count\":0,\"hal_record_count\":52,\"hal_blocked_count\":0,\"first_diagnostic\":null}]}\n"
},
{
"command": [
"node",
"web/worker/test_sim_case_startup_s8_02.mjs"
],
"label": "web/worker/test_sim_case_startup_s8_02.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "7ea7c44db02b66b0896c2f7098bb540031bc5586d56b608f218c17f256fdbce4",
"stdout_tail": "{\"schema\":\"sim-case-startup-s8-02-sample.v1\",\"status\":\"verified\",\"fixture_policy\":\"user-authorized-runtime-copy\",\"cases\":{\"minimal_xyz\":{\"status\":\"ready\",\"state\":\"TASK_READY\",\"runtime_fixture\":\"linuxcnc/configs/sim/axis/minimal_xyz_cmds.hal\",\"loader_hash\":\"fnv1a64:26abfd27afe303aa\",\"startup_hash\":\"fnv1a64:765ca470c81e5470\"},\"corexy_by_kins\":{\"status\":\"ready\",\"state\":\"TASK_READY\",\"fixtures\":[\"linuxcnc/configs/sim/axis/corexy/linuxcnc.var\",\"linuxcnc/configs/sim/axis/corexy/tool.tbl\"],\"loader_hash\":\"fnv1a64:601fe7743440277d\",\"startup_hash\":\"fnv1a64:cfc42d3b1ef963c9\"}},\"boundary\":\"fixtures are copied from executed LinuxCNC/runtime case inputs and are hash-locked; no unrelated basename substitution\"}\n"
},
{
"command": [
"node",
"web/worker/test_sim_ledger.mjs"
],
"label": "web/worker/test_sim_ledger.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "f175ef563ca8cc05c9896179c2a3e5fd98f344abe58d6b47b1cde94706bf34fb",
"stdout_tail": "sim_ledger=passed committed=committed side_effects=1\n"
},
{
"command": [
"node",
"web/worker/test_sim_runner.mjs"
],
"label": "web/worker/test_sim_runner.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "67a259f32dbea3ab4f18ed217a54e27cb4a7f861c9717f18a28d0d02ff916954",
"stdout_tail": "sim_runner=passed mdi_x=3 tick_line=1 recovery=aborted\n"
},
{
"command": [
"node",
"web/worker/test_sim_scheduler.mjs"
],
"label": "web/worker/test_sim_scheduler.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "51af934b1551816f8be723af9722d9ebb28d99964c2f2c7198aba2b36577d2ce",
"stdout_tail": "sim_scheduler=passed tick=10 state_hash=fnv1a64:43447f1547089d09 worker_hash=fnv1a64:36a6b1522011d664\n"
},
{
"command": [
"node",
"web/worker/test_sim_session.mjs"
],
"label": "web/worker/test_sim_session.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "4ecfdf1a0befe56aefecf5172f38872804eef97c860b9407a0d1ee72630d2688",
"stdout_tail": "sim_session=passed calls=28\n"
},
{
"command": [
"node",
"web/worker/test_sim_task.mjs"
],
"label": "web/worker/test_sim_task.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "1e90d07c52cc075a07c8421816a94e522a652f55d8caaba93d16fc6a5179a837",
"stdout_tail": "sim_task=passed state=STOPPED tick_hash=fnv1a64:928337a6581b9b01 recovery_hash=fnv1a64:7c882df8f03bad6c\n"
},
{
"command": [
"node",
"web/worker/test_source_config_s5.mjs"
],
"label": "web/worker/test_source_config_s5.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "f307fe6a839fd2db0676cd4659ab70511b5e451837b3a8788bba52dd68874b4d",
"stdout_tail": "ae3105528e63e8cd307926ddf250ef9f394117b8b8a30f45d859f6fc\",\"status\":\"READY\",\"startup_preflight\":\"static_ready\",\"resource_status\":\"unindexed\",\"diagnostic_code\":null,\"missing_count\":0,\"unresolved_count\":0}],\"counts\":{\"total\":264,\"sim_configs\":216,\"test_configs\":48,\"READY\":56,\"BLOCKED\":208},\"workflow\":{\"batch_schema\":\"configuration-startup-batch.v1\",\"batch_state_hash\":\"fnv1a64:8e61897622fda66f\",\"restore_equal\":true,\"diagnostic_count\":208,\"entrypoint_hash\":\"fnv1a64:ff13e1f1469c5329\"},\"boundaries\":[\"READY is static startup preflight, not an official LinuxCNC runtime oracle\",\"BLOCKED rows retain resource/kinematics diagnostics and are never promoted\",\"full native/WASM/Worker startup probes remain represented by configuration-startup-runtime evidence\"],\"aggregate_hash\":\"fnv1a64:c797e906739b0f50\"}\n"
},
{
"command": [
"node",
"web/worker/test_source_do_s7_01.mjs"
],
"label": "web/worker/test_source_do_s7_01.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "9891132a901dbc7fdea11734c28a15eba29a1df0d4693662c8f477c9ae968d9c",
"stdout_tail": "{\"schema\":\"linuxcnc-source-do-s7-01-sample.v1\",\"status\":\"verified\",\"context_id\":\"linuxcnc-2.10.0-pre0-wasm-m1-py-c1\",\"source\":{\"path\":\"linuxcnc/tests/interp/do-while-break/test.ngc\",\"source_hash\":\"fnv1a64:23daa58d09abf802\"},\"normal\":{\"status\":\"completed\",\"steps\":19,\"named_parameters\":{\"one_pass\":1,\"two_pass\":1,\"three_pass\":1},\"interpreter_state_hash\":\"fnv1a64:0000000086efefe9\"},\"pause_resume\":{\"status\":\"completed\",\"steps\":19,\"hash_equal\":true},\"errors\":{\"malformed_enddo\":\"program_enddo_without_do\",\"depth\":\"program_control_depth\"},\"recovery\":{\"equal\":true,\"difference\":null,\"checkpoint_hash\":\"fnv1a64:903bc2b8647323d8\"},\"boundaries\":[\"LinuxCNC canonical expected output remains SOURCE_BLOCKED\",\"G64/G61 remains S7 follow-up\",\"host/Python/real hardware paths unchanged\"]}\n"
},
{
"command": [
"node",
"web/worker/test_source_g6164_s7_02.mjs"
],
"label": "web/worker/test_source_g6164_s7_02.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "b6eaaedd97cb826234070b019057a05982657d3cb20cfe2a8a823a33a7f5bd74",
"stdout_tail": "rols\":[{\"line\":1,\"mode\":\"continuous\",\"path_tolerance\":0,\"naive_cam_tolerance\":0},{\"line\":2,\"mode\":\"continuous\",\"path_tolerance\":1,\"naive_cam_tolerance\":0},{\"line\":3,\"mode\":\"continuous\",\"path_tolerance\":1,\"naive_cam_tolerance\":2},{\"line\":4,\"mode\":\"exact_path\",\"path_tolerance\":0,\"naive_cam_tolerance\":0},{\"line\":5,\"mode\":\"exact_stop\",\"path_tolerance\":0,\"naive_cam_tolerance\":0}],\"final_motion_control_hash\":\"fnv1a64:e0364fe4a01823da\",\"errors\":{\"negative_tolerance\":\"program_motion_control_range\",\"unsupported_g61\":\"program_motion_control_syntax\"},\"recovery\":{\"equal\":true,\"difference\":null,\"checkpoint_hash\":\"fnv1a64:063983d373f79610\"},\"boundaries\":[\"LinuxCNC canonical expected output remains SOURCE_BLOCKED\",\"TP blend/exact-stop numeric parity remains follow-up\",\"Safari/Firefox are out of scope\"]}\n"
},
{
"command": [
"node",
"web/worker/test_source_hal_s5.mjs"
],
"label": "web/worker/test_source_hal_s5.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "41bee32bf728cc58bf7f58acc3e483353a07909fc9d7b50f2f6948e57fa8828a",
"stdout_tail": "22a787b1bc8ddd4840d558366523e3090e05ab3e\"},{\"path\":\"linuxcnc/tests/symbols.1/test.sh\",\"bytes\":126,\"sha256\":\"7a9a117668af8d87151a830a7c2c95ae6af81215647e1dbd28b71dae5077c8aa\"}],\"result\":{\"parser_status\":\"blocked\",\"parser_component\":\"test_define1\",\"reason\":\"source test invokes host halcompile/rtapi component compiler\"},\"result_hash\":\"fnv1a64:d1a01ae5002e23e6\"}],\"counts\":{\"PASSED\":3,\"SOURCE_BLOCKED\":2,\"HOST_EXCLUDED\":3},\"fixture_file_count\":23,\"boundaries\":[\"sampler/streamer/loadusr and realtime compiler paths remain explicit host/resource boundaries\",\"userspace and dynamic .comp execution is HOST_EXCLUDED; relative-header compiler is SOURCE_BLOCKED\",\"Worker static HAL behavior is compared with native/WASM SimHAL evidence by the report generator\"],\"aggregate_hash\":\"fnv1a64:524842c82f8b7d32\"}\n"
},
{
"command": [
"node",
"web/worker/test_source_interpreter_s5.mjs"
],
"label": "web/worker/test_source_interpreter_s5.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "8044dce216c91826bd03de964775cc75b4e34a19e2122b273f46ae8bfed63adc",
"stdout_tail": "2de6bb2da262b51f251377a98659\"},{\"path\":\"linuxcnc/tests/remap/remap-io/expected\",\"bytes\":5542,\"sha256\":\"64d216aaf7d78567423590088b31823e45ccea8e34b73da0fe675ee0749d024f\"}],\"result\":{\"status\":\"verified\",\"blocked\":\"real_hardware_excluded\",\"state_hash\":\"fnv1a64:443f0c72b715256a\"},\"result_hash\":\"fnv1a64:933bd136f99c4cd9\"}],\"counts\":{\"PASSED\":8,\"WORKER_TASK_MOTION_PENDING\":0},\"fixture_file_count\":26,\"pending\":[],\"boundaries\":[\"G64/G61 modal motion is represented by the Worker motion_control state; upstream canonical logger parity remains SOURCE_BLOCKED\",\"remap Python handlers are represented by allowlisted PythonCallbacks; host imports remain REAL-EXCLUDED\",\"expected/checkresult bytes are hashed and never treated as passed without an adapter result\"],\"aggregate_hash\":\"fnv1a64:32ac09b142f254d0\"}\n"
},
{
"command": [
"node",
"web/worker/test_source_io_s5.mjs"
],
"label": "web/worker/test_source_io_s5.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "63ba439455c67abf90a2e11bd9a7e0c90155d687242235e314f662c8cea3bb74",
"stdout_tail": "stop-ui.py\",\"bytes\":1558,\"sha256\":\"c998e3ddf86894c9603e633023ffc85d742784b963e18a4c4f57f21a80a513d6\"},{\"path\":\"linuxcnc/tests/classicladder/estop/checkresult\",\"bytes\":121,\"sha256\":\"583883dc785e6aab0f1313cfc20ed86e9c362082b5c47514264abbbbf973c80e\"}],\"result\":{\"reason\":\"ClassicLadder GUI/runtime is host excluded\"},\"result_hash\":\"fnv1a64:6d24438783646acd\"}],\"counts\":{\"PASSED\":3,\"SOURCE_BLOCKED\":2,\"HOST_EXCLUDED\":1,\"WORKER_TASK_MOTION_PENDING\":1},\"fixture_file_count\":30,\"boundaries\":[\"startup tool table resolution remains SOURCE_BLOCKED until full Task/configuration startup is available\",\"motion logger abort remains WORKER_TASK_MOTION_PENDING; no GUI or wall-clock result is promoted\",\"ClassicLadder and realtime hardware paths remain HOST_EXCLUDED\"],\"aggregate_hash\":\"fnv1a64:8fadeda4e92379d8\"}\n"
},
{
"command": [
"node",
"web/worker/test_source_parity_s5.mjs"
],
"label": "web/worker/test_source_parity_s5.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "77024701e656806d59c24a6e9a6e01d54f3db6fffc57c922e32fb138d9125eb9",
"stdout_tail": "baf06fbaf9d657253ca29fcee549b33bda61fb777a73c0ffb29170c9b0ae7c26\"}],\"modes\":{\"one_x\":\"fnv1a64:99dc591d7e12cd3b\",\"fast\":\"fnv1a64:99dc591d7e12cd3b\"},\"differences\":{\"first_divergence\":null,\"mode\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:99dc591d7e12cd3b\",\"actual_hash\":\"fnv1a64:99dc591d7e12cd3b\"},\"recovery\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:3bc177462024d9c5\",\"actual_hash\":\"fnv1a64:3bc177462024d9c5\"},\"trace_import\":{\"equal\":true,\"difference\":null,\"expected_hash\":\"fnv1a64:3bc177462024d9c5\",\"actual_hash\":\"fnv1a64:3bc177462024d9c5\"}},\"recovery\":{\"checkpoint_hash\":\"fnv1a64:8f07df8a96d5ba66\",\"continuous_hash\":\"fnv1a64:3bc177462024d9c5\",\"recovered_hash\":\"fnv1a64:3bc177462024d9c5\",\"trace_hash\":\"fnv1a64:c265e4ec16e3375f\",\"status\":\"recovered\"},\"status\":\"verified\"}\n"
},
{
"command": [
"node",
"web/worker/test_task_program_state.mjs"
],
"label": "web/worker/test_task_program_state.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "f25cd8fd71c5a90ddf06f167179e076caa011e283b632a694a87d863b390c033",
"stdout_tail": "task_program_state=passed replay=true restart=paused recovery=RUNNING\n"
},
{
"command": [
"node",
"web/worker/test_trace_export.mjs"
],
"label": "web/worker/test_trace_export.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "6f5c23fa145b3e4543dd00789cdb0ad1158a7624d856696ba8f526ded67ed54a",
"stdout_tail": "trace_export=passed seq=6 tick=3 hash=fnv1a64:7ffc03b6a8d47c0e\n"
},
{
"command": [
"node",
"web/worker/test_virtual_devices.mjs"
],
"label": "web/worker/test_virtual_devices.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "a5a07a0d0e2b847212c0028807022fa4c6e28ba0d1d56c74d53653e821eb4059",
"stdout_tail": "state_hash\":\"fnv1a64:c94eac708756480a\",\"replay_state_hash\":\"fnv1a64:c94eac708756480a\",\"state_hash_equal\":true,\"final\":{\"ready\":true,\"estop\":false,\"fault\":false,\"fault_reason\":0,\"tick\":40,\"recovery_epoch\":1,\"spindle_count\":1,\"tool_capacity\":1001,\"spindles\":[{\"command_rpm\":0,\"speed_rpm\":0,\"at_speed\":true,\"enabled\":false,\"inhibit\":false,\"amp_fault\":false,\"brake\":true,\"orient\":false,\"locked\":false,\"is_oriented\":false,\"orient_angle\":0,\"orient_mode\":0,\"orient_fault\":0,\"index_enable\":false,\"revs\":40}],\"tool\":{\"state\":\"idle\",\"current\":7,\"prepared\":7,\"pocket\":3,\"prepare\":false,\"prepared_ack\":false,\"changed\":false,\"fault\":false,\"reason\":0},\"probe\":{\"state\":\"tripped\",\"type\":0,\"input\":true,\"tripped\":true,\"tick\":40,\"position\":{\"x\":1,\"y\":2,\"z\":3}},\"limits\":{\"x-positive\":true},\"last_error\":\"sim_io_ok\"}}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_canonical_state.mjs"
],
"label": "web/worker/test_wasm_canonical_state.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "48b41b755925d7065f99db25e11f042789f917d15107de23c3ef980c9f2978ba",
"stdout_tail": "{\"schema\":\"wasm-canonical-state-t4.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"task_authority\":\"wasm_task_canonical\",\"home_authority\":\"wasm_home_limit\",\"home_sequence\":5,\"home_tick\":1,\"motion_tick\":3,\"home_limit_tick\":6,\"js_task_tamper_ignored\":true}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_canonical_state_checkpoint.mjs"
],
"label": "web/worker/test_wasm_canonical_state_checkpoint.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "401cfde5f23e77d8d938689c3a3ac6fe7777bafb118d3075ff353e99993ccdf7",
"stdout_tail": "{\"schema\":\"wasm-canonical-state-checkpoint-t4.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"checkpoint_hash\":\"fnv1a64:9d9ea2a624703b46\",\"continuous_hash\":\"fnv1a64:2d696fc22acbbd38\",\"recovered_hash\":\"fnv1a64:2d696fc22acbbd38\",\"endpoint_equal\":true,\"trace_import\":\"verified\",\"damaged_home_state\":\"blocked\"}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_feature_matrix_t5.mjs"
],
"label": "web/worker/test_wasm_feature_matrix_t5.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "f07bf812572de1ada298857bd5064d26fec8e8037006cc6b29a6ac28746a777d",
"stdout_tail": "{\"schema\":\"wasm-feature-matrix-t5.v1\",\"status\":\"verified\",\"task_id\":\"T5-FULL-MATRIX-01\",\"domains\":9,\"blocked_domains\":9,\"blocked_tests\":0,\"release_action\":\"STOP_RELEASE\"}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_function_closure_t6.mjs"
],
"label": "web/worker/test_wasm_function_closure_t6.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "cf67e5a0c4994a114d0d5dc2c4514e5f2a7738f83491e3c08b199f2d175e71cc",
"stdout_tail": "{\"schema\":\"wasm-function-closure-t6.v1\",\"status\":\"verified\",\"rows\":8,\"blocked\":8,\"failure_samples\":4,\"release_action\":\"STOP_RELEASE\"}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_motion_authority.mjs"
],
"label": "web/worker/test_wasm_motion_authority.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "34f090eef3d78d77d192658fbc279f0bdd72fa038eef44cfdc0138d6068d3d8c",
"stdout_tail": "{\"schema\":\"wasm-motion-authority-t3.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"motion_authority\":\"wasm\",\"paused_position\":{\"x\":1.073312629199899,\"y\":0.5366563145999494,\"z\":0},\"resumed_position\":{\"x\":2.146625258399798,\"y\":1.073312629199899,\"z\":0},\"abort_queue_depth\":0,\"js_authority_calls\":0}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_motion_checkpoint.mjs"
],
"label": "web/worker/test_wasm_motion_checkpoint.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "585c73a4f82d9b3e50de6a72279c0b01d21109d482f2f2f708ce8f5062127a0e",
"stdout_tail": "{\"schema\":\"wasm-motion-checkpoint-t3.v1\",\"status\":\"verified\",\"case\":\"linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini\",\"checkpoint_hash\":\"fnv1a64:47ff90f3ab07c4c6\",\"continuous_hash\":\"fnv1a64:2c910bab8ffdf73a\",\"recovered_hash\":\"fnv1a64:2c910bab8ffdf73a\",\"endpoint_equal\":true,\"trace_import\":\"verified\",\"checkpoint_queue_depth\":1,\"blocked_damaged_checkpoint\":\"blocked\"}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_motion_event.mjs"
],
"label": "web/worker/test_wasm_motion_event.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "d2dbbe772565019da46acde28215f48c5ed3c58f5695d23f91ea2c7ee98d7106",
"stdout_tail": "{\"schema\":\"wasm-motion-event.v1\",\"status\":\"verified\",\"events\":3,\"last_motion\":{\"source_line\":4,\"start\":{\"x\":10,\"y\":5,\"z\":0,\"a\":0,\"b\":0,\"c\":0,\"u\":0,\"v\":0,\"w\":0},\"end\":{\"x\":10,\"y\":5,\"z\":0,\"a\":0,\"b\":0,\"c\":0,\"u\":0,\"v\":0,\"w\":0},\"center\":{\"x\":11,\"y\":6,\"z\":0},\"normal\":{\"x\":0,\"y\":0,\"z\":1},\"velocity\":120,\"acceleration\":0,\"motion_type\":2,\"turn\":-1,\"source\":\"wasm_interpreter_canonical_motion\"}}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_preview.mjs"
],
"label": "web/worker/test_wasm_preview.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "3d4f47d5771b91f8c20102a75233260831a89d529043eee5b615f6c4522e7278",
"stdout_tail": "{\"schema\":\"wasm-preview.v1\",\"status\":\"verified\",\"source_path\":\"linuxcnc/nc_files/3dtest.ngc\",\"source_lines\":55,\"segment_count\":49,\"arc_lines\":[6,23,39],\"source\":\"wasm_interpreter_canonical_motion\"}\n"
},
{
"command": [
"node",
"web/worker/test_wasm_session.mjs"
],
"label": "web/worker/test_wasm_session.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "e9b7db900acf25a02bd885e9ee9c719fb2e7ba8ff82454a9d9e60c3fd1369e58",
"stdout_tail": "wasm_session=passed tick=11\nwasm_program=passed x=10 status=completed\nwasm_mdi=passed x=3 y=4\n"
},
{
"command": [
"node",
"web/worker/test_workspace_runtime.mjs"
],
"label": "web/worker/test_workspace_runtime.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "33168e892bb5d6580937ea24a7c103e7a90274b26ec9ab904d080a57ede99448",
"stdout_tail": "workspace_runtime=passed files=2 state_hash=fnv1a64:ea180108723ebfa0\n"
},
{
"command": [
"node",
"web/worker/test_workspace_session_integration.mjs"
],
"label": "web/worker/test_workspace_session_integration.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "b589d70b82f26e0d99cea3add135474fa60fdb2e05fb61fdfa8ad666fafc9343",
"stdout_tail": "{\"schema\":\"workspace-session-integration-sample.v1\",\"context_id\":\"linuxcnc-2.10.0-pre0-wasm-m1-py-c1\",\"session_state_hash\":\"fnv1a64:59fb9e23862123c3\",\"recovery_state_hash\":\"fnv1a64:59fb9e23862123c3\",\"checkpoint_hash\":\"fnv1a64:a0b90768e25b6aee\",\"package_v1_hash\":\"fnv1a64:d9aa9dc670baec56\",\"package_v2_hash\":\"fnv1a64:e5b1e118c32572b9\",\"round_trip_equal\":true,\"event_cursor\":12,\"journal_hash\":\"fnv1a64:1064d5ed6ce0552a\",\"operation_count\":4}\n"
},
{
"command": [
"node",
"web/app/test_authoritative_panels.mjs"
],
"label": "web/app/test_authoritative_panels.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "cf8bd394609fabe833768ba49d4f9dc02e21e7e86dbe80f98d45e33e07b326b2",
"stdout_tail": "authoritative_panels=passed fields=3 fault=limit\n"
},
{
"command": [
"node",
"web/app/test_axis_contract.mjs"
],
"label": "web/app/test_axis_contract.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "d7c1bed6ecc10ae8fb5b74c7861abfd3dd16d91f22665bf56bda3a97357dc0fc",
"stdout_tail": "{\"schema\":\"axis-contract-sample.v1\",\"status\":\"verified\",\"commands\":20,\"matrix\":20,\"blocked_reasons\":[\"axis_mdi_queue_full\",\"axis_estop_active\"]}\n"
},
{
"command": [
"node",
"web/app/test_axis_operation_controller.mjs"
],
"label": "web/app/test_axis_operation_controller.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "8d87866325a0ee2a3444b121dc79c98409a182f9a92c185b8ccb420806a56750",
"stdout_tail": "{\"schema\":\"axis-operation-controller-sample.v1\",\"status\":\"verified\",\"calls\":2,\"phases\":[\"pending\",\"result\",\"blocked\",\"pending\",\"result\"],\"last_operation\":\"axis-sim-step-000003\"}\n"
},
{
"command": [
"node",
"web/app/test_browser_compatibility_s3.mjs"
],
"label": "web/app/test_browser_compatibility_s3.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "7975f1b9ce4161aae3fa1522eaccfa28c841f4e4c9308d45b098fc39105c885a",
"stdout_tail": "{\"schema\":\"browser-compatibility-s3-sample.v1\",\"status\":\"verified\",\"logical_tick\":8,\"chunks\":4,\"session_id\":\"compat-s3\"}\n"
},
{
"command": [
"node",
"web/app/test_browser_opfs_s6_05.mjs"
],
"label": "web/app/test_browser_opfs_s6_05.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "4c0dcd5a29881756b8a617037fed4ca50ee17ae2ededfd038be7db815aa03f51",
"stdout_tail": "{\"schema\":\"browser-opfs-s6-05-sample.v1\",\"status\":\"blocked\",\"browser\":\"chromium\",\"code\":\"opfs_worker_timeout\",\"stage\":null}\n"
},
{
"command": [
"node",
"web/app/test_browser_performance.mjs"
],
"label": "web/app/test_browser_performance.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "4a0c3a9b16f07f7e48b987d8ad4bf4613a53c8a81619a00ebad2bbf2b2ed17ee",
"stdout_tail": "{\"schema\":\"browser-performance-sample.v1\",\"files\":[{\"file\":\"index.html\",\"bytes\":367},{\"file\":\"app.mjs\",\"bytes\":16849},{\"file\":\"worker-client.mjs\",\"bytes\":7508},{\"file\":\"styles.css\",\"bytes\":2731},{\"file\":\"controls.mjs\",\"bytes\":1337},{\"file\":\"state-panel.mjs\",\"bytes\":5083},{\"file\":\"project-workflow.mjs\",\"bytes\":2238},{\"file\":\"recovery-panel.mjs\",\"bytes\":1689},{\"file\":\"device-panel.mjs\",\"bytes\":1587},{\"file\":\"hal-panel.mjs\",\"bytes\":826},{\"file\":\"machine-view.mjs\",\"bytes\":2083}],\"total_bytes\":42298,\"stable\":true}\n"
},
{
"command": [
"node",
"web/app/test_display_family_s8_07.mjs"
],
"label": "web/app/test_display_family_s8_07.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "b872f9e8310b1540210c63af0f2882a84edf9d41cc3c6a7fe1c32fbe9cfd776c",
"stdout_tail": "{\"schema\":\"display-family-s8-07-sample.v1\",\"status\":\"verified\",\"case_count\":235,\"counts\":{\"axis\":85,\"gladevcp\":6,\"gscreen\":14,\"other\":37,\"pyvcp\":5,\"qtvcp\":61,\"touchy\":6,\"vismach\":21},\"selected\":{\"path\":\"linuxcnc/configs/sim/axis/corexy/corexy_by_hal.ini\",\"family\":\"axis\",\"display\":\"axis\",\"declarations\":{\"DISPLAY\":\"axis\"},\"host_boundaries\":[],\"source_sha256\":\"e838da30ce5fba2d049487d48bd2aeff46b1390a5a448f31980d9ce06121740f\"}}\n"
},
{
"command": [
"node",
"web/app/test_editor_workflow.mjs"
],
"label": "web/app/test_editor_workflow.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "074e0e8a0a5edd935b0ff20c0d42f7577e383378e91d13327cf64166c536199a",
"stdout_tail": "editor_workflow=passed calls=2 diagnostic=program_interpreter@7:4\n"
},
{
"command": [
"node",
"web/app/test_frontend_m1.mjs"
],
"label": "web/app/test_frontend_m1.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "ad00a51f3e1fd1af08522f0b9f2288565c3a58a2d992c34f882fdd4c988a7a94",
"stdout_tail": "frontend_m1=passed messages=3\n"
},
{
"command": [
"node",
"web/app/test_frontend_m2.mjs"
],
"label": "web/app/test_frontend_m2.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "6dfd013ebec94b3f1806481d6e05bb782ed8f33e67b1877c520deeb0775c6934",
"stdout_tail": "frontend_m2=passed commands=2\n"
},
{
"command": [
"node",
"web/app/test_frontend_m3.mjs"
],
"label": "web/app/test_frontend_m3.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "975fa7108f543c55b5336dc800c607184e7fd526abb2e3f46bd976450cb72057",
"stdout_tail": "frontend_m3=passed files=2\n"
},
{
"command": [
"node",
"web/app/test_frontend_m4.mjs"
],
"label": "web/app/test_frontend_m4.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "4525840171af9a75a86e5749a31413bb2c507804e0e9532dc7361fd09b9cc24e",
"stdout_tail": "frontend_m4=passed panels=3\n"
},
{
"command": [
"node",
"web/app/test_machine_view.mjs"
],
"label": "web/app/test_machine_view.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "dbca6fa381d80a011f09a12a988fc04812020a8197fcab0ca8eaf485deeabb41",
"stdout_tail": "machine_view=passed pixels=8 canvas=640x320\n"
},
{
"command": [
"node",
"web/app/test_opfs_runtime_s6_05.mjs"
],
"label": "web/app/test_opfs_runtime_s6_05.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "dd4edba1aa1fa256539ee2e6476960baee47f0c76d8473456e7e4793b5871afe",
"stdout_tail": "{\"schema\":\"opfs-runtime-s6-05-logical-sample.v1\",\"status\":\"verified\",\"context_id\":\"linuxcnc-2.10.0-pre0-wasm-m1-py-c1\",\"opfs_boundary\":{\"status\":\"blocked\",\"code\":\"opfs_unavailable\",\"reason\":\"storage_get_directory_missing\"},\"journal_status\":\"recovered\",\"journal_state_hash\":\"fnv1a64:12a3a46c111bc992\",\"offline_status\":\"ready\",\"offline_bundle_hash\":\"fnv1a64:de91ee963d6ed43e\",\"deterministic_hash\":\"fnv1a64:eddf76e50b1b8c8a\"}\n"
},
{
"command": [
"node",
"web/app/test_recovery_ux.mjs"
],
"label": "web/app/test_recovery_ux.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "5696ed80183470ca1e1f671ab67e7fc9de2ebb5504d5e6ef5429b37cef7b713d",
"stdout_tail": "recovery_ux=passed actions=2 retry=1\n"
},
{
"command": [
"node",
"web/app/test_worker_client_runtime.mjs"
],
"label": "web/app/test_worker_client_runtime.mjs",
"returncode": 0,
"status": "passed",
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
"stderr_tail": "",
"stdout_sha256": "86481ffc3da4b28dc3e1a61c7ba582b7e2863f7ba1cc4a2bb477e8011479bffb",
"stdout_tail": "worker_client_runtime=passed sent=4 cancel=true\n"
}
],
"counts": {
"app_tests": 16,
"failed": 0,
"passed": 92,
"total": 92,
"worker_tests": 74
},
"policy": "build, native CTest, Worker and App regressions are implementation evidence only",
"status": "verified"
}
},
"release_action": "STOP_RELEASE",
"report_sha256": "b2230390241a9fb8fb723af3847baeec251e8b49526d264c8bd5ccef4e5d3133",
"schema": "full-case-acceptance-s8-10-report.v1",
"status": "blocked",
"task_id": "S8-10"
}