Define the library coverage model (pattern matrix + gym-floor census)

Claude-Session: https://claude.ai/code/session_01HJDQQDA9QdP8zByg43H5v3
This commit is contained in:
2026-07-07 11:35:48 -04:00
parent 68f12f539e
commit eadaa075c4
2 changed files with 90 additions and 0 deletions
+86
View File
@@ -0,0 +1,86 @@
# Library Coverage Model
The picker lists exactly the bundled library names and has no free-text
fallback — the library is the app's **closed catalog**, so a missing movement
pattern or gym station is a hard wall for logging, not a cosmetic gap. This
file is the standing test for the catalog: a typical gym-goer — machine
circuit, free-weight lifter, or home/bodyweight — must be able to build their
whole program from the picker. Judge every future addition (or removal)
against both tables; the target list is their **union**.
1. **Function** — the movement-pattern × modality matrix below. A cell needs
an exercise only if real programs train that pattern that way.
2. **Equipment** — the gym-floor census below. Users log by station name, not
by pattern: Chest Press covering "horizontal push" does not cover the
flat bench. Inclusion test: *found in most commercial gyms* (Planet
Fitness / Gold's tier), not "exists somewhere."
## Pattern × modality matrix
"—" means real programs don't commonly train that pattern in that modality;
it is a considered exclusion, not a gap.
| Pattern | Machine / cable | Free weight | Bodyweight / floor |
|---|---|---|---|
| Squat | Leg Press | Barbell Squat, Goblet Squat | Bodyweight Squat |
| Hinge | Back Extension | Deadlift, Romanian Deadlift, Hip Thrust | Glute Bridge |
| Lunge | — | Lunge (dumbbells optional) | Lunge |
| Horizontal push | Chest Press, Pec Deck | Bench Press, Incline Bench Press, Dumbbell Bench Press, Dumbbell Fly | Push-Up |
| Vertical push | Shoulder Press | Dumbbell Shoulder Press | — |
| Horizontal pull | Seated Row, Face Pull | Dumbbell Row | — |
| Vertical pull | Lat Pull Down | — | Pull-Up |
| Elbow flexion | Arm Curl | Dumbbell Curl | — |
| Elbow extension | Tricep Press, Triceps Pushdown | — | Dip |
| Shoulder raise (lateral/rear) | Rear Delt Fly | Lateral Raise | — |
| Hip abduction / adduction | Abductor, Adductor | — | — |
| Calf | Calfs | — | — |
| Core anti-extension | — | — | Plank, Dead Bug, Hollow Body Hold |
| Core rotation / anti-rotation | Rotary | — | Bird Dog |
| Core lateral | — | — | Side Plank |
| Core flexion | Abdominal | — | Crunch, Reverse Crunch, Leg Raises |
| Mobility / warm-up | — | — | Cat-Cow *(morning wake-up set: next phase)* |
## Gym-floor census
Every station found in most commercial gyms, and the library entry (or
entries) a user logging by that station's name will find.
| Station | Library entries |
|---|---|
| Selectorized circuit (14 machines) | Abdominal, Abductor, Adductor, Arm Curl, Calfs, Chest Press, Lat Pull Down, Leg Curl, Leg Extension, Leg Press, Rotary, Seated Row, Shoulder Press, Tricep Press |
| Flat bench + barbell | Bench Press |
| Incline bench | Incline Bench Press |
| Squat / power rack | Barbell Squat, Deadlift, Romanian Deadlift, Hip Thrust |
| Pec deck / rear-delt fly | Pec Deck, Rear Delt Fly |
| Cable station | Triceps Pushdown, Face Pull |
| Back extension (roman chair) | Back Extension |
| Pull-up / dip station (incl. assisted machine) | Pull-Up, Dip |
| Dumbbell rack | Dumbbell Bench Press, Dumbbell Fly, Dumbbell Row, Dumbbell Shoulder Press, Dumbbell Curl, Lateral Raise, Goblet Squat, Lunge |
| Floor / mat | Bodyweight Squat, Push-Up, Crunch, Glute Bridge, Plank, Side Plank, Bird Dog, Dead Bug, Hollow Body Hold, Leg Raises, Reverse Crunch, Cat-Cow |
## Considered exclusions (the "most gyms" line)
- **Smith machine** — borderline; its uses are covered by the rack lifts and
Leg Press. Revisit if users ask.
- **Hack squat** — not universal at the Planet Fitness tier; machine squat is
covered by Leg Press.
- **Cable curl / cable crossover** — the cable station gets one entry per
pattern not already covered elsewhere; these duplicate Arm Curl / Dumbbell
Curl and Pec Deck / Dumbbell Fly.
- **Assisted dip / assisted pull-up** — folded into Dip and Pull-Up as the
regression in their Progression sections, not separate picker entries.
- **Dumbbell RDL, dumbbell lunge** — folded into Romanian Deadlift and Lunge
("barbell or dumbbells" in their pages), not separate entries.
- **Kettlebells, T-bar row, pullover machine, cardio equipment** — out; not
strength stations found in most gyms (cardio is out of the app's scope).
- **Morning wake-up mobility set** (neck rolls, arm circles, …) — deliberately
deferred to the next library phase; Cat-Cow holds the mobility row today.
## Standing exercises and `camera.zoom`
The rig is ~211 canvas units tall standing but the canvas has 152 units above
the ground line — the original 22 motions are all seated or on the floor.
Standing lifts (squats, hinges, curls, raises) author full-size anatomy and
fit the frame with the presentation-only `"camera": {"zoom": …}` transform
(see SYSTEM.md); typical values: ~0.7 standing tall, ~0.750.85 hanging or
seated-with-arms-overhead, 1 (omit) for lying, kneeling, seated, bent-over.
+4
View File
@@ -18,6 +18,10 @@ Each entry contains:
`frames/frame-N.svg` (one per key frame), `preview.gif` (the tweened loop),
and `visual.svg` (the primary frame, for static contexts).
Which exercises the library must contain — the movement-pattern × modality
matrix, the gym-floor census, and the considered exclusions — is defined in
`COVERAGE.md`; judge additions and removals against it.
The rig and the visual language — right limbs dark / left limbs light with an
embedded R/L legend, nose tick for facing, teal on the working parts, timing
that encodes tempo, plus figure profiles, flipping, and theming — are defined