Complete 3axis tutorial native and Web/WASM parity tools

This commit is contained in:
2026-08-24 14:01:30 +08:00
parent 938654b19d
commit 7e90142b63
147 changed files with 17639 additions and 557 deletions

View File

@@ -0,0 +1,922 @@
{
"candidate_eligible": false,
"case": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini",
"checks": {
"closure_status_vocabulary": {
"status": "verified"
},
"context_match": {
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"status": "verified"
},
"failure_samples": {
"count": 4,
"status": "blocked"
},
"no_js_fallback": {
"policy": "blocked rows never fall back to JS authority",
"status": "verified"
},
"release_stop_preserved": {
"candidate_eligible": false,
"release_action": "STOP_RELEASE",
"status": "verified"
},
"row_count": {
"count": 8,
"status": "verified"
},
"selected_case_boundary": {
"case": "linuxcnc/configs/sim/axis/vismach/3axis-tutorial/3axis-tutorial.ini",
"promotion": "forbidden",
"status": "verified"
},
"source_refs": {
"status": "verified"
},
"test_execution": {
"blocked_commands": 0,
"status": "verified"
}
},
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"counts": {
"blocked": 8,
"rows": 8,
"test_blocked": 0,
"test_commands": 23,
"verified_slices": 8
},
"failure_samples": [
{
"code": "official_kinematics_oracle_missing",
"observed": "missing_from_locked_source",
"source": "linuxcnc/unit_tests/kinematics"
},
{
"code": "configuration_resource_blocked",
"observed": {
"blocked_entries": 208,
"entrypoints": 233
},
"source": "coverage/full-configuration-startup-matrix.report.json"
},
{
"code": "browser_minimum_unpinned",
"observed": {
"chromium": "TBD",
"firefox": "TBD",
"safari": "TBD"
},
"source": "context-lock.json"
},
{
"code": "host_capability_excluded",
"observed": [
"host_paths",
"socket",
"subprocess",
"device_paths"
],
"source": "python-runtime/manifest.json"
}
],
"implementation_status": "verified",
"inputs": [
{
"bytes": 7647,
"path": "context-lock.json",
"role": "context_lock",
"sha256": "bf6651f8d1803f2219d40e61f5e86dcf0821862d087eec2e19f99f593561353e",
"status": "present"
},
{
"bytes": 6180,
"path": "coverage/browser-matrix-remediation.report.json",
"role": "source_browser_ux",
"sha256": "8eacc6c6e168df19fc2082c1788ce3e5c025e9b528cccc0c5dcf62a84a8664d7",
"status": "present"
},
{
"bytes": 5534,
"path": "coverage/browser-performance-matrix.report.json",
"role": "source_browser_ux",
"sha256": "d3386dc5839d4fed2bdae7174abd081736fe39555f1710e0e8d344f284c18434",
"status": "present"
},
{
"bytes": 827383,
"path": "coverage/configuration-resource-remediation.report.json",
"role": "source_configuration",
"sha256": "8036cb8bc63957a82eaed6fbb249bf61b9fd9ab136e746a47e8e7f48a9a2f21c",
"status": "present"
},
{
"bytes": 225468,
"path": "coverage/full-configuration-startup-matrix.report.json",
"role": "source_configuration",
"sha256": "9345288c2e5353d382a17e2ff18f881d8516f2e792920325c2b5cc28ac17a2f9",
"status": "present"
},
{
"bytes": 30391,
"path": "coverage/full-linuxcnc-simulation-gap-audit.report.json",
"role": "gap_audit",
"sha256": "4bfad951b95dd2030e929268dc6c67baf025c448d25fd52951dfb6bbb04e749d",
"status": "present"
},
{
"bytes": 7073,
"path": "coverage/gui-browser-visual-fe-m4.report.json",
"role": "source_browser_ux",
"sha256": "4a91556173f36fdac53b94352d1ad732a419199c4c329320fb044a53ec55dcdf",
"status": "present"
},
{
"bytes": 2535591,
"path": "coverage/hal-component-manifest.report.json",
"role": "source_hal_io",
"sha256": "bef0cb643203ac6ef239d0d5c975ef4d2b30902d09a77c1a3103f7983ee2f5a6",
"status": "present"
},
{
"bytes": 20284,
"path": "coverage/kinematics-oracle.report.json",
"role": "source_kinematics",
"sha256": "4dc09ea52d1cc32cd3c4f006b1c2f880e54ca147e6d4f651cee4b67626f56d05",
"status": "present"
},
{
"bytes": 9545,
"path": "coverage/kinematics-runtime.report.json",
"role": "source_kinematics",
"sha256": "7090db32ac2af28e13c115b63ba7b894596efe25d8eec9fc27f097db931fde2c",
"status": "present"
},
{
"bytes": 12457,
"path": "coverage/motion-runtime.report.json",
"role": "source_tp",
"sha256": "fb2d36130bf3168bea9b13fe08cc2225d72190a7aa9c99a0f0db7f148ac171df",
"status": "present"
},
{
"bytes": 4914,
"path": "coverage/python-worker-bridge.report.json",
"role": "source_python_remap",
"sha256": "977be3b05a9d07cf2534f9646cd1673ba637dc15d896cdf905a539b855934edf",
"status": "present"
},
{
"bytes": 3170,
"path": "coverage/recovery-offline-fault-matrix.report.json",
"role": "source_recovery",
"sha256": "9f969d479806f8b7300ca7db368872add00738da4cf0dabe08f834981ddc33b9",
"status": "present"
},
{
"bytes": 3704,
"path": "coverage/rs274-interpreter-closure.report.json",
"role": "source_rs274",
"sha256": "f89b09eb912bcca4f75cf0392b889e0051fcdc61b6b2f14663c72fca63b8f608",
"status": "present"
},
{
"bytes": 1925705,
"path": "coverage/source-index.jsonl",
"role": "source_inventory",
"sha256": "2a78438ab4a685476cc57f10d15e2ca3ee688892a7696081a135018638031404",
"status": "present"
},
{
"bytes": 248673,
"path": "coverage/test-entries.jsonl",
"role": "test_inventory",
"sha256": "86449838257a7aab7c9219e641a14d4493208b35d8c0cc092d1fa149352c7c37",
"status": "present"
},
{
"bytes": 11813,
"path": "coverage/virtual-device-fault-matrix.report.json",
"role": "source_hal_io",
"sha256": "6cad7235733178f045b7dda3be16b5ebac003e91b2b9709494a85da06b3cf11b",
"status": "present"
},
{
"bytes": 6188,
"path": "coverage/wasm-canonical-state-t4.report.json",
"role": "source_recovery",
"sha256": "5ed80c6e557787247825b746eb1f18bd94b7da88f00e24b559c9e4d636243da4",
"status": "present"
},
{
"bytes": 42079,
"path": "coverage/wasm-feature-matrix-t5.report.json",
"role": "t5_matrix",
"sha256": "d5082c9f181e905563a9e8430de3d4d04af66059affd15dd3bd7b2e2df5b7ea8",
"status": "present"
},
{
"bytes": 6925,
"path": "coverage/wasm-motion-authority-t3.report.json",
"role": "source_tp",
"sha256": "8424f3bae26ff0b16868ddc1dde4f40e14fc64288aea3d9aba983cc46d62c967",
"status": "present"
},
{
"bytes": 1446,
"path": "coverage/workspace-recovery.report.json",
"role": "source_recovery",
"sha256": "b6140a4fd0f7b7c8ced8c19685cee086d78e27910dc9ecab7d28c201a0ae85b0",
"status": "present"
},
{
"bytes": 8235,
"path": "docs/linuxcnc-web-wasm-wasm-only-migration-plan.md",
"role": "migration_plan",
"sha256": "aaadfcbb5e0c4dabd2785a3a93370021657c491050be895acf5f0c5a8f5d976c",
"status": "present"
},
{
"bytes": 27266096,
"file_count": 1693,
"kind": "directory",
"path": "linuxcnc/configs/sim",
"role": "source_configuration",
"sha256": "18d4ee41860dd49f19b84c29f6e93d5425f43483770ef151f096629dd5f50d6a",
"status": "present"
},
{
"bytes": 11423364,
"file_count": 415,
"kind": "directory",
"path": "linuxcnc/lib/python",
"role": "source_python_remap",
"sha256": "bcb686745f56dc94b2f58193533c7ded6b8d280510b73c386d1383c22023e429",
"status": "present"
},
{
"bytes": 92894,
"file_count": 3,
"kind": "directory",
"path": "linuxcnc/src/emc/iotask",
"role": "source_hal_io",
"sha256": "88e7b43985fb99952846bc5c610edbc02525c33be3ba896bfa103c66d6f8fca3",
"status": "present"
},
{
"bytes": 241271,
"file_count": 38,
"kind": "directory",
"path": "linuxcnc/src/emc/kinematics",
"role": "source_kinematics",
"sha256": "4c26c0b886f102a65c120c367e6f0b853e4e26110958494b6ff79d28a5dfe51c",
"status": "present"
},
{
"bytes": 1104560,
"file_count": 49,
"kind": "directory",
"path": "linuxcnc/src/emc/rs274ngc",
"role": "source_rs274",
"sha256": "5d7ada0ae490de298d4c86767e543a255455d5d380a6ba681b5e2d004ecf9b85",
"status": "present"
},
{
"bytes": 258126,
"file_count": 16,
"kind": "directory",
"path": "linuxcnc/src/emc/tp",
"role": "source_tp",
"sha256": "1adab13d80e1483691b98744c69d21e3ae9822abe06cae6b53184b2c85fd1b11",
"status": "present"
},
{
"bytes": 5810200,
"file_count": 548,
"kind": "directory",
"path": "linuxcnc/src/hal",
"role": "source_hal_io",
"sha256": "2b961826f284e071b5ec47e2a1beaba4ec4ded58ad1a0db70403522bc73890c8",
"status": "present"
},
{
"bytes": 501667,
"file_count": 342,
"kind": "directory",
"path": "linuxcnc/tests/interp",
"role": "source_rs274",
"sha256": "c5135b59efc6733b0bae82bc9dc3329e39b3b8343d14d20ff6d94882a0bdc941",
"status": "present"
},
{
"bytes": 132198,
"file_count": 165,
"kind": "directory",
"path": "linuxcnc/tests/remap",
"role": "source_python_remap",
"sha256": "1d68282f936a6167e017fe3fa1335f40b0d040d12e3061a083170ab3252d1fbb",
"status": "present"
},
{
"bytes": 2366,
"file_count": 2,
"kind": "directory",
"path": "linuxcnc/unit_tests/tp",
"role": "source_tp",
"sha256": "8a2cc64b5648c3e84c3c037db6872815b24b564e61bf2288d95f3ce9f820b2be",
"status": "present"
},
{
"bytes": 1902,
"path": "python-runtime/manifest.json",
"role": "source_python_remap",
"sha256": "340faa6ef5bedcaeb0583f463e6b89cb442ddf1d83d7e6ee8d96cee438fe4213",
"status": "present"
}
],
"matrix": [
{
"capability": {
"authority": "sim_interpreter",
"wasm": "verified",
"worker": "verified"
},
"difference": "complete G/M/canned-cycle/coordinate-compensation oracle is not present in the locked closure",
"id": "rs274",
"next_action": "provide exact upstream expected/checkresult and canonical callback golden before extending interpreter",
"owner": "simulation-runtime",
"source_refs": [
"linuxcnc/src/emc/rs274ngc",
"linuxcnc/tests/interp",
"coverage/rs274-interpreter-closure.report.json"
],
"status": "blocked",
"stop_reason": "SOURCE_ORACLE_BLOCKED: S1-01B expected/canonical callback inputs are not approved",
"tests": [
[
"node",
"web/worker/test_source_interpreter_s5.mjs"
],
[
"node",
"web/worker/test_source_do_s7_01.mjs"
],
[
"node",
"web/worker/test_source_g6164_s7_02.mjs"
]
],
"title": "advanced RS274/G-M/O and canonical callback closure",
"verified_slice": [
"S1-01A interpreter state/modal/error ABI",
"S5-04 source interpreter adapters",
"S7-01 DO/ENDDO/BREAK",
"S7-02 G64/G61"
]
},
{
"capability": {
"authority": "sim_motion_queue",
"wasm": "verified",
"worker": "verified"
},
"difference": "queue state is deterministic but full upstream blend and dynamics numeric golden is not closed",
"id": "tp",
"next_action": "import approved TP golden with fixed logical tick and first-divergent-field rules",
"owner": "simulation-runtime",
"source_refs": [
"linuxcnc/src/emc/tp",
"linuxcnc/unit_tests/tp",
"coverage/motion-runtime.report.json",
"coverage/wasm-motion-authority-t3.report.json"
],
"status": "blocked",
"stop_reason": "SOURCE_ORACLE_BLOCKED: TP numeric oracle and all configuration-family samples are unavailable",
"tests": [
[
"node",
"web/worker/test_wasm_motion_authority.mjs"
],
[
"node",
"web/worker/test_wasm_motion_checkpoint.mjs"
],
[
"node",
"web/worker/test_source_g6164_s7_02.mjs"
]
],
"title": "TP blend/exact-stop/accel/jerk closure",
"verified_slice": [
"fixed-tick sim_motion_queue",
"G64/G61 Worker modal state",
"checkpoint/replay endpoint parity"
]
},
{
"capability": {
"authority": "sim_kinematics_home_limit",
"wasm": "verified",
"worker": "verified"
},
"difference": "runtime supports deterministic families, but official kinematics unit-test root is absent",
"id": "kinematics",
"next_action": "obtain approved official FK/IK/recovery oracle or an explicit contract replacement",
"owner": "simulation-runtime",
"source_refs": [
"linuxcnc/src/emc/kinematics",
"coverage/kinematics-runtime.report.json",
"coverage/kinematics-oracle.report.json"
],
"status": "blocked",
"stop_reason": "SOURCE_ORACLE_BLOCKED: linuxcnc/unit_tests/kinematics is missing from locked source",
"tests": [
[
"node",
"web/worker/test_authoritative_kinematics_s6_04.mjs"
],
[
"node",
"web/worker/test_axis3_tutorial_motion.mjs"
],
[
"node",
"web/worker/test_wasm_canonical_state.mjs"
]
],
"title": "kinematics family FK/IK and home/limit closure",
"verified_slice": [
"trivkins selected-case home/limit",
"registered fixed-tick kinematics families"
]
},
{
"capability": {
"authority": "sim_hal_and_sim_io",
"wasm": "verified",
"worker": "verified"
},
"difference": "static/virtual paths are replayable; dynamic loadusr and real transport/device paths remain excluded",
"id": "hal_io",
"next_action": "keep virtual adapter boundary explicit; require an approved pure-simulation fixture for any new component",
"owner": "simulation-runtime",
"source_refs": [
"linuxcnc/src/hal",
"linuxcnc/src/emc/iotask",
"coverage/hal-component-manifest.report.json",
"coverage/virtual-device-fault-matrix.report.json"
],
"status": "blocked",
"stop_reason": "REAL_EXCLUDED: host drivers, dynamic loaders and physical device timing cannot be accepted as Worker parity",
"tests": [
[
"node",
"web/worker/test_hal_runtime.mjs"
],
[
"node",
"web/worker/test_device_io.mjs"
],
[
"node",
"web/worker/test_io_ack.mjs"
],
[
"node",
"web/worker/test_virtual_devices.mjs"
]
],
"title": "HAL, PLC, IO and virtual device closure",
"verified_slice": [
"static HAL manifest/graph",
"fixed-tick virtual devices",
"IO ack/fault/recovery"
]
},
{
"capability": {
"authority": "python_allowlist",
"wasm": "verified",
"worker": "verified"
},
"difference": "allowlisted callbacks are deterministic; host imports and arbitrary plugin modules are denied",
"id": "python_remap",
"next_action": "add individually hashed allowlisted module contract only after source and license inputs are approved",
"owner": "python-runtime",
"source_refs": [
"linuxcnc/lib/python",
"linuxcnc/tests/remap",
"coverage/python-worker-bridge.report.json",
"python-runtime/manifest.json"
],
"status": "blocked",
"stop_reason": "REAL_EXCLUDED: host Python, dynamic imports and unrestricted filesystem/network capabilities are outside Worker scope",
"tests": [
[
"node",
"web/worker/test_python_bridge.mjs"
],
[
"node",
"web/worker/test_python_callbacks_s3.mjs"
],
[
"node",
"web/worker/test_source_do_s7_01.mjs"
]
],
"title": "Python/remap/filter/VCP closure",
"verified_slice": [
"Pyodide allowlist",
"virtual linuxcnc/hal API",
"remap/O-word callback samples"
]
},
{
"capability": {
"authority": "configuration_startup",
"wasm": "verified",
"worker": "verified"
},
"difference": "resolver is fail-closed, but the full matrix retains missing/unindexed/HAL/INI/STARTUP resources",
"id": "configuration",
"next_action": "supply exact-path resource fixtures and regenerate the startup matrix without promotion",
"owner": "workspace-runtime",
"source_refs": [
"linuxcnc/configs/sim",
"coverage/full-configuration-startup-matrix.report.json",
"coverage/configuration-resource-remediation.report.json"
],
"status": "blocked",
"stop_reason": "RESOURCE_BLOCKED: exact source resources are absent or unresolved; basename substitution is forbidden",
"tests": [
[
"node",
"web/worker/test_configuration_startup_runtime.mjs"
],
[
"node",
"web/worker/test_configuration_preflight.mjs"
]
],
"title": "configuration/resource/startup closure",
"verified_slice": [
"exact-path resolver",
"INI/HAL diagnostics",
"TASK_READY selected fixtures"
]
},
{
"capability": {
"authority": "workspace_session",
"wasm": "verified",
"worker": "verified"
},
"difference": "logical recovery is deterministic; physical power-loss/OPFS corruption and official recovery oracle are open",
"id": "recovery",
"next_action": "obtain approved crash/oracle fixture before claiming recovery closure",
"owner": "workspace-runtime",
"source_refs": [
"coverage/recovery-offline-fault-matrix.report.json",
"coverage/workspace-recovery.report.json",
"coverage/wasm-canonical-state-t4.report.json"
],
"status": "blocked",
"stop_reason": "SOURCE_ORACLE_BLOCKED: official recovery oracle and physical filesystem crash input are absent",
"tests": [
[
"node",
"web/worker/test_wasm_canonical_state_checkpoint.mjs"
],
[
"node",
"web/worker/test_recovery_offline_faults.mjs"
],
[
"node",
"web/worker/test_workspace_session_integration.mjs"
]
],
"title": "checkpoint/journal/migration/offline recovery closure",
"verified_slice": [
"logical checkpoint/trace import",
"workspace migration/rollback",
"offline missing-resource diagnostics"
]
},
{
"capability": {
"authority": "dedicated_worker_protocol_v1",
"wasm": "verified",
"worker": "verified"
},
"difference": "Chromium slice is verified; Firefox/Safari minimums and physical OPFS recovery are not",
"id": "browser_ux",
"next_action": "pin reviewed browser minimums and execute the same workflow/fault matrix in each engine",
"owner": "frontend-runtime",
"source_refs": [
"coverage/browser-performance-matrix.report.json",
"coverage/gui-browser-visual-fe-m4.report.json",
"coverage/browser-matrix-remediation.report.json"
],
"status": "blocked",
"stop_reason": "BROWSER_BLOCKED: minimum versions are TBD and Safari/physical OPFS are unavailable in the locked environment",
"tests": [
[
"node",
"web/worker/test_axis3_selected_case.mjs"
],
[
"node",
"web/worker/test_axis3_visible_completion.mjs"
]
],
"title": "browser UX, WebGL and multi-engine closure",
"verified_slice": [
"Chromium Worker/React workflow",
"Three.js nonblank canvas",
"protocol error/recovery UX"
]
}
],
"next_transition": "T7-RELEASE-GATE-01 only after owner-approved source/oracle/resource/browser inputs",
"release_action": "STOP_RELEASE",
"report_sha256": "334d5262b111471a347f4a9d1646a9320111516cdf50c60671c65996bbe5e795",
"schema": "wasm-function-closure-t6.v1",
"status": "blocked",
"stop_reason": "all complete closure rows retain source/oracle/resource/host/browser blockers; no selected-case or JS authority promotion",
"task_id": "T6-FUNCTION-CLOSURE-01",
"tests": [
{
"commands": [
{
"command": [
"node",
"web/worker/test_source_interpreter_s5.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "ddd5df1f071c70cb66f6caed3a1a516c5aaaa7663e4688020c460d586927d1c7"
},
{
"command": [
"node",
"web/worker/test_source_do_s7_01.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "84233a11d16f6915e6acbe3bca61324a694ca625a3f2ce159f01ca94f394496b"
},
{
"command": [
"node",
"web/worker/test_source_g6164_s7_02.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "d79b61dae572272413a54b0ccccd2008de1f20125c39b5dd30a1920351e21e4e"
}
],
"domain": "rs274"
},
{
"commands": [
{
"command": [
"node",
"web/worker/test_wasm_motion_authority.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "3e66880d4e8a0b6205a351178c0f68f4eae72094c78bde514eee0f45e66b25af"
},
{
"command": [
"node",
"web/worker/test_wasm_motion_checkpoint.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "3b24f305766e7b7442a30a6cfa60e46d0669689f4960d1a7b67c41878878f639"
},
{
"command": [
"node",
"web/worker/test_source_g6164_s7_02.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "d79b61dae572272413a54b0ccccd2008de1f20125c39b5dd30a1920351e21e4e"
}
],
"domain": "tp"
},
{
"commands": [
{
"command": [
"node",
"web/worker/test_authoritative_kinematics_s6_04.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "0251b25272a27dd98076036be908a71a187d56407fd96fd8489d13c849160d36"
},
{
"command": [
"node",
"web/worker/test_axis3_tutorial_motion.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "09875bd9491a95f43f8891a26663bb7be5704be84a75d686146c8c77ffb4ea94"
},
{
"command": [
"node",
"web/worker/test_wasm_canonical_state.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "2423ec3d9cbc8fca56010ba037ea85649e8b668ce4b4e20d585544cb87ecebe4"
}
],
"domain": "kinematics"
},
{
"commands": [
{
"command": [
"node",
"web/worker/test_hal_runtime.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "7dcb47ba0dcd86be421b1a3d133ed0b4951d2e710d7b518f0a4de74406f47227"
},
{
"command": [
"node",
"web/worker/test_device_io.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "f539ac2a59a40973439f44683e29e473139cd70d1524aac72f99b64689196098"
},
{
"command": [
"node",
"web/worker/test_io_ack.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "a277ff07898a13759e86587e59cd7826d8f2403d8fbaffb74e8d26f5e15b52e2"
},
{
"command": [
"node",
"web/worker/test_virtual_devices.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "daa4c0f7b69fac765297984aeb95539da4643416b73634f4773a9eba52dff8dc"
}
],
"domain": "hal_io"
},
{
"commands": [
{
"command": [
"node",
"web/worker/test_python_bridge.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "5a0211cf093d9c498f4ddf4009190833332ec1226310f5e5e2eace604a5e9060"
},
{
"command": [
"node",
"web/worker/test_python_callbacks_s3.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "bc8517bff512c618270adcc856801db822b9c7d3ce13cae5c249c8e39ee99e85"
},
{
"command": [
"node",
"web/worker/test_source_do_s7_01.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "84233a11d16f6915e6acbe3bca61324a694ca625a3f2ce159f01ca94f394496b"
}
],
"domain": "python_remap"
},
{
"commands": [
{
"command": [
"node",
"web/worker/test_configuration_startup_runtime.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "7956e3bac69532da76025282b51a6d63b903fc94a6791fb1f2f0af3a9d697537"
},
{
"command": [
"node",
"web/worker/test_configuration_preflight.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "1684f25cda88240f009a6c855ce2e50ccda42fb629d21e29a6d474880651e888"
}
],
"domain": "configuration"
},
{
"commands": [
{
"command": [
"node",
"web/worker/test_wasm_canonical_state_checkpoint.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "bc8689a3119a812d2e7fc59a56d0c39eaa9002fd51bc49455d41409fc3614166"
},
{
"command": [
"node",
"web/worker/test_recovery_offline_faults.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "7a62245e494eb4855f1668dab5f6577cba3e5b5e3d179798f33c0742ab5613e7"
},
{
"command": [
"node",
"web/worker/test_workspace_session_integration.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "0e1cad80e126a491b05503cd6c6c676b91167511f59c579f969adab51df64247"
}
],
"domain": "recovery"
},
{
"commands": [
{
"command": [
"node",
"web/worker/test_axis3_selected_case.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "dfb469ab07f3c6c33a0d5834d7857bb84daef79904d6e6f783bf90928b833674"
},
{
"command": [
"node",
"web/worker/test_axis3_visible_completion.mjs"
],
"returncode": 0,
"status": "verified",
"stderr_sha256": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",
"stdout_sha256": "25438e9c7c6d69b80191148e7a3ba9d46505384187899348c60f6dd0c9f1a39d"
}
],
"domain": "browser_ux"
}
]
}