Implement WebAssembly runtime and kinematics coverage
This commit is contained in:
92
coverage/kinematics-mapping-contract.json
Normal file
92
coverage/kinematics-mapping-contract.json
Normal file
@@ -0,0 +1,92 @@
|
||||
{
|
||||
"axis_order": {
|
||||
"A": 3,
|
||||
"B": 4,
|
||||
"C": 5,
|
||||
"U": 6,
|
||||
"V": 7,
|
||||
"W": 8,
|
||||
"X": 0,
|
||||
"Y": 1,
|
||||
"Z": 2
|
||||
},
|
||||
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
||||
"contract_sha256": "f79ad4af7f460b0d544d835fa63fe331d7c39907d7394edba1c7a3cbef612874",
|
||||
"error_cases": [
|
||||
"null_config",
|
||||
"null_pose",
|
||||
"nonfinite_joint",
|
||||
"nonfinite_pose",
|
||||
"joint_count_mismatch",
|
||||
"enabled_limit_violation",
|
||||
"invalid_coordinate",
|
||||
"inverse_only_forward",
|
||||
"forward_only_inverse"
|
||||
],
|
||||
"inputs": {
|
||||
"header": "/home/mes006/linuxcncWebWASM/wasm-core/include/sim_kinematics.h",
|
||||
"header_sha256": "db16293ec3645559a0be71a40963693f3d1e3f5fdedc92902be19b47f653dfa8",
|
||||
"source": "/home/mes006/linuxcncWebWASM/wasm-core/src/sim_kinematics.c",
|
||||
"source_sha256": "7a77915c59f190bcbe5c93d8f53498745bfcf978c167ba8878a21b914f9401fd"
|
||||
},
|
||||
"sample_mappings": [
|
||||
{
|
||||
"axis_joint": {
|
||||
"X": 0,
|
||||
"Y": 1,
|
||||
"Z": 2
|
||||
},
|
||||
"coordinates": "XYZ"
|
||||
},
|
||||
{
|
||||
"axis_joint": {
|
||||
"X": 0,
|
||||
"Y": 1,
|
||||
"Z": 3
|
||||
},
|
||||
"coordinates": "XYYZ",
|
||||
"duplicate": {
|
||||
"axis": "Y",
|
||||
"copies": [
|
||||
2
|
||||
],
|
||||
"owner": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"axis_joint": {
|
||||
"X": 0,
|
||||
"Y": 1,
|
||||
"Z": 3
|
||||
},
|
||||
"case_fold": true,
|
||||
"coordinates": "xyyz"
|
||||
},
|
||||
{
|
||||
"axis_joint": {
|
||||
"A": 3,
|
||||
"B": 4,
|
||||
"C": 5,
|
||||
"U": 6,
|
||||
"V": 7,
|
||||
"W": 8,
|
||||
"X": 0,
|
||||
"Y": 1,
|
||||
"Z": 2
|
||||
},
|
||||
"coordinates": "XYZABCUVW"
|
||||
}
|
||||
],
|
||||
"schema": "kinematics-mapping-contract.v1",
|
||||
"semantics": {
|
||||
"coordinate_case": "ASCII case-fold to uppercase",
|
||||
"duplicate_axis": "first occurrence owns axis; later duplicates copy the first joint during inverse",
|
||||
"extra_joints": "coordinates may repeat and joint_count remains authoritative",
|
||||
"forward": "joint-to-pose uses mapped first joint for each axis",
|
||||
"home": "zeroes all configured joints, then computes forward pose",
|
||||
"inverse": "pose-to-joint initializes all joints then fills duplicates deterministically",
|
||||
"limits": "enabled inclusive min/max; violation returns SIM_KIN_ERR_RANGE",
|
||||
"state_hash": "includes config bytes, configured joint prefix and pose bytes"
|
||||
},
|
||||
"status": "verified"
|
||||
}
|
||||
Reference in New Issue
Block a user