{
  "L": {
    "runtimeVersion": null,
    "debug": true,
    "url": "http://127.0.0.1:59193/assets/nexprod/nexprod01-player.html?exercise=hurdle-stretch&caseId=warmup_hurdle_stretch&phase=0.25&play=0&debug=0&visualMode=nex&instanceId=nexp-v26-mt0bcp4a-c420trrea2&safeBoot=0&lowPower=1&pixelRatioCap=1.15&antialias=1&maxFPS=24&staticAfterReady=0&idleSleepAfterReady=0&nativeRuntimeParity=1&nativeSkin=1&skinPreset=freeridehuman&readyTimeoutMs=9000&hostLifecycle=persistent-single-player-v32&build=NEXPROD01_PLAYER_TESTHOST_V58_OTHER_11_IK_BIOMECH_REAPPROVAL_2026_06_23",
    "foot": {
      "F": {
        "x": 0.13461230848693592,
        "y": 0.8211597506318553,
        "z": -0.4114692106466658
      },
      "T": {
        "x": 0.062483914685069766,
        "y": 0.847606810995805,
        "z": -0.5076403817828457
      },
      "C": {
        "x": 0.10716029491593088,
        "y": 0.46005985382983544,
        "z": -0.25309205997883716
      },
      "toe": {
        "x": -0.585986774406224,
        "y": 0.2148616762182306,
        "z": -0.7813155318523247
      },
      "footToToeLength": 0.12308877427302573,
      "toeUpDot": 0.2148616762182306,
      "toeShinDot": 0.468660566284041
    },
    "grip": {
      "schema": "V291_DEV_GRIP_ENTRY_ACTIVE",
      "applied": true,
      "activeDevRuntimePath": true,
      "side": "L",
      "selectedPalm": "pink",
      "selectedSemantic": "pinkyPalm",
      "status": "GRIP_ENTRY_ACTIVE_PREFINGER_READY",
      "fingerGate": "blocked_in_V291_entry_only",
      "policy": "active dev path; legacy R-only grip patches bypassed; arm reaches first palm; leg/object meet allowed before contact; palm frame aligns second point; fingers later",
      "shortageM": 0.061835047,
      "appliedObjectMeetM": 0.061835047,
      "neutralRollDeg": 113.805,
      "firstDistanceM": 0.013936683,
      "secondDistanceM": 0.007161826,
      "firstOutsideScore": 0.548281,
      "secondOutsideScore": 0.854001,
      "targetWrist": {
        "x": 0.21118,
        "y": 1.04476,
        "z": -0.28746
      },
      "firstPalm": {
        "x": 0.16887,
        "y": 0.9989,
        "z": -0.34156
      },
      "secondPalm": {
        "x": 0.17217,
        "y": 1.0303,
        "z": -0.38766
      },
      "objectMeetDelta": {
        "x": -0.01022,
        "y": 0.05269,
        "z": 0.03071
      },
      "gate": {
        "meetOk": true,
        "firstSurfaceOk": true,
        "secondSurfaceOk": true,
        "sideOk": true,
        "neutralRollOk": true,
        "preFingerOk": true
      },
      "candidates": [
        {
          "name": "pink",
          "semantic": "pinkyPalm",
          "shortageM": 0.061835047,
          "secondDistanceM": 0.007161826,
          "neutralRollDeg": 113.805,
          "preFingerOk": true
        },
        {
          "name": "green",
          "semantic": "indexPalm",
          "shortageM": 0.103329755,
          "secondDistanceM": 0.065248913,
          "neutralRollDeg": 110.191,
          "preFingerOk": false
        }
      ]
    },
    "body": "KLAR\nNEX MODEL READY\nNEXPROD01 \u00b7 100%\nNEXPROD01\none writer\n3 fps\nNEXPLAYER RUNTIME\nDynamic Warm Up \u00b7 02 \u00b7 Hurdle stretch\nhurdle-stretch \u2192 warmup_hurdle_stretch_right_pose_v50_ik_v1 \u00b7 for_nex_approval \u00b7 ikHash 2d1a35bb \u00b7 phase 0.250\nCHECK",
    "screenshots": {
      "rear": "/mnt/data/v293_left_foot_ik_data_fix/visual_truth/V293_L_rear_IK_DATA_FIX.png",
      "side": "/mnt/data/v293_left_foot_ik_data_fix/visual_truth/V293_L_side_IK_DATA_FIX.png",
      "oblique": "/mnt/data/v293_left_foot_ik_data_fix/visual_truth/V293_L_oblique_IK_DATA_FIX.png"
    }
  },
  "R": {
    "runtimeVersion": null,
    "debug": true,
    "url": "http://127.0.0.1:54939/assets/nexprod/nexprod01-player.html?exercise=hurdle-stretch&caseId=warmup_hurdle_stretch&phase=0.75&play=0&debug=0&visualMode=nex&instanceId=nexp-v26-mt0bbwso-qdcctxv64ge&safeBoot=0&lowPower=1&pixelRatioCap=1.15&antialias=1&maxFPS=24&staticAfterReady=0&idleSleepAfterReady=0&nativeRuntimeParity=1&nativeSkin=1&skinPreset=freeridehuman&readyTimeoutMs=9000&hostLifecycle=persistent-single-player-v32&build=NEXPROD01_PLAYER_TESTHOST_V58_OTHER_11_IK_BIOMECH_REAPPROVAL_2026_06_23",
    "foot": {
      "F": {
        "x": -0.143553752535657,
        "y": 0.8185150990174488,
        "z": -0.40781312787469093
      },
      "T": {
        "x": -0.07143009894708088,
        "y": 0.844960414940503,
        "z": -0.5039779658346957
      },
      "C": {
        "x": -0.11609377928456203,
        "y": 0.45731051159827574,
        "z": -0.2493900610712699
      },
      "toe": {
        "x": 0.5859868288765826,
        "y": 0.21486164448613693,
        "z": -0.781315499725866
      },
      "footToToeLength": 0.12308067354832375,
      "toeUpDot": 0.21486164448613693,
      "toeShinDot": 0.46866051825764987
    },
    "grip": {
      "schema": "V291_DEV_GRIP_ENTRY_ACTIVE",
      "applied": true,
      "activeDevRuntimePath": true,
      "side": "R",
      "selectedPalm": "pink",
      "selectedSemantic": "pinkyPalm",
      "status": "GRIP_ENTRY_ACTIVE_BUT_PREFINGER_BLOCKED",
      "fingerGate": "blocked_in_V291_entry_only",
      "policy": "active dev path; legacy R-only grip patches bypassed; arm reaches first palm; leg/object meet allowed before contact; palm frame aligns second point; fingers later",
      "shortageM": 0.036585954,
      "appliedObjectMeetM": 0.036585954,
      "neutralRollDeg": 66.067,
      "firstDistanceM": 0.003862803,
      "secondDistanceM": 0.027950763,
      "firstOutsideScore": 0.807892,
      "secondOutsideScore": 0.54113,
      "targetWrist": {
        "x": -0.22669,
        "y": 0.99829,
        "z": -0.2934
      },
      "firstPalm": {
        "x": -0.17781,
        "y": 0.95286,
        "z": -0.34367
      },
      "secondPalm": {
        "x": -0.17467,
        "y": 0.92463,
        "z": -0.29575
      },
      "objectMeetDelta": {
        "x": 0.00399,
        "y": 0.03191,
        "z": 0.01745
      },
      "gate": {
        "meetOk": true,
        "firstSurfaceOk": true,
        "secondSurfaceOk": false,
        "sideOk": true,
        "neutralRollOk": true,
        "preFingerOk": false
      },
      "candidates": [
        {
          "name": "pink",
          "semantic": "pinkyPalm",
          "shortageM": 0.036585954,
          "secondDistanceM": 0.027950763,
          "neutralRollDeg": 66.067,
          "preFingerOk": false
        },
        {
          "name": "green",
          "semantic": "indexPalm",
          "shortageM": 0.076952068,
          "secondDistanceM": 6.5281e-05,
          "neutralRollDeg": 70.368,
          "preFingerOk": false
        }
      ]
    },
    "body": "KLAR\nNEX MODEL READY\nNEXPROD01 \u00b7 100%\nNEXPROD01\none writer\n1 fps\nNEXPLAYER RUNTIME\nDynamic Warm Up \u00b7 02 \u00b7 Hurdle stretch\nhurdle-stretch \u2192 warmup_hurdle_stretch_right_pose_v50_ik_v1 \u00b7 for_nex_approval \u00b7 ikHash 2d1a35bb \u00b7 phase 0.750\nCHECK",
    "screenshots": {
      "rear": "/mnt/data/v293_left_foot_ik_data_fix/visual_truth/V293_R_rear_IK_DATA_FIX.png",
      "side": "/mnt/data/v293_left_foot_ik_data_fix/visual_truth/V293_R_side_IK_DATA_FIX.png",
      "oblique": "/mnt/data/v293_left_foot_ik_data_fix/visual_truth/V293_R_oblique_IK_DATA_FIX.png"
    }
  }
}