Add running personal records and historical PR badges
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# Running personal records
|
||||
|
||||
The dashboard and owner's run page now calculate estimated best efforts for
|
||||
1 km, 2 km, 5 km, 10 km, half marathon (21,097.5 m), and marathon (42,195 m).
|
||||
These are fastest stretches anywhere within a run, rather than lap times or
|
||||
times projected from average pace. All existing running activities participate.
|
||||
|
||||
Following [Strava's elapsed-time convention](https://support.strava.com/en-us/articles/15401661-how-do-best-efforts-work-for-running-on-strava),
|
||||
stops inside an effort count. The calculation uses full-resolution FIT cumulative
|
||||
distance and timestamps, with linear interpolation at distance boundaries. Missing
|
||||
distance/time, backwards distance, and non-increasing timestamps split the data.
|
||||
Timestamp gaps count as elapsed time; there is no subtraction for auto-pause.
|
||||
No distance or time is inferred from an activity summary when samples are absent.
|
||||
|
||||
The dashboard lists current records. Runs earn historical PR badges if they
|
||||
established or strictly improved a record on their activity date; equal times
|
||||
do not earn another badge. Import order does not affect the result. Records and
|
||||
badges are recalculated from history, so older imports and removals are reflected.
|
||||
Comparisons currently appear only in the owner's dashboard and activity page.
|
||||
|
||||
These are estimates from watch data, not verified race records or an exact clone
|
||||
of Strava's proprietary calculation. GPS/distance spikes or sparse recording can
|
||||
affect results. There is currently no manual effort exclusion or correction UI.
|
||||
|
||||
The initial implementation computes on page requests without a database migration.
|
||||
For large histories, the next step is to persist per-run efforts at import time
|
||||
with an algorithm version, backfill existing runs, and query those small results.
|
||||
Further additions could include second/third-best medals, annual records, manual
|
||||
exclusion of bad recordings, and a selected-effort highlight on the route map.
|
||||
Reference in New Issue
Block a user