{ "configuration_candidates": [ { "coordinates": "XYZAC", "id": "xyzac-trt", "kind": "real", "parameters": [ "offsets", "tool", "limits" ], "path": "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini", "type": 2 }, { "coordinates": "XYZABC", "id": "genser-puma560", "kind": "real", "parameters": [ "DH", "solver", "limits" ], "path": "linuxcnc/configs/sim/axis/vismach/puma/puma560.ini", "type": 13 }, { "coordinates": "XYZAB", "id": "pentapod", "kind": "real", "parameters": [ "geometry", "tool", "solver", "limits" ], "path": "linuxcnc/configs/sim/axis/pentapod/pentapod.ini", "type": 18 } ], "implementation_status": "verified", "native_wasm": { "native_command": "build-native/sim_kinematics_registry_test", "status": "passed", "wasm_command": "node build-wasm/sim_kinematics_registry_wasm_test.js" }, "oracle": { "blocked_samples": [ "18-entry registry", "capability requirements", "parameter masks", "real config validation", "unknown/path names" ], "reason": "linuxcnc/unit_tests/kinematics is absent from the locked source", "status": "blocked" }, "registry": { "abi_version": 1, "capabilities": { "duplicate_coordinates": 64, "extra_joints": 32, "forward": 1, "identity": 4, "inverse": 2, "iterative": 8, "switchable": 16 }, "capability_union": 127, "entry_count": 18, "parameter_union": 255, "parameters": { "DH": 64, "geometry": 32, "limits": 2, "mapping": 1, "offsets": 4, "pivot": 16, "solver": 128, "tool": 8 }, "state_hash": 3966926008000628109, "verified_entries": 18 }, "report_sha256": "e18289c5743e6b7c8acf608a43ebb6a2169f72929c8667da8ad3810be65f7dd2", "samples": { "byte_identical_json": true, "native": { "capability_error": -711, "capability_union": 127, "coordinate_error": -703, "count": 18, "entries": [ { "capabilities": 119, "max": 9, "min": 1, "name": "trivkins", "parameters": 3, "required": "", "type": 1 }, { "capabilities": 115, "max": 9, "min": 5, "name": "xyzac-trt-kins", "parameters": 15, "required": "XYZAC", "type": 2 }, { "capabilities": 115, "max": 9, "min": 5, "name": "xyzbc-trt-kins", "parameters": 15, "required": "XYZBC", "type": 3 }, { "capabilities": 51, "max": 9, "min": 6, "name": "xyzbcw", "parameters": 19, "required": "XYZBCW", "type": 4 }, { "capabilities": 51, "max": 9, "min": 3, "name": "corexykins", "parameters": 3, "required": "XYZ", "type": 5 }, { "capabilities": 19, "max": 3, "min": 3, "name": "rosekins", "parameters": 3, "required": "XYZ", "type": 6 }, { "capabilities": 51, "max": 9, "min": 3, "name": "maxkins", "parameters": 19, "required": "XYZ", "type": 7 }, { "capabilities": 51, "max": 9, "min": 3, "name": "rotatekins", "parameters": 3, "required": "XYZ", "type": 8 }, { "capabilities": 115, "max": 9, "min": 6, "name": "5axiskins", "parameters": 19, "required": "XYZBCW", "type": 9 }, { "capabilities": 19, "max": 6, "min": 6, "name": "scarakins", "parameters": 35, "required": "XYZCAB", "type": 10 }, { "capabilities": 19, "max": 6, "min": 6, "name": "pumakins", "parameters": 35, "required": "XYZABC", "type": 11 }, { "capabilities": 19, "max": 5, "min": 5, "name": "scorbot-kins", "parameters": 35, "required": "XYZAB", "type": 12 }, { "capabilities": 27, "max": 6, "min": 6, "name": "genserkins", "parameters": 195, "required": "XYZABC", "type": 13 }, { "capabilities": 51, "max": 9, "min": 3, "name": "lineardeltakins", "parameters": 35, "required": "XYZ", "type": 14 }, { "capabilities": 51, "max": 9, "min": 3, "name": "rotarydeltakins", "parameters": 35, "required": "XYZ", "type": 15 }, { "capabilities": 51, "max": 9, "min": 3, "name": "tripodkins", "parameters": 35, "required": "XYZ", "type": 16 }, { "capabilities": 27, "max": 6, "min": 6, "name": "genhexkins", "parameters": 171, "required": "XYZABC", "type": 17 }, { "capabilities": 27, "max": 5, "min": 5, "name": "pentakins", "parameters": 171, "required": "XYZAB", "type": 18 } ], "iterative_require": 0, "joint_error": -703, "lookup_status": 0, "parameter_error": -711, "parameter_union": 255, "path_name": -712, "range_error": -702, "registry_hash": 3966926008000628109, "schema": "kinematics-registry-samples.v1", "type_mismatch": -703, "unknown_name": -705, "verified": 18 }, "state_hash_identical": true, "wasm": { "capability_error": -711, "capability_union": 127, "coordinate_error": -703, "count": 18, "entries": [ { "capabilities": 119, "max": 9, "min": 1, "name": "trivkins", "parameters": 3, "required": "", "type": 1 }, { "capabilities": 115, "max": 9, "min": 5, "name": "xyzac-trt-kins", "parameters": 15, "required": "XYZAC", "type": 2 }, { "capabilities": 115, "max": 9, "min": 5, "name": "xyzbc-trt-kins", "parameters": 15, "required": "XYZBC", "type": 3 }, { "capabilities": 51, "max": 9, "min": 6, "name": "xyzbcw", "parameters": 19, "required": "XYZBCW", "type": 4 }, { "capabilities": 51, "max": 9, "min": 3, "name": "corexykins", "parameters": 3, "required": "XYZ", "type": 5 }, { "capabilities": 19, "max": 3, "min": 3, "name": "rosekins", "parameters": 3, "required": "XYZ", "type": 6 }, { "capabilities": 51, "max": 9, "min": 3, "name": "maxkins", "parameters": 19, "required": "XYZ", "type": 7 }, { "capabilities": 51, "max": 9, "min": 3, "name": "rotatekins", "parameters": 3, "required": "XYZ", "type": 8 }, { "capabilities": 115, "max": 9, "min": 6, "name": "5axiskins", "parameters": 19, "required": "XYZBCW", "type": 9 }, { "capabilities": 19, "max": 6, "min": 6, "name": "scarakins", "parameters": 35, "required": "XYZCAB", "type": 10 }, { "capabilities": 19, "max": 6, "min": 6, "name": "pumakins", "parameters": 35, "required": "XYZABC", "type": 11 }, { "capabilities": 19, "max": 5, "min": 5, "name": "scorbot-kins", "parameters": 35, "required": "XYZAB", "type": 12 }, { "capabilities": 27, "max": 6, "min": 6, "name": "genserkins", "parameters": 195, "required": "XYZABC", "type": 13 }, { "capabilities": 51, "max": 9, "min": 3, "name": "lineardeltakins", "parameters": 35, "required": "XYZ", "type": 14 }, { "capabilities": 51, "max": 9, "min": 3, "name": "rotarydeltakins", "parameters": 35, "required": "XYZ", "type": 15 }, { "capabilities": 51, "max": 9, "min": 3, "name": "tripodkins", "parameters": 35, "required": "XYZ", "type": 16 }, { "capabilities": 27, "max": 6, "min": 6, "name": "genhexkins", "parameters": 171, "required": "XYZABC", "type": 17 }, { "capabilities": 27, "max": 5, "min": 5, "name": "pentakins", "parameters": 171, "required": "XYZAB", "type": 18 } ], "iterative_require": 0, "joint_error": -703, "lookup_status": 0, "parameter_error": -711, "parameter_union": 255, "path_name": -712, "range_error": -702, "registry_hash": 3966926008000628109, "schema": "kinematics-registry-samples.v1", "type_mismatch": -703, "unknown_name": -705, "verified": 18 } }, "schema": "kinematics-registry-report.v1", "source_records": { "config_genser": { "path": "linuxcnc/configs/sim/axis/vismach/puma/puma560.ini", "sha256": "2bb881ed6c5662282977accac29bfd6c4efc18e572cbcb8a31c134677012cf4c" }, "config_pentapod": { "path": "linuxcnc/configs/sim/axis/pentapod/pentapod.ini", "sha256": "0fb210122ab482087d3a95e5e7487baecb84c3260dca1769970f4c19b2ad0618" }, "config_xyzac": { "path": "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini", "sha256": "9ee1d96962e7a44b25468f452543cfc3ca318585269e26227bb5b6e17b1e42f1" }, "implementation": { "path": "wasm-core/src/sim_kinematics_registry.c", "sha256": "fa852e370b5fa52006afb9c04bd6bc4ebba798d9b1ab7f060d52ecf98326d97d" }, "kinematics_implementation": { "path": "wasm-core/src/sim_kinematics.c", "sha256": "316fe74604180b6e9ae7f66369f084278f1b54b7c4545ec9efa870186adc9600" }, "linuxcnc_header": { "path": "linuxcnc/src/emc/kinematics/kinematics.h", "sha256": "33b3744b9ceeeef3d992e9ca9cda89d93a3357d2d0a2af2023ca728e4be8e428" }, "sim_header": { "path": "wasm-core/include/sim_kinematics.h", "sha256": "34b08db612056432e08705951032418bf6f6cd2c285bde5743515588fbe484ec" }, "test": { "path": "wasm-core/tests/sim_kinematics_registry_test.c", "sha256": "42d0952fdb94340e33b4a86a5f0707aa3330302ae3c5e2573785bf29ee8ac243" } }, "status": "partial", "validation": { "capability_error": -711, "coordinate_error": -703, "iterative_genser_and_DH_status": 0, "joint_error": -703, "lookup_status": 0, "parameter_error": -711, "path_name": -712, "range_error": -702, "type_mismatch": -703, "unknown_name": -705 } }