{ "boundaries": [ "real encoder transport and physical safety circuits remain REAL-EXCLUDED", "nonfinite/range/unsafe commands fail closed" ], "capacities": { "ack_entries": 64, "encoders": 8, "max_tick_step": 1000000 }, "context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1", "features": [ "fixed-tick quadrature encoder and index pulse", "encoder position/velocity/count scaling", "coolant mist/flood/lube interlock gating", "door and latched interlock fault/recovery", "deterministic IO ack issue/duplicate/timeout/late/abort", "native/WASM byte-identical state sample", "Worker checkpoint/replay device state" ], "inputs": [ { "path": "context-lock.json", "sha256": "785051d2a826ff45223da0a3dada919b75ac03a4ffb3c7e6f19083e78adc1abc" }, { "path": "wasm-core/include/sim_device_io.h", "sha256": "5a7d7cc3b335497f09fd8b824ad10f40595c6027d2c6635507e78b88841ebe0a" }, { "path": "wasm-core/src/sim_device_io.c", "sha256": "62d3ecee8a1f09a4d06e1f5a4f48fbdd642373943522e4ea07d612dd1aebfd93" }, { "path": "wasm-core/tests/sim_device_io_test.c", "sha256": "2696747c654a4bf258ad4b618548b9413ee72e7ef8f9b600d20f5ceb826c8192" }, { "path": "web/worker/device-io.mjs", "sha256": "e5714b11283e1b6adcc15d96b340d4ca9795ec5efe6fff288464c21f0c76349a" }, { "path": "web/worker/test_device_io.mjs", "sha256": "8b95591f5478738478efd8e26cbab8637df59d68a5fc8e4733de0ad3bf1fc336" }, { "path": "web/worker/io-ack.mjs", "sha256": "a68fe56c8b8c7b44ff585a7c7c1fa5ca942f59197ef51651abf59ae4cc1eaec5" }, { "path": "web/worker/sim-session.mjs", "sha256": "31a7e035c592f444d516bd423c760cf8ff04e513b2b2117b7c8a56d3300e9525" }, { "path": "linuxcnc/src/hal/components/sim_encoder.c", "sha256": "dc40520ef2f718ccbe588cf61ca8518faf35582b32c66dae036c24e2b1fb9ec9" }, { "path": "linuxcnc/src/hal/components/encoder.c", "sha256": "2c61ca53342cf58209d87041625e232cd6377c4c44e699de2e0047ea97a99a23" }, { "path": "linuxcnc/configs/sim/axis/cooling.hal", "sha256": "4bf84dc7aa6748a8703a917b0da84ae529d70207845e8453348ad9cb1d26ae4c" } ], "report_sha256": "438eb2df1fd60944577c13cafbcc2879f2cefddc9bbc828992aa2e8f1f863b58", "schema": "device-io-s2-report.v1", "status": "verified", "task_id": "S2-03", "tests": { "native": { "command": [ "/home/mes006/linuxcncWebWASM/build-native/sim_device_io_test" ], "returncode": 0, "sample": { "ack": { "acked": 2, "timed_out": 3 }, "canonical": { "coolant": { "flood": 0, "lube": 0, "mist": 1 }, "encoders": [ { "count": 40, "index_pulse": 1, "position": 10, "velocity": 10 }, { "count": 0, "index_pulse": 0, "position": 0, "velocity": 0 } ], "safety": { "door_open": 0, "estop": 0, "interlock_ok": 1, "latched_fault": 0 }, "tick": 12 }, "coolant": { "flood": 0, "lube": 0, "mist": 1 }, "encoder": { "count": 40, "index_pulse": 1, "position": 10.0, "velocity": 10.0 }, "safety": { "interlock_ok": 1, "recovery_epoch": 2 }, "schema": "device-io-s2-sample.v1", "state_hash": 2331225012073024271, "tick": 12 }, "status": "verified", "stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "stdout_sha256": "0d61cefc36cc59dffac89a052a3b955bfe15fbaf02525d529169a54d3e17e234" }, "native_wasm_byte_identical": true, "wasm": { "command": [ "node", "/home/mes006/linuxcncWebWASM/build-wasm/sim_device_io_wasm_test.js" ], "returncode": 0, "sample": { "ack": { "acked": 2, "timed_out": 3 }, "canonical": { "coolant": { "flood": 0, "lube": 0, "mist": 1 }, "encoders": [ { "count": 40, "index_pulse": 1, "position": 10, "velocity": 10 }, { "count": 0, "index_pulse": 0, "position": 0, "velocity": 0 } ], "safety": { "door_open": 0, "estop": 0, "interlock_ok": 1, "latched_fault": 0 }, "tick": 12 }, "coolant": { "flood": 0, "lube": 0, "mist": 1 }, "encoder": { "count": 40, "index_pulse": 1, "position": 10.0, "velocity": 10.0 }, "safety": { "interlock_ok": 1, "recovery_epoch": 2 }, "schema": "device-io-s2-sample.v1", "state_hash": 2331225012073024271, "tick": 12 }, "status": "verified", "stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "stdout_sha256": "0d61cefc36cc59dffac89a052a3b955bfe15fbaf02525d529169a54d3e17e234" }, "worker": { "command": [ "node", "/home/mes006/linuxcncWebWASM/web/worker/test_device_io.mjs" ], "returncode": 0, "sample": { "checkpoint_hash": "fnv1a64:2fd430f34934440e", "count": 40, "schema": "device-io-worker-sample.v1", "state_hash": "fnv1a64:d303b40b131396ff", "status": "verified", "tick": 12, "worker_state_hash": "fnv1a64:128eb22bfba5d6f9", "worker_tick": 2 }, "status": "verified", "stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "stdout_sha256": "2fe0ab9d322ad28fd18ac076a0e8a505ba4b789c7a686866c99c229d195ea7d7" } } }