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,39 @@
# Dumbbell Row
The one-arm row — knee and hand braced on the bench, pull the dumbbell
from a dead hang to the ribs.
- **Category:** Main circuit
- **Type:** Free-weight horizontal pull (dumbbell)
- **Targets:** Lats, mid-back, biceps
- **Prescription:** 3 × 812 per side
## Setup
Put the same-side knee and hand on a bench, the other foot planted on
the floor. Back flat and parallel to the ground, dumbbell hanging
straight down from the shoulder.
## Execution
1. Pull the dumbbell up and back toward the hip until the elbow passes
the ribs.
2. Squeeze the shoulder blade at the top.
3. Lower to a full hang and stretch. Finish the set, then switch sides.
## Cues
- The elbow leads; the hand just holds on.
- Shoulders stay square to the floor — no twisting to hoist the weight.
- Long neck, eyes down; the back stays flat.
## Common Mistakes
- Rotating the torso open at the top of each rep.
- Pulling with the biceps instead of driving the elbow back.
- Cutting the stretch short at the bottom.
## Progression
Heavier dumbbells while the torso stays quiet; pause each rep at the top
for a stricter mid-back stimulus.