# V425 Dynamic Warmup App V6.1 — timing maintenance for exercises 6 and 7

## Scope
This is a profile-only maintenance revision on top of the Frozen Player V6 baseline.

Frozen presentation core, camera, runway, UI and player behavior are unchanged.
V425 resolved motion assets and Nex model are unchanged.

## Exercise 6 — Straight Leg March
User timing rule: root remains stationary while the straight leg is being raised. Forward root travel occurs only while that leg lowers toward the next foot contact.

Resolved/source loop: 7.2 s. Distance calibration remains 0.50 m per step (2.0 m per four-step loop).

Travel windows:
- 1.05–1.67 s: left leg lowering to contact
- 3.22–3.83 s: right leg lowering to contact
- 4.84–5.49 s: left leg lowering to contact
- 6.44–7.16 s: right leg lowering to contact

All raise phases and bilateral/contact gates are root-stationary.

## Exercise 7 — ATG Split Squat Lunges
User timing rule: advance as the lead foot is placed; freeze during descent/bottom; resume forward travel during ascent so the body finishes over the planted front foot and flows directly into the next step.

Resolved/source loop: 7.0 s. Distance calibration remains 0.60 m per lunge (1.20 m per two-lunge loop).

First right-side sequence:
- 0.18–0.62 s: lead/front foot step and plant — advance
- 0.62–2.48 s: descend + bottom — stationary
- 2.48–3.30 s: rise and translate over front foot — advance

Then the next lunge begins immediately:
- 3.30–4.12 s: next lead/front foot step and plant — advance
- 4.12–5.98 s: descend + bottom — stationary
- 5.98–7.00 s: rise over front foot and flow into the next step — advance

There is intentionally no bilateral standing pause between lunges.

## Frozen-player guard
`tools/nex_dynamic_warmup/check_frozen_player.py`: PASS
- presentation core: 14/14 locked files unchanged
- exercise profiles: 7 locked profiles, with only #6 and #7 intentionally re-baselined in the manifest
- V425 motion/model: 65/65 byte-identical
