One set becomes a usable decision.
Reps in reserve decides almost every load you pick. It is also the number people are worst at estimating, and the error is not random: under fatigue most lifters believe they are closer to failure than they are. So it is worth measuring rather than asking about.
Same lifter, same load. Rep 1 against rep 5.
The signal has to earn the prescription.
The camera watches the bar path
A pose model runs on the phone at frame rate and tracks the joints that matter for the lift you selected. Nothing is uploaded: frames stay on the device and only the numbers derived from them are kept.
Each rep is timed, not just counted
A rep is a shape, not a tap. The tracker finds the turnaround and the lockout, which gives the concentric duration, and it is the change in that duration across a set that carries the information.
The slowdown is the reading
As a set approaches failure, the fastest rep you can produce gets slower in a way that is consistent within a person. Comparing the last rep against the earlier ones in the same set estimates how many were left.
The next set is written from it
A prescription is a target effort, not only a load. When the measured effort came in under the target there was room and the next set gets more; when it came in over, the load holds or drops.
It will not tell you a set was good.
It reports what it measured and what it could not. If the camera lost the bar, the angle was wrong, or the set was too short to read, it says so and declines to guess. Inferred values are inked differently from measured values, everywhere they appear.
Shallow and fast reps still count.
A rep that misses the depth gate is flagged, not rejected: the effort was real. A rep that returns to the top in under 300 ms is flagged too, counted once, and left out of the velocity estimate.