{ "boundary": { "duplicate_axis_suffix": "verified", "missing_required_coordinate": "SIM_KIN_ERR_CONFIGURATION verified", "pivot_length": "250.0 verified", "round_trip": "verified", "state_hash": "native/WASM identical" }, "configuration": { "coordinates": "xyzbcwy", "duplicate_axis": "Y at joint 1 and suffix joint 6; first-wins mapping with suffix synchronized", "joints": 7, "kinematics": "5axiskins", "path": "linuxcnc/configs/sim/axis/vismach/5axis/bridgemill/5axis.ini", "pivot_length_default": 250.0, "required_coordinates": "XYZBCW", "scan": { "joint_count": true, "kins_entry": true, "pivot_pin": true } }, "formula": { "forward": "X=JX+r*sin(180-B)*cos(C), Y=JY+r*sin(180-B)*sin(C), Z=JZ+pivot+r*cos(180-B)", "inverse": "subtract the same spherical vector, then map pose to coordinates", "source_contains_required_coordinates": true, "source_spherical_helper": "s2r" }, "implementation_status": "verified", "native_wasm": { "native_command": "build-native/sim_kinematics_test", "status": "passed", "wasm_command": "node build-wasm/sim_kinematics_wasm_test.js" }, "oracle": { "reason": "linuxcnc/unit_tests/kinematics is absent from the locked source", "status": "blocked" }, "report_sha256": "d0af8c3785d87bedd869d235f45b9d522434589a26794113b1acf8526982dde0", "sample": { "byte_identical_json": true, "native": { "inverse": [ 10.0, 20.0, 30.0, 35.0, 40.0, -2.0, 20.0 ], "pose": [ 118.967490359, 111.434580971, 76.850293016 ], "state_hash": 5053227094931014129 }, "wasm": { "inverse": [ 10.0, 20.0, 30.0, 35.0, 40.0, -2.0, 20.0 ], "pose": [ 118.967490359, 111.434580971, 76.850293016 ], "state_hash": 5053227094931014129 } }, "schema": "fiveaxis-kinematics-report.v1", "source_records": { "config": { "path": "linuxcnc/configs/sim/axis/vismach/5axis/bridgemill/5axis.ini", "sha256": "789ba656f8ee3e97feba07b58eb242305898e745795891b1a7e536289bffe6bf" }, "hal": { "path": "linuxcnc/configs/sim/axis/vismach/5axis/bridgemill/5axisgui.hal", "sha256": "a59e6b9432c0a898f6d8da46309b868733a906158733fb0942017d14eb97cd07" }, "header": { "path": "wasm-core/include/sim_kinematics.h", "sha256": "db16293ec3645559a0be71a40963693f3d1e3f5fdedc92902be19b47f653dfa8" }, "source": { "path": "linuxcnc/src/emc/kinematics/5axiskins.c", "sha256": "2e29fee21936cfbbafbb000290276e4b32eaba4831014e08d3fb833f2b3dac72" }, "source_impl": { "path": "wasm-core/src/sim_kinematics.c", "sha256": "7a77915c59f190bcbe5c93d8f53498745bfcf978c167ba8878a21b914f9401fd" }, "test": { "path": "wasm-core/tests/sim_kinematics_test.c", "sha256": "ceeb8b4100d034d76e70ce675d78b2d62c51e8e70be2205a9c8ae02e105a6aa6" } }, "status": "partial" }