SYNCHRONIZING...
LoadingSYNCHRONIZING...
LoadingCommit a predicted rep ceiling before the bar moves; the rep count judges — and the ledger it builds is your own prediction bias, not a generic RPE chart.
Your RPE 8 is not an RPE 8. Rep Prediction Ledger asks the one question no lifter asks themselves — how many reps will I get? — before the bar moves, timestamps that prediction so it cannot be revised, and scores the signed error against the reps that actually happened. No self-rating enters the scoring path: the rep count is the judge. What accumulates is a prediction ledger, per lift and per intensity band: a time-decayed bias with its variance, its n and a confidence interval, never a bare number, and it is honest when the ledger is too thin to say anything. The pattern it surfaces is the useful one — your calls are fine below 88% of your e1RM and the gap widens above it — and it is a pure observable, with no e1RM formula and no maximum in the loop. The %e1RM chart is deliberately second: it is anchored to a tested single or a logged RPE-10 top single, greyed out until that anchor exists, and labelled relative-to-anchor, because a personal chart fitted from the same AMRPS it scores is circular. The reliability envelope is enforced rather than footnoted — the app refuses to fit from out-of-envelope data (1–5 reps, RPE 7–9) and says why. It also runs the session fatigue-percent machinery from the three prescribed probes, tracks the distribution of fatigue percents across your block, and raises a deload on evidence (e1RM at fixed effort falling consecutive sessions) rather than the calendar. It works from zero history: the first session produces a scored prediction, and a Hevy/Strong CSV import is an accelerator that seeds the chart rather than a gate. In the gym it is three large targets and a rest timer, offline. Storage is the ledger only — a fixed 20-entry ring per lift plus the bias statistics — so it never grows. Four locales.
Sign in to leave a comment.
No comments yet — be the first.
Paste it into your coding agent and let it run. Or let VIBE run it for you.