{
  "version": "NEXT11_DYNAMIC_WARM_UP_SEQUENCE_V632_R8_DOSAGE_CORRECTION",
  "generatedAt": "2026-09-11",
  "status": "V632_R8_SINGLE_LEG_TOE_TOUCH_STATIONARY_DOSAGE_CORRECTED",
  "policy": {
    "source": "User supplied full Dynamic Warm Up text list in chat 2026-06-04.",
    "programTruth": "Dynamic Warm Up stays one program row in program data; overview and player expand it into 18 transparent segment steps from this shared sequence.",
    "animationTruth": "Dynamic Warm Up uses 18 segment steps, each bound to its own approved/current animationProfileId; coaching content does not change motion.",
    "normalPassRendering": "buildSteps expands Dynamic Warm Up into 18 Nex profile steps inside the existing pass player. Each segment carries exercise-specific coaching cues from this shared sequence.",
    "v79RuntimeRule": "No new player and no new writer. Existing pass player -> NEXTNex2RigService -> tools/nex2rig-review.html -> native Nex profile path only.",
    "approvalStatus": "for_nex_approval / first production candidate, not production_approved final visual sign-off.",
    "coachingContentAuthority": "Each Dynamic Warm Up segmentKey owns its coaching array here. All program passes that use dynamic_warm_up_ota_full_v1 inherit the same cues; no per-pass duplication."
  },
  "sequences": {
    "dynamic_warm_up_ota_full_v1": {
      "sequenceId": "dynamic_warm_up_ota_full_v1",
      "exerciseKey": "dynamic-warm-up",
      "title": "Dynamic Warm Up",
      "type": "ordered_warmup_sequence",
      "sequenceMode": "ordered_linear",
      "internalRestSec": 0,
      "defaultDurationLabel": "18 exercises",
      "estimatedDurationSec": 720,
      "defaultDistance": {
        "metric": "9 m"
      },
      "motionType": "mixed_travel_and_stationary_sequence",
      "rootMotionPolicy": "segment_defined",
      "worldMotionPolicy": "static_world_lane; presentation_root_travel_source_timed; camera_tracks_nex",
      "animationStatus": "v425_motion_baseline_plus_dynamic_warmup_workout_18_step_player",
      "steps": [
        {
          "order": 1,
          "segmentKey": "high-knee-tuck",
          "title": "High knee tuck",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_alternating_knee_tuck",
          "contactProfile": "alternating_feet",
          "coaching": [
            "Stå långt och dra ett knä hela vägen upp mot bröstet med händerna.",
            "Håll stödbenet stabilt och foten rakt fram.",
            "Släpp kontrollerat och byt ben utan att tappa hållningen."
          ],
          "animationProfileId": "warmup_high_knee_tuck_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_high_knee_tuck_ik_v1",
          "nex2rigMode": "warmup_high_knee_tuck_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v412",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_high_knee_tuck_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "Packaged ijj7TD0DA6Q High Knee Tuck film timing + current Nex one-writer IK geometry + generic bilateral shin grip",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/high-knee-tuck-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 3,
            "requiredKeyposes": 3,
            "minMeanVisibility": 0.909753,
            "avgMeanVisibility": 0.965563,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "Special Olympics high-knees thumbnail + V78 left/right high-knee tuck peaks",
            "realNexCaseCount": 2,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-high-knee-tuck.html?exercise=high-knee-tuck&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "resolvedPlaybackAsset": "assets/nexprod/resolved/high-knee-tuck-v630-natural-dynamics-r1.resolved.json"
        },
        {
          "order": 2,
          "segmentKey": "high-knee-run",
          "title": "High knee run",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_run_loop",
          "contactProfile": "alternating_feet",
          "coaching": [
            "Driv knäna högt medan överkroppen är lång och stabil.",
            "Arbeta aktivt med motsatt arm till motsatt knä.",
            "Håll markkontakten snabb och lätt under kroppen."
          ],
          "animationProfileId": "high_knee_run_ik_v1",
          "animationStatus": "v630_natural_dynamics_r1_wip",
          "profileId": "high_knee_run_ik_v1",
          "nex2rigMode": "high_knee_run_ik_v1",
          "reviewBatch": "dynamic_warmup_workout_player_v425",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v412",
            "modeParam": "resolvedPlayback",
            "profileParam": "high_knee_run_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v630_natural_dynamics_r1_resolved_playback_zero_live_solver",
            "reviewBatch": "dynamic_warmup_workout_player_v425",
            "source": "V390 user-provided High Knee Run film timing + resolved Nex playback"
          },
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-high-knee-run.html?exercise=high-knee-run&profile=high_knee_run_ik_v1&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "resolvedPlaybackAsset": "assets/nexprod/resolved/high-knee-run-v630-natural-dynamics-r5-planar-foot.resolved.json"
        },
        {
          "order": 3,
          "segmentKey": "hurdle-stretch",
          "title": "Hurdle stretch",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_quad_hurdle_mobility",
          "contactProfile": "alternating_single_foot_balance",
          "coaching": [
            "Greppa foten bakom kroppen och för hälen mot sätet.",
            "Håll knät riktat nedåt och höften sträckt utan att svanka.",
            "Sträck motsatt arm framåt och gå vidare med kontroll."
          ],
          "animationProfileId": "warmup_hurdle_stretch_ik_v1",
          "animationStatus": "v426_hurdle_upper_body_stabilized_motion_maintenance",
          "profileId": "warmup_hurdle_stretch_ik_v1",
          "nex2rigMode": "warmup_hurdle_stretch_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v412",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_hurdle_stretch_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v426_motion_asset_shared_v412_playback_zero_live_solver",
            "reviewBatch": "v426_hurdle_upper_body_stabilized",
            "source": "V83 strict no-reuse MediaPipe source lock + V85 headless RealNex audit",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/hurdle-stretch-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 3,
            "requiredKeyposes": 3,
            "minMeanVisibility": 0.776572,
            "avgMeanVisibility": 0.893495,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "Walking quad stretch source + V78 left/right rear heel-grab peaks",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-hurdle-stretch.html?exercise=hurdle-stretch&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0&appIntegration=v426h1",
          "resolvedPlaybackAsset": "assets/nexprod/resolved/hurdle-stretch-v630-natural-dynamics-r1.resolved.json"
        },
        {
          "order": 4,
          "segmentKey": "butt-kick-run",
          "title": "Butt kick run",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_running_butt_kick",
          "contactProfile": "alternating_feet",
          "coaching": [
            "För hälen snabbt upp mot sätet utan att kasta knät framåt.",
            "Håll höften hög och överkroppen upprätt.",
            "Ta korta, lätta steg med snabb rytm."
          ],
          "animationProfileId": "warmup_butt_kick_run_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_butt_kick_run_ik_v1",
          "nex2rigMode": "warmup_butt_kick_run_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v412",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_butt_kick_run_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "V395 user-film-authoritative butt-kick body/timing + V396 Foot/ToeBase cleanup",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/butt-kick-run-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 3,
            "requiredKeyposes": 3,
            "minMeanVisibility": 0.652987,
            "avgMeanVisibility": 0.842554,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "Special Olympics butt-kicks thumbnail + V78 left/right heel-to-glute peaks",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/butt-kick-run-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-butt-kick-run.html?exercise=butt-kick-run&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0"
        },
        {
          "order": 5,
          "segmentKey": "figure-fours",
          "title": "Figure fours",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_hip_external_rotation_mobility",
          "contactProfile": "alternating_single_foot_balance",
          "coaching": [
            "Lägg fotleden över motsatt knä och hitta balansen.",
            "Skjut höften bakåt medan bröstet hålls uppe.",
            "Pressa knät lätt utåt och byt sida under kontroll."
          ],
          "animationProfileId": "warmup_figure_four_walk_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_figure_four_walk_ik_v1",
          "nex2rigMode": "warmup_figure_four_walk_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v412",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_figure_four_walk_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "V398 user film timing + V387 exact baked Figure Four geometry/transitions",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/figure-fours-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.886671,
            "avgMeanVisibility": 0.886803,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 walking figure-four left/right ankle-over-knee source frames only; generic duplicated ready/reset removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/figure-fours-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-figure-fours.html?exercise=figure-fours&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0&appLoopEndSec=4.000333"
        },
        {
          "order": 6,
          "segmentKey": "straight-leg-march",
          "title": "Straight leg march",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_straight_leg_march_toe_touch",
          "contactProfile": "alternating_feet",
          "coaching": [
            "Lyft benet rakt fram med sträckt knä och aktiv fot.",
            "Möt foten högt med motsatt hand utan att krumma ryggen.",
            "Håll stödbenet stabilt och växla sida i jämn rytm."
          ],
          "animationProfileId": "warmup_straight_leg_march_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_straight_leg_march_ik_v1",
          "nex2rigMode": "warmup_straight_leg_march_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v412",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_straight_leg_march_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "Locked canonical Dynamic Warmup geometry + explicit source-conformity patch only; user film provides timing. V399 pose geometry rejected.",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/straight-leg-march-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.916807,
            "avgMeanVisibility": 0.938685,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 left/right straight-leg march peaks; generic duplicated ready/reset removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/straight-leg-march-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-straight-leg-march.html?exercise=straight-leg-march&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0"
        },
        {
          "order": 7,
          "segmentKey": "atg-split-squat-lunges",
          "title": "Lunges / ATG split squats",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_alternating_deep_lunge",
          "contactProfile": "split_stance_feet_floor",
          "coaching": [
            "Ta ett långt steg och sänk kroppen rakt ned mellan fötterna.",
            "Låt främre knät följa tårnas riktning och behåll hela foten i marken.",
            "Gå så djupt du kan med kontroll och driv vidare genom främre benet."
          ],
          "animationProfileId": "warmup_atg_split_squat_lunge_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_atg_split_squat_lunge_ik_v1",
          "nex2rigMode": "warmup_atg_split_squat_lunge_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v412",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_atg_split_squat_lunge_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "V400 canonical authority + user film timing/source-conformity patch",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/atg-split-squat-lunges-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.823644,
            "avgMeanVisibility": 0.842614,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 left/right deep lunge bottom frames; duplicated start/reset removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/atg-split-squat-lunges-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-atg-split-squat-lunges.html?exercise=atg-split-squat-lunges&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0"
        },
        {
          "order": 8,
          "segmentKey": "reverse-lunges",
          "title": "Reverse lunges",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel_or_in_place_continuation",
          "motionType": "alternating_reverse_lunge_sequence",
          "contactProfile": "split_stance_feet_floor",
          "coaching": [
            "Kliva bak långt nog för att kunna sjunka rakt ned.",
            "Behåll främre foten planterad och knät i linje med tårna.",
            "Tryck tillbaka till stående utan att kasta kroppen framåt."
          ],
          "animationProfileId": "warmup_reverse_lunge_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_reverse_lunge_ik_v1",
          "nex2rigMode": "warmup_reverse_lunge_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_reverse_lunge_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "V405 base + locked warmup_reverse_lunge_ik_v1 canonical + user film timing",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/reverse-lunges-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.835488,
            "avgMeanVisibility": 0.838281,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 left/right reverse-lunge bottom frames; duplicated stand/return removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/reverse-lunges-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-reverse-lunges.html?exercise=reverse-lunges&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0"
        },
        {
          "order": 9,
          "segmentKey": "lateral-lunges",
          "title": "Lateral lunges",
          "prescription": "9 m each direction",
          "distance": {
            "value": 9,
            "unit": "meters",
            "directionMode": "each_direction"
          },
          "sideMode": "alternating_left_right",
          "spaceMode": "travel_lateral",
          "motionType": "lateral_lunge_shift_cycle",
          "contactProfile": "wide_stance_feet_floor",
          "coaching": [
            "Ta ett stort steg åt sidan och sätt hela foten i marken.",
            "Skjut höften bak över det böjda benet medan det andra benet hålls långt.",
            "Knä och tår pekar åt samma håll när du växlar sida."
          ],
          "animationProfileId": "warmup_lateral_lunge_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_lateral_lunge_ik_v1",
          "nex2rigMode": "warmup_lateral_lunge_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_lateral_lunge_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "V414 exact travel sequence + V415 surgical right-foot release cleanup",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/lateral-lunges-v632-r6-neutral-knee-track.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.863151,
            "avgMeanVisibility": 0.891369,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 left/right lateral lunge bottom frames; duplicated wide stance/return removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/lateral-lunges-v632-r6-neutral-knee-track.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-lateral-lunges.html?exercise=lateral-lunges&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "worldMotion": {
            "mode": "baked_exact_sequence_plus_camera_relative_display",
            "keepNexCentered": true,
            "backgroundMode": "scroll_floor_grid",
            "repetitionTravelMeters": 0.437539567,
            "cycleTravelMeters": 0.437539567,
            "continuousAcrossLoops": true,
            "liveSolverCalls": 0,
            "contactSequence": [
              "BOTH plant / lunge left",
              "BOTH plant / lunge right",
              "L_Foot plant / R_Foot gather",
              "R_Foot plant / L_Foot step out"
            ]
          }
        },
        {
          "order": 10,
          "segmentKey": "waiters-bows",
          "title": "Waiter's bows",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "travel_hamstring_scoop",
          "contactProfile": "alternating_feet",
          "coaching": [
            "Fäll från höften med lång rygg och bara lätt böjda knän.",
            "Svep båda händerna nära marken under kroppen.",
            "Res dig genom att föra höften framåt, inte genom att runda ryggen."
          ],
          "animationProfileId": "warmup_waiters_bow_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_waiters_bow_ik_v1",
          "nex2rigMode": "warmup_waiters_bow_ik_v1",
          "reviewBatch": "v417_waiters_bow_canonical_video_timed",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_waiters_bow_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "V417 canonical + recovered V418C 3.5 s soft-ascent timing; resolved playback; no live solver",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/waiters-bows-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "v417_source_conformity_corrected_for_nex_visual_approval",
            "sourceStatus": "v417_supplied_movie_source_conformity",
            "sourceNote": "Old V83 waiter-bow source represented a stationary hinge; V417 canonical is corrected to the supplied OTA traveling alternating straight-leg hamstring scoop.",
            "suppliedMovie": "assets/media/exercises/waiters-bows/source/NEXT11_dynamic_warmup_ijj7TD0DA6Q_waiters-bows.MOV",
            "canonicalRuntimeSolve": "PASS_5_OF_5",
            "newSolver": false,
            "runtimePrimitive": false
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/waiters-bows-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-waiters-bows.html?exercise=waiters-bows&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "worldMotion": {
            "mode": "camera_follow_or_floor_scroll",
            "keepNexCentered": true,
            "backgroundMode": "scroll_floor_grid",
            "liveSolverCalls": 0
          }
        },
        {
          "order": 11,
          "segmentKey": "prisoner-bodyweight-squats",
          "title": "Prisoner bodyweight squats",
          "prescription": "10 reps",
          "reps": {
            "value": 10,
            "unit": "reps"
          },
          "sideMode": "bilateral",
          "spaceMode": "stationary",
          "motionType": "stationary_squat_loop",
          "contactProfile": "both_feet_floor",
          "coaching": [
            "Håll händerna bakom huvudet med armbågarna bakåt och bröstet uppe.",
            "Sätt dig djupt mellan benen med hela foten i marken.",
            "Låt knäna följa tårnas riktning genom hela rörelsen."
          ],
          "animationProfileId": "warmup_prisoner_squat_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_prisoner_squat_ik_v1",
          "nex2rigMode": "warmup_prisoner_squat_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_prisoner_squat_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "Recovered V419D canonical IK -> unchanged generic Nex solver -> resolved bake; fixed feet/deeper/knees track toes",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/prisoner-bodyweight-squats-v632-r6-palm-roll.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.965767,
            "avgMeanVisibility": 0.969681,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 prisoner squat ready + bottom; duplicated return stand removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/prisoner-bodyweight-squats-v632-r6-palm-roll.resolved.json",
          "worldMotion": {
            "mode": "locked_center",
            "keepNexCentered": true,
            "liveSolverCalls": 0
          },
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-prisoner-bodyweight-squats.html?exercise=prisoner-bodyweight-squats&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0"
        },
        {
          "order": 12,
          "segmentKey": "single-leg-toe-touch",
          "title": "Single leg toe touch",
          "prescription": "5 + 5 reps",
          "reps": {
            "left": 5,
            "right": 5
          },
          "sideMode": "left_then_right",
          "spaceMode": "stationary",
          "motionType": "single_leg_hinge_toe_touch",
          "contactProfile": "single_foot_floor",
          "coaching": [
            "Stå stabilt på ett ben och fäll fram från höften.",
            "För motsatt hand mot tårna medan bäckenet hålls så rakt som möjligt.",
            "Gör 5 kontrollerade repetitioner och byt sedan ben."
          ],
          "animationProfileId": "warmup_single_leg_toe_touch_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_single_leg_toe_touch_ik_v1",
          "nex2rigMode": "warmup_single_leg_toe_touch_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_single_leg_toe_touch_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "Supplied MOV source-conformity canonical IK -> unchanged generic Nex solver -> resolved bake; 5 left then 5 right",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/single-leg-toe-touch-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.960879,
            "avgMeanVisibility": 0.961921,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 left/right single-leg hinge/reach frames only; generic stand duplicates removed",
            "realNexCaseCount": 2,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/single-leg-toe-touch-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-single-leg-toe-touch.html?exercise=single-leg-toe-touch&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "worldMotion": {
            "mode": "locked_center",
            "keepNexCentered": true,
            "liveSolverCalls": 0
          }
        },
        {
          "order": 13,
          "segmentKey": "lateral-shuffle",
          "title": "Lateral shuffle",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "left_and_right",
          "spaceMode": "travel_lateral_out_and_back",
          "motionType": "lateral_shuffle_travel_loop",
          "contactProfile": "alternating_feet_wide_base",
          "coaching": [
            "Håll en låg atletisk position med fötterna brett isär.",
            "Ta snabba korta sidsteg utan att korsa fötterna.",
            "Tryck från ytterbenet och håll höften aktiv genom hela sträckan."
          ],
          "animationProfileId": "warmup_lateral_shuffle_ik_v1",
          "animationStatus": "v630_r6_wip_9m_out_back_source_timed",
          "profileId": "warmup_lateral_shuffle_ik_v1",
          "nex2rigMode": "warmup_lateral_shuffle_ik_v1",
          "reviewBatch": "v421l_recovered_lateral_shuffle_full_motion",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_lateral_shuffle_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "Supplied MOV -> canonical lead/trail shuffle IK -> unchanged generic Nex solver -> resolved bake",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/lateral-shuffle-v630-r6-phase-normalized.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 4,
            "requiredKeyposes": 4,
            "minMeanVisibility": 0.97934,
            "avgMeanVisibility": 0.984669,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "Special Olympics side-shuffles thumbnail + V78 unique athletic/left/right shuffle phases; duplicated travel removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/lateral-shuffle-v630-r6-phase-normalized.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-lateral-shuffle-r6.html?exercise=lateral-shuffle&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "worldMotion": {
            "mode": "standard_runway_9m_out_and_back_phase_driven",
            "keepNexCentered": true,
            "backgroundMode": "scroll_floor_grid",
            "liveSolverCalls": 0,
            "presentationFacingYawDeg": 90,
            "cameraUsesPresentationHeading": false
          }
        },
        {
          "order": 14,
          "segmentKey": "karaoke",
          "title": "Karaoke",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "left_and_right",
          "spaceMode": "travel_lateral_out_and_back",
          "motionType": "karaoke_carioca_travel_cycle",
          "contactProfile": "alternating_feet_cross_step",
          "coaching": [
            "Håll höfter och axlar så raka mot färdriktningen som möjligt.",
            "Korsa bakre foten växelvis framför och bakom ledande ben.",
            "Behåll rytmen och låt tårna fortsätta peka framåt."
          ],
          "animationProfileId": "warmup_karaoke_ik_v1",
          "animationStatus": "v630_r3_rebuilt_approved_out_turn_return",
          "profileId": "warmup_karaoke_ik_v1",
          "nex2rigMode": "warmup_karaoke_ik_v1",
          "reviewBatch": "v423i_karaoke_checkpoint",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_karaoke_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "Supplied Karaoke MOV -> canonical open/cross-front/cross-behind IK -> unchanged generic Nex solver -> resolved bake",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/karaoke-v630-r3-source-cycle-out-turn-return.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 3,
            "requiredKeyposes": 3,
            "minMeanVisibility": 0.984954,
            "avgMeanVisibility": 0.989227,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 unique ready/cross-front/cross-behind phases; duplicated travel removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/karaoke-v630-r3-source-cycle-out-turn-return.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-karaoke-r3.html?exercise=karaoke&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "worldMotion": {
            "mode": "standard_runway_9m_out_and_back_source_turn_phase_driven",
            "keepNexCentered": true,
            "liveSolverCalls": 0,
            "backgroundMode": "scroll_floor_grid",
            "presentationFacingYawDeg": 90,
            "cameraUsesPresentationHeading": false
          }
        },
        {
          "order": 15,
          "segmentKey": "heel-to-toe-with-momentum",
          "title": "Heel to toe - with momentum",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "dynamic_heel_to_toe_walk",
          "contactProfile": "alternating_feet",
          "coaching": [
            "Sätt i hälen först och rulla genom hela foten upp på framfoten.",
            "Använd rörelsens momentum men behåll tydlig häl-till-tå-rullning.",
            "Låt knät fjädra naturligt och håll stegen sammanhängande."
          ],
          "animationProfileId": "warmup_heel_to_toe_momentum_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_heel_to_toe_momentum_ik_v1",
          "nex2rigMode": "warmup_heel_to_toe_momentum_ik_v1",
          "reviewBatch": "v424_dynamic_warmup_17_of_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_heel_to_toe_momentum_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/heel-to-toe-with-momentum-v630-natural-dynamics-r1.resolved.json",
            "source": "user-supplied 2026-09-08 momentum MOV -> existing approved V423A R4 geometry -> timing-only resolved playback"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 1,
            "requiredKeyposes": 1,
            "minMeanVisibility": 0.861645,
            "avgMeanVisibility": 0.861645,
            "qualityClass": "STRICT_PASS_SEQUENCE_REVIEW_REQUIRED",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "Special Olympics heel-and-toe-walk thumbnail only; previous duplicated OLYRUN stills are not reused",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "sourceConformity": {
            "status": "V424_WITH_MOMENTUM_SOURCE_TIMING",
            "sourceClip": "assets/media/exercises/heel-to-toe-with-momentum/source/NEXT11_dynamic_warmup_ijj7TD0DA6Q_heel-to-toe-with-momentum.MOV",
            "sourcePlayback": "assets/media/exercises/heel-to-toe-with-momentum/heel-to-toe-with-momentum.mp4",
            "sourceSha256": "8c4697d8b6aa28f480f27ec74c4be7e1ab3f75447569ae1e5fa2d0ad44643c50",
            "durationSec": 2.968359,
            "geometryAuthority": "V423A R4 approved rolling-gait geometry",
            "changeScope": "timing + media assignment only"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/heel-to-toe-with-momentum-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-heel-to-toe-with-momentum.html?exercise=heel-to-toe-with-momentum&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "status": "v424_with_momentum_candidate"
        },
        {
          "order": 16,
          "segmentKey": "heel-to-toe-no-momentum",
          "title": "Heel to toe - no momentum",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "controlled_heel_to_toe_walk",
          "contactProfile": "alternating_feet",
          "coaching": [
            "Sätt i hälen först och rulla långsamt genom hela foten till tån.",
            "Ingen fart eller studs: kontrollera hela rörelsebanan.",
            "Hitta maximal aktiv fotledsrörelse utan att tappa balansen."
          ],
          "animationProfileId": "warmup_heel_to_toe_control_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_heel_to_toe_control_ik_v1",
          "nex2rigMode": "warmup_heel_to_toe_control_ik_v1",
          "reviewBatch": "v424_dynamic_warmup_17_of_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_heel_to_toe_control_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/heel-to-toe-no-momentum-v630-natural-dynamics-r1.resolved.json",
            "source": "previous packaged heel-to-toe film reassigned to no-momentum; same V423A R4 geometry at controlled 4.0 s cadence"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 3,
            "requiredKeyposes": 3,
            "minMeanVisibility": 0.827058,
            "avgMeanVisibility": 0.848152,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 OLYRUN heel-toe control frames assigned only to no-momentum/control; all duplicates with momentum removed from momentum set",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/heel-to-toe-no-momentum-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-heel-to-toe-no-momentum.html?exercise=heel-to-toe-no-momentum&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0",
          "status": "v424_no_momentum_candidate",
          "sourceConformity": {
            "status": "V424_NO_MOMENTUM_CONTROLLED_TIMING",
            "sourceClip": "assets/media/exercises/heel-to-toe-no-momentum/source/NEXT11_dynamic_warmup_ijj7TD0DA6Q_heel-to-toe-no-momentum.MOV",
            "sourcePlayback": "assets/media/exercises/heel-to-toe-no-momentum/heel-to-toe-no-momentum.mp4",
            "sourceSha256": "dc9fe23757c7d221e4f06c46a27a208e4c4f7b83a2a43f65cc2df99825d60070",
            "durationSec": 4.0,
            "geometryAuthority": "V423A R4 approved rolling-gait geometry",
            "changeScope": "semantic reassignment + controlled timing + media move only"
          }
        },
        {
          "order": 17,
          "segmentKey": "heel-walk",
          "title": "Heel walk",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "heel_walk",
          "contactProfile": "heels_floor_toes_up",
          "coaching": [
            "Lyft tårna så högt du kan och gå på hälarna.",
            "Håll knäna mjuka och stegen korta och kontrollerade.",
            "Behåll kroppen upprätt utan att luta bakåt."
          ],
          "animationProfileId": "warmup_heel_walk_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_heel_walk_ik_v1",
          "nex2rigMode": "warmup_heel_walk_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_heel_walk_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "supplied local Heel Walk MOV first; YouTube provenance fallback",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/heel-walk-v630-natural-dynamics-r2-torso-counterbalance.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.970793,
            "avgMeanVisibility": 0.97194,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 unique left/right heel-walk frames only; duplicated ready and near-duplicate travel removed under V83 strict policy.",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/heel-walk-v630-natural-dynamics-r2-torso-counterbalance.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-heel-walk.html?exercise=heel-walk&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0"
        },
        {
          "order": 18,
          "segmentKey": "toe-walk",
          "title": "Toe walk",
          "prescription": "9 m",
          "distance": {
            "value": 9,
            "unit": "meters"
          },
          "sideMode": "alternating",
          "spaceMode": "travel",
          "motionType": "toe_walk",
          "contactProfile": "toes_forefoot_floor",
          "coaching": [
            "Kom högt upp på framfoten och håll hälarna från marken.",
            "Ta korta kontrollerade steg med mjuka knän.",
            "Håll kroppen lång och undvik att falla framåt."
          ],
          "animationProfileId": "warmup_toe_walk_ik_v1",
          "animationStatus": "v425_contact_corrected_visual_review",
          "profileId": "warmup_toe_walk_ik_v1",
          "nex2rigMode": "warmup_toe_walk_ik_v1",
          "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
          "nexRuntime": {
            "engine": "nexprod01_resolved_playback_v425",
            "modeParam": "resolvedPlayback",
            "profileParam": "warmup_toe_walk_ik_v1",
            "activeInNormalPass": true,
            "renderPolicy": "v425_baked_contact_corrections_zero_live_solver",
            "reviewBatch": "v425_contact_corrections",
            "source": "V83 strict no-reuse MediaPipe source lock + V85 headless RealNex audit",
            "resolvedPlaybackAsset": "assets/nexprod/resolved/toe-walk-v630-natural-dynamics-r1.resolved.json"
          },
          "sourceLock": {
            "status": "for_nex_approval",
            "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
            "strictNoReuse": true,
            "mediapipeHasPose": 2,
            "requiredKeyposes": 2,
            "minMeanVisibility": 0.858068,
            "avgMeanVisibility": 0.882604,
            "qualityClass": "STRICT_PASS",
            "sourceStatus": "v83_strict_no_reuse",
            "sourceNote": "V78 unique left/right toe-walk frames only; duplicated ready/travel removed",
            "realNexCaseCount": 1,
            "realNexPass": true,
            "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
          },
          "resolvedPlaybackAsset": "assets/nexprod/resolved/toe-walk-v630-natural-dynamics-r1.resolved.json",
          "resolvedPlayerUrl": "assets/nexprod/nexprod01-resolved-player-v630-toe-walk.html?exercise=toe-walk&play=1&phase=0&safeBoot=0&lowPower=1&maxFPS=24&animFPS=24&idleSleepAfterReady=0"
        }
      ],
      "implementationStatus": "V85_CONSOLIDATED_TESTPLAYER_FIRST_MESHNEX_GATE",
      "reviewBatch": "dynamic_warmup_v85_v83_strict_no_reuse_meshnex_gate_17",
      "sourceProof": "V83 strict no-reuse MediaPipe source lock + V85 headless RealNex/MeshNex QA; no preview/live dependency.",
      "mediapipeCoverage": {
        "sourceRows": 40,
        "hasPose": 40,
        "failedPoseRows": 0,
        "segments": 17,
        "minMeanVisibility": 0.652987,
        "avgMeanVisibility": 0.913561,
        "exactDuplicateSha256Count": 0,
        "strictNearDuplicateCount": 0,
        "sourceLock": "V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_ACTIVE_SOURCE_LOCK",
        "report": "tools/keypose_image_sampler/out/v83_dynamic_warmup_strict_no_reuse/V83_DYNAMIC_WARMUP_STRICT_NO_REUSE_REPORT.json"
      },
      "realNexAudit": {
        "caseCount": 19,
        "pass": 19,
        "fail": 0,
        "ikSourceLockPass": 19,
        "ikNexTruthPass": 19,
        "contactPass": 19,
        "noFlyPass": 19,
        "externalWriterCount": 0,
        "finalRuntimeWriterCount": 1,
        "method": "headless Node/Three/FBXLoader RealNex audit; Chromium not required",
        "report": "qa/mesh_nex_v85/V85_DYNAMIC_WARMUP_REALNEX_AUDIT.json"
      },
      "displayDurationRangeMin": [
        10,
        15
      ]
    }
  }
}
