-
docs: file 2026-07-18 design Q&A into docs/design/
-
generate: p key pushes workout PDF to a Supernote
-
diagnostic: restrict to reps exercises for now
-
pdf: extend e2e test to cover a mixed-kind session
-
history: dispatch on effort_kind; per-kind sparkline and recent-sessions table
-
generate: dispatch on effort_kind via compute_prescription_any
-
log: dispatch on effort_kind; per-kind input UI for reps/timed/distance
-
effort: consolidate reps into effort/reps.rs and migrate callsites
-
effort: DistanceKind (track-only)
-
effort: TimedKind implementation
-
effort: Kind trait + RepsKind impl + dispatch enums
-
effort: migration 003 splits sets by kind; add EffortKind discriminant
-
templates: restructure the edit form around type-scoped middle sections
-
templates: progressive disclosure in the edit form
-
diagnostic: DiagnosticSet and DiagnosticStep carry newtypes
-
templates: Exercise.load_unit is a LoadUnit enum, not a raw string
-
progression: Prescription carries Load and Reps newtypes
-
sets: append_set and append_diagnostic_set take Load, Reps, Rpe
-
sets: SessionSet fields are Load, Reps, Rpe
-
estimator, progression, diagnostic, generation: source constants from heuristics
-
values, heuristics: name the primitives and gather the magic numbers
-
templates: + opens tag prompt from any field, and seed a starter library
-
generate: seed prescription from most recent diagnostic when no working history
-
diagnostic screen: fifth tab drives the protocol per exercise
-
diagnostic: schema flag, protocol driver, and seed helpers
-
e1rm: rpe-adjusted estimator on top of existing set history
-
pdf: tone load column down to 18pt
-
pdf: redesign as a technical session sheet
-
pdf: end-to-end test + relative data path
-
pdf export via typst subprocess