{ "apiName": "web-rtcp-5axis-native-task-hal-comparison-report", "generatedAt": "2026-06-23T09:22:56.110Z", "status": "PASS_WITH_HOST_NATIVE_RUNTIME_BLOCKER", "scope": "LinuxCNC source/phase0 task-HAL comparison plus attempted host-native TRT runtime probe", "commands": { "phase0": { "command": "bash wasm-port/tests/native/verify_task_hal_phase0.sh", "status": 0, "signal": null, "stdout": "task_hal_phase0_native_probe_gate=ok\n", "stderr": "" }, "nativeAudit": { "command": "node web-rtcp-5axis-sim-plan/tests/node/verify_native_task_hal_audit.mjs", "status": 0, "signal": null, "stdout": "native_task_hal_source_artifact_audit=ok\nnative_task_hal_readiness_artifact=web-rtcp-5axis-sim-plan/build/readiness/native-task-hal-readiness.json\ntask_hal_web_simulation_boundary_consistent=1\nnative_task_hal_host_probe_status=ready_disabled_by_default\nhardware_drive=0\nhost_realtime_kernel=0\nexternal_user_m_process_ready=0\ntool_db_process_ready=0\npromotion_scope=web_simulation_only\n", "stderr": "" }, "optInNativeProbe": { "command": "ENABLE_TRT_TASK_HAL_RUNTIME_PROBE=1 bash wasm-port/tests/native/probe_trt_task_hal_runtime.sh", "status": 1, "signal": null, "stdout": "trt_task_hal_runtime_halcmd_path=/home/meswork/cnc_wams/wasm-port/../linuxcnc/bin/halcmd\ntrt_task_hal_runtime_linuxcnc_path=/home/meswork/cnc_wams/wasm-port/../linuxcnc/scripts/linuxcnc\ntrt_task_hal_runtime_requirements=halcmd:1,linuxcnc:1\ntrt_task_hal_missing_requirements=-\ntrt_task_hal_source_proof_ready=1\ntrt_task_hal_runtime_ready=1\ntrt_task_hal_execution_enabled=0\ntrt_task_hal_promotion_allowed=0\nnativeTaskReady=false\nnativeHalSyncReady=false\ntrt_task_hal_runtime_probe_ini=/home/meswork/cnc_wams/wasm-port/../linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini\ntrt_task_hal_runtime_probe_program=/home/meswork/cnc_wams/wasm-port/../linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc\ntrt_task_hal_runtime_probe_linuxcnc_stdout=/home/meswork/cnc_wams/wasm-port/build/native/trt-task-hal-runtime/linuxcnc.stdout.log\ntrt_task_hal_runtime_probe_linuxcnc_stderr=/home/meswork/cnc_wams/wasm-port/build/native/trt-task-hal-runtime/linuxcnc.stderr.log\nnative_task_hal_probe=failed\nnative_probe_status=failed\ntrt_task_hal_runtime_probe_status=runtime_state_probe_failed\ntrt_task_hal_runtime_probe_note=linuxcnc_started_but_required_trt_hal_pins_did_not_appear\n", "stderr": "" }, "fixtureBaseline": { "command": "LD_LIBRARY_PATH=linuxcnc/lib bash wasm-port/tools/verify_native_linuxcnc_fixture_baseline.sh", "status": 1, "signal": null, "stdout": "", "stderr": "upstream rs274 failed for fixture: minimal_linear\n/home/meswork/cnc_wams/wasm-port/../linuxcnc/bin/rs274: error while loading shared libraries: libpython3.13.so.1.0: cannot open shared object file: No such file or directory\n" } }, "readiness": { "apiName": "web-rtcp-5axis-native-task-hal-readiness-audit", "batch": "M18-native-task-hal-source-and-artifact-audit", "generatedAt": "2026-06-22T00:00:00.000Z", "status": "ok", "semanticBoundary": "linuxcnc_task_motion_hal_wasm_simulation_runtime", "promotionScope": "web_simulation_only", "taskHalWebSimulationBoundaryConsistent": true, "webSimulation": { "promoted": true, "taskRuntimeReady": true, "motionRuntimeReady": true, "halRuntimeReady": true, "nativeTaskReady": true, "nativeHalSyncReady": true, "fullLinuxCncProgramExecutionReady": true, "promotionAllowed": true }, "nativeHostAndHardware": { "nativeProbe": "ok", "nativeProbeStatus": "ready_disabled_by_default", "nativePromotionAllowed": false, "hardwareDrive": false, "hostRealtimeKernel": false, "externalUserMProcessReady": false, "toolDbProcessReady": false }, "sourceManifest": { "ready": true, "taskSourceCount": 7, "halSourceCount": 4, "motionSourceCount": 6, "nmlSourceCount": 1, "libnmlSourceCount": 2, "referenceSourceReady": true, "vendorSourceReady": false, "vendorHashMatchReady": true }, "gates": { "task_hal_web_simulation_boundary_consistent": 1, "native_task_hal_host_probe_status": "ready_disabled_by_default", "hardware_drive": 0, "host_realtime_kernel": 0, "external_user_m_process_ready": 0, "tool_db_process_ready": 0, "promotion_scope": "web_simulation_only" }, "artifacts": { "readinessJson": "web-rtcp-5axis-sim-plan/build/readiness/native-task-hal-readiness.json", "sourceManifestLog": "wasm-port/build/task-hal/verify_task_hal_source_manifest.stdout.log", "sourceManifestReport": "wasm-port/build/task-hal/task-hal-source-manifest.tsv", "nativeProbeLog": "wasm-port/build/task-hal/probe_trt_task_hal_runtime.stdout.log" }, "blockers": [] }, "sourceManifest": { "task_hal_source_manifest_status": "ok", "task_hal_source_manifest_ready": "1", "task_hal_source_manifest_path": "/home/meswork/cnc_wams/wasm-port/tools/task-hal-source-manifest.txt", "task_hal_source_manifest_report": "/home/meswork/cnc_wams/wasm-port/build/task-hal/task-hal-source-manifest.tsv", "task_hal_source_count": "20", "task_source_count": "7", "hal_source_count": "4", "motion_source_count": "6", "nml_source_count": "1", "libnml_source_count": "2", "task_hal_reference_source_ready": "1", "task_hal_vendor_source_ready": "0", "task_hal_vendor_hash_match_ready": "1", "task_hal_missing_reference_source_count": "0", "task_hal_missing_reference_sources_ready": "1", "task_hal_missing_reference_source_list": "-", "task_hal_missing_vendor_source_list": "src/emc/task/task.hh,src/emc/task/taskclass.hh,src/emc/task/taskclass.cc,src/emc/task/emctask.cc,src/emc/task/emctaskmain.cc,src/emc/task/taskintf.cc,src/emc/task/emccanon.cc,src/emc/motion/usrmotintf.h,src/emc/motion/motion.c,src/emc/motion/command.c,src/emc/motion/control.c,src/hal/hal_lib.c,src/hal/hal_priv.h,src/hal/components/threads.c,src/hal/utils/halcmd_commands.cc", "task_hal_mismatched_vendor_source_list": "-", "task_hal_runtime_promoted": "0", "nativeTaskReady": "false", "nativeHalSyncReady": "false" }, "defaultProbe": { "trt_task_hal_runtime_halcmd_path": "/home/meswork/cnc_wams/wasm-port/../linuxcnc/bin/halcmd", "trt_task_hal_runtime_linuxcnc_path": "/home/meswork/cnc_wams/wasm-port/../linuxcnc/scripts/linuxcnc", "trt_task_hal_runtime_requirements": "halcmd:1,linuxcnc:1", "trt_task_hal_missing_requirements": "-", "trt_task_hal_source_proof_ready": "1", "trt_task_hal_runtime_ready": "1", "trt_task_hal_execution_enabled": "0", "trt_task_hal_promotion_allowed": "0", "nativeTaskReady": "false", "nativeHalSyncReady": "false", "native_task_hal_probe": "ok", "native_probe_status": "ready_disabled_by_default", "trt_task_hal_runtime_probe_status": "ready_disabled_by_default", "trt_task_hal_runtime_probe_note": "set_ENABLE_TRT_TASK_HAL_RUNTIME_PROBE_1_to_run_exclusive_host_runtime_probe" }, "optInProbeFields": { "trt_task_hal_runtime_halcmd_path": "/home/meswork/cnc_wams/wasm-port/../linuxcnc/bin/halcmd", "trt_task_hal_runtime_linuxcnc_path": "/home/meswork/cnc_wams/wasm-port/../linuxcnc/scripts/linuxcnc", "trt_task_hal_runtime_requirements": "halcmd:1,linuxcnc:1", "trt_task_hal_missing_requirements": "-", "trt_task_hal_source_proof_ready": "1", "trt_task_hal_runtime_ready": "1", "trt_task_hal_execution_enabled": "0", "trt_task_hal_promotion_allowed": "0", "nativeTaskReady": "false", "nativeHalSyncReady": "false", "trt_task_hal_runtime_probe_ini": "/home/meswork/cnc_wams/wasm-port/../linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini", "trt_task_hal_runtime_probe_program": "/home/meswork/cnc_wams/wasm-port/../linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzac_switchkins.ngc", "trt_task_hal_runtime_probe_linuxcnc_stdout": "/home/meswork/cnc_wams/wasm-port/build/native/trt-task-hal-runtime/linuxcnc.stdout.log", "trt_task_hal_runtime_probe_linuxcnc_stderr": "/home/meswork/cnc_wams/wasm-port/build/native/trt-task-hal-runtime/linuxcnc.stderr.log", "native_task_hal_probe": "failed", "native_probe_status": "failed", "trt_task_hal_runtime_probe_status": "runtime_state_probe_failed", "trt_task_hal_runtime_probe_note": "linuxcnc_started_but_required_trt_hal_pins_did_not_appear" }, "hostBlockers": [ { "component": "halcmd", "blocker": "dynamic_linker_requirement", "detail": "linuxcnc/bin/halcmd: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by linuxcnc/bin/halcmd)" }, { "component": "halcmd", "blocker": "dynamic_linker_requirement", "detail": "liblinuxcncini.so.1 => not found" }, { "component": "halcmd", "blocker": "dynamic_linker_requirement", "detail": "liblinuxcnchal.so.0 => not found" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "linuxcnc/bin/rs274: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by linuxcnc/bin/rs274)" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "linuxcnc/bin/rs274: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by linuxcnc/bin/rs274)" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "librs274.so.0 => not found" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "libnml.so.0 => not found" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "liblinuxcnchal.so.0 => not found" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "liblinuxcncini.so.1 => not found" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "libtooldata.so.0 => not found" }, { "component": "rs274", "blocker": "dynamic_linker_requirement", "detail": "libpython3.13.so.1.0 => not found" }, { "component": "linuxcncsvr", "blocker": "dynamic_linker_requirement", "detail": "liblinuxcnchal.so.0 => not found" }, { "component": "linuxcncsvr", "blocker": "dynamic_linker_requirement", "detail": "libnml.so.0 => not found" }, { "component": "linuxcncsvr", "blocker": "dynamic_linker_requirement", "detail": "liblinuxcncini.so.1 => not found" }, { "component": "linuxcnc scripts/linuxcnc", "blocker": "hardcoded_rip_environment_path_missing", "detail": "/home/meswork/cnc_wams/wasm-port/../linuxcnc/scripts/linuxcnc: line 23: /home/cnc/桌面/cnc_wams/linuxcnc/scripts/rip-environment: No such file or directory" } ], "ldd": { "halcmd": { "command": "ldd linuxcnc/bin/halcmd", "status": 0, "signal": null, "stdout": "linuxcnc/bin/halcmd: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by linuxcnc/bin/halcmd)\n\tlinux-vdso.so.1 (0x00007ffe1df2d000)\n\tliblinuxcncini.so.1 => not found\n\tliblinuxcnchal.so.0 => not found\n\tlibedit.so.2 => /lib/x86_64-linux-gnu/libedit.so.2 (0x000077e6290a4000)\n\tlibstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x000077e628e00000)\n\tlibgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x000077e629084000)\n\tlibc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000077e628a00000)\n\tlibtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x000077e629050000)\n\tlibbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x000077e629038000)\n\tlibm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000077e628d19000)\n\t/lib64/ld-linux-x86-64.so.2 (0x000077e62910b000)\n\tlibmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x000077e628d0c000)\n", "stderr": "" }, "rs274": { "command": "ldd linuxcnc/bin/rs274", "status": 0, "signal": null, "stdout": "linuxcnc/bin/rs274: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by linuxcnc/bin/rs274)\nlinuxcnc/bin/rs274: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by linuxcnc/bin/rs274)\n\tlinux-vdso.so.1 (0x00007ffd1ad98000)\n\tlibrs274.so.0 => not found\n\tlibnml.so.0 => not found\n\tliblinuxcnchal.so.0 => not found\n\tliblinuxcncini.so.1 => not found\n\tlibtooldata.so.0 => not found\n\tlibpython3.13.so.1.0 => not found\n\tlibedit.so.2 => /lib/x86_64-linux-gnu/libedit.so.2 (0x0000711e18f2f000)\n\tlibstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x0000711e18c00000)\n\tlibgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x0000711e18f0f000)\n\tlibc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x0000711e18800000)\n\tlibtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x0000711e18edd000)\n\tlibbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x0000711e18ec3000)\n\tlibm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x0000711e18b19000)\n\t/lib64/ld-linux-x86-64.so.2 (0x0000711e18fb9000)\n\tlibmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x0000711e18eb6000)\n", "stderr": "" }, "linuxcncsvr": { "command": "ldd linuxcnc/bin/linuxcncsvr", "status": 0, "signal": null, "stdout": "\tlinux-vdso.so.1 (0x00007ffe9c9d9000)\n\tliblinuxcnchal.so.0 => not found\n\tlibnml.so.0 => not found\n\tliblinuxcncini.so.1 => not found\n\tlibstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x000078425a200000)\n\tlibgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x000078425a52d000)\n\tlibc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x0000784259e00000)\n\tlibm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000078425a444000)\n\t/lib64/ld-linux-x86-64.so.2 (0x000078425a56d000)\n", "stderr": "" } }, "checks": [ { "name": "phase0 native source/probe gate passes", "pass": true, "detail": "task_hal_phase0_native_probe_gate=ok" }, { "name": "native readiness audit passes", "pass": true, "detail": "native_task_hal_source_artifact_audit=ok | native_task_hal_readiness_artifact=web-rtcp-5axis-sim-plan/build/readiness/native-task-hal-readiness.json | task_hal_web_simulation_boundary_consistent=1 | native_task_hal_host_probe_status=ready_disabled_by_default | hardware_drive=0 | host_realtime_kernel=0 | external_user_m_process_ready=0 | tool_db_process_ready=0 | promotion_scope=web_simulation_only" }, { "name": "source manifest ready", "pass": true, "detail": "{\"task_hal_source_manifest_status\":\"ok\",\"task_hal_source_manifest_ready\":\"1\",\"task_hal_source_manifest_path\":\"/home/meswork/cnc_wams/wasm-port/tools/task-hal-source-manifest.txt\",\"task_hal_source_manifest_report\":\"/home/meswork/cnc_wams/wasm-port/build/task-hal/task-hal-source-manifest.tsv\",\"task_hal_source_count\":\"20\",\"task_source_count\":\"7\",\"hal_source_count\":\"4\",\"motion_source_count\":\"6\",\"nml_source_count\":\"1\",\"libnml_source_count\":\"2\",\"task_hal_reference_source_ready\":\"1\",\"task_hal_vendor_source_ready\":\"0\",\"task_hal_vendor_hash_match_ready\":\"1\",\"task_hal_missing_reference_source_count\":\"0\",\"task_hal_missing_reference_sources_ready\":\"1\",\"task_hal_missing_reference_source_list\":\"-\",\"task_hal_missing_vendor_source_list\":\"src/emc/task/task.hh,src/emc/task/taskclass.hh,src/emc/task/taskclass.cc,src/emc/task/emctask.cc,src/emc/task/emctaskmain.cc,src/emc/task/taskintf.cc,src/emc/task/emccanon.cc,src/emc/motion/usrmotintf.h,src/emc/motion/motion.c,src/emc/motion/command.c,src/emc/motion/control.c,src/hal/hal_lib.c,src/hal/hal_priv.h,src/hal/components/threads.c,src/hal/utils/halcmd_commands.cc\",\"task_hal_mismatched_vendor_source_list\":\"-\",\"task_hal_runtime_promoted\":\"0\",\"nativeTaskReady\":\"false\",\"nativeHalSyncReady\":\"false\"}" }, { "name": "TRT source proof ready", "pass": true, "detail": "{\"trt_task_hal_runtime_halcmd_path\":\"/home/meswork/cnc_wams/wasm-port/../linuxcnc/bin/halcmd\",\"trt_task_hal_runtime_linuxcnc_path\":\"/home/meswork/cnc_wams/wasm-port/../linuxcnc/scripts/linuxcnc\",\"trt_task_hal_runtime_requirements\":\"halcmd:1,linuxcnc:1\",\"trt_task_hal_missing_requirements\":\"-\",\"trt_task_hal_source_proof_ready\":\"1\",\"trt_task_hal_runtime_ready\":\"1\",\"trt_task_hal_execution_enabled\":\"0\",\"trt_task_hal_promotion_allowed\":\"0\",\"nativeTaskReady\":\"false\",\"nativeHalSyncReady\":\"false\",\"native_task_hal_probe\":\"ok\",\"native_probe_status\":\"ready_disabled_by_default\",\"trt_task_hal_runtime_probe_status\":\"ready_disabled_by_default\",\"trt_task_hal_runtime_probe_note\":\"set_ENABLE_TRT_TASK_HAL_RUNTIME_PROBE_1_to_run_exclusive_host_runtime_probe\"}" }, { "name": "host-native runtime blocker captured", "pass": true, "detail": "[{\"component\":\"halcmd\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"linuxcnc/bin/halcmd: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by linuxcnc/bin/halcmd)\"},{\"component\":\"halcmd\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"liblinuxcncini.so.1 => not found\"},{\"component\":\"halcmd\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"liblinuxcnchal.so.0 => not found\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"linuxcnc/bin/rs274: /lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by linuxcnc/bin/rs274)\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"linuxcnc/bin/rs274: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by linuxcnc/bin/rs274)\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"librs274.so.0 => not found\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"libnml.so.0 => not found\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"liblinuxcnchal.so.0 => not found\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"liblinuxcncini.so.1 => not found\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"libtooldata.so.0 => not found\"},{\"component\":\"rs274\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"libpython3.13.so.1.0 => not found\"},{\"component\":\"linuxcncsvr\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"liblinuxcnchal.so.0 => not found\"},{\"component\":\"linuxcncsvr\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"libnml.so.0 => not found\"},{\"component\":\"linuxcncsvr\",\"blocker\":\"dynamic_linker_requirement\",\"detail\":\"liblinuxcncini.so.1 => not found\"},{\"component\":\"linuxcnc scripts/linuxcnc\",\"blocker\":\"hardcoded_rip_environment_path_missing\",\"detail\":\"/home/meswork/cnc_wams/wasm-port/../linuxcnc/scripts/linuxcnc: line 23: /home/cnc/桌面/cnc_wams/linuxcnc/scripts/rip-environment: No such file or directory\"}]" }, { "name": "web simulation promotion remains bounded", "pass": true, "detail": "{\"task_hal_web_simulation_boundary_consistent\":1,\"native_task_hal_host_probe_status\":\"ready_disabled_by_default\",\"hardware_drive\":0,\"host_realtime_kernel\":0,\"external_user_m_process_ready\":0,\"tool_db_process_ready\":0,\"promotion_scope\":\"web_simulation_only\"}" } ], "conclusion": { "nativeTaskHalSourceComparisonReady": true, "nativeTransitionLogAvailable": false, "nativeTransitionLogBlockedByHostRuntime": true, "reason": "Current host cannot start the LinuxCNC native TRT task/HAL runtime: generated LinuxCNC RIP scripts reference an old absolute path and binaries require unavailable host runtime libraries such as GLIBC_2.38/libpython3.13.", "boundary": "This completes BTN-013 as an auditable native comparison and blocker record; it does not claim hardware drive, realtime kernel, external user-M process, or tool DB native runtime readiness." } }