Ship the 47-exercise library in-app: export, fixtures, tests, docs

render.py --export bundles the 25 new motion rigs and info pages;
figure-fixtures.json regenerated for all 47 (the Swift solver reproduces
every new motion, including negative-y pins and the new prop uses). The
fixture count assertion moves to 47, and the no-bundled-motion test now
uses Treadmill - a permanent COVERAGE.md exclusion - since Bench Press
exists. 48 tests green; watch target builds. Coverage handoff complete -
TODO-coverage.md retired.

Claude-Session: https://claude.ai/code/session_01HJDQQDA9QdP8zByg43H5v3
This commit is contained in:
2026-07-07 12:18:07 -04:00
parent b545ad05c9
commit 7c241ec44c
56 changed files with 1858 additions and 141 deletions
@@ -0,0 +1,37 @@
# Dumbbell Shoulder Press
The overhead press with dumbbells — seated against an upright bench,
press from the shoulders to lockout overhead.
- **Category:** Main circuit
- **Type:** Free-weight vertical press (dumbbells)
- **Targets:** Shoulders, triceps, upper chest
- **Prescription:** 3 × 812
## Setup
Set the bench back upright. Sit with the dumbbells at shoulder height,
palms forward, forearms vertical, feet planted.
## Execution
1. Press both dumbbells straight up until the arms lock out overhead.
2. Keep the weights over the shoulders — not drifting forward.
3. Lower under control back to shoulder height.
## Cues
- Forearms vertical from every angle, wrists stacked over elbows.
- Ribs down; the back stays on the pad, not arching off it.
- The head moves slightly through at the top — bar path stays vertical.
## Common Mistakes
- Overarching the lower back to press bigger weights.
- Stopping short of lockout.
- Letting the dumbbells drift out sideways on the way up.
## Progression
Add weight while the back stays quiet on the pad; standing presses
recruit more trunk once the seated pattern is strong.