Racing a ghost means running against a past outing: one of yours, one of your kennel's routes, or a MushMate reference. At the finish, a screen gave the total gap and the gap over five sections. It closed, and when you reopened the outing the recap showed only one time, compared with a different outing from the one you had raced. That is fixed.
What changes
In the app, the recap of a GPS outing now carries a Ghost block:
- the ghost you raced, marked "raced live", with the total gap and the five sections. It is the finish screen's calculation. The figures can differ by a few seconds: the finish reads every point on the phone, the recap reads the saved track, which keeps fewer;
- "Compare with…", which lists the other timed outings on the same trace, most recent first. Tapping one shows the gap and the sections against it.
An outing run without a ghost opens the block on the previous outing on the same trace. If there is none, the block only offers the list.
What counts as "the same trace"
An outing of the same distance, within 5%, that started less than 2 km from the same point. Distance alone is not enough: two 15 km loops run in two different places would come up together.
What others see
The choice of ghost is saved with the outing and syncs: kennel members who open that outing on their phone see the same ghost, marked "raced live". The comparison picked with "Compare with…" is not saved: it only applies to the open screen. An outing's public link shows neither the ghost nor the list of outings on the trace.
On the website, an outing's page shows the same block: the ghost you raced, the gap at the finish and its five sections, "Compare with…" and the link to the trail.
What it does not do
- Find the ghost of an outing run before this version. That choice was not saved anywhere: those outings open on the previous outing on the same trace.
- Compare races. A race records its track without point-by-point times, so there is nothing to compare section by section.
- Recognise direction or path. A loop run the other way round, or another trail of the same length from the same car park, is offered as the same trace. The gap stays right over the distance, but not from one section to the next.
- Offer the whole season. The list stops at the 20 most recent outings on the trace.
Three choices made against the obvious
We save the ghost, not the result. Saving the gap shown at the finish would have been simpler. But it would then have had to be calculated another way for every other outing in the list. So the recap redoes the finish calculation from the two traces: the gap against the ghost you raced and the gap against another outing read the same way.
Start and distance, not the shape of the route. Comparing the shape of two traces would tell better whether it is the same path, but it would mean reading every trace in the kennel each time the recap opens. The start point and the distance are read without reading anything else, and work offline.
On opening, the ghost you raced, not your best time. The recap first answers the outing's own question: how did the duel you started go? Your best outing on the trace is in the list, one tap away.