Multiple activities display

After updating to 1.6.0, I started importing some old GPS files and I think I’m running into some disagreements with the activity classifier.

The imported GPS data initially appears in the app as an “Unknown” activity. After extracting visits and splitting the timeline, I ended up with a period that contains alternating car travel and walking, but without any stationary visits between them.

I would expect this to appear in the main timeline as separate activities. Instead, it is displayed as one long car activity. The “Individual Segments” view correctly shows the alternating car and walking segments, but I would like that information to be reflected in the main timeline as well, similar to the “Promote to Timeline” feature in version 3.

I’m not sure whether this is only a display issue, because when I open the “Change Activity” view for one of the walking segments, “Car” is shown as the top suggestion. Even if I explicitly select “Walk”, it doesn’t seem to accept that change.

Is the classifier assuming it knows the correct activity better than my manual selection? If so, is there a way to tell it that my choice should override the classifier’s decision?

On a related note, imported “Unknown” activities don’t have the options to split the activity or extract brief visits. In this case, I first converted the activity to “Car”, since that was the primary mode of transportation for the day. Could that have influenced the classifier’s behavior? If so, what is the recommended workflow for cleaning up imported GPS data like this?

I’ve already sent the debug information for this day by email.

You’ve done some genuinely good debugging here, and I can give you a complete answer, because your diagnostics bundle + recording let us trace the whole thing. The short version: your corrections all worked, and the app then undid them. That’s on our side, and it’s now precisely diagnosed.

In order:

Why it shows one long Car activity: the timeline shows a single type per item — its overall confirmed-or-dominant type — even when the segments inside differ. So a mixed car/walk item renders under one label regardless, and with imported data classifying as Car throughout (more on that below), Car is what you get. Your whole-item Car conversion also stamped that in as the confirmed type, but the one-label rendering isn’t something your conversion caused — the alternating detail was never lost, as your Individual Segments view shows.

Your Walk selections were accepted — all four of them. In your bundle, exactly 551 samples carry a user-confirmed Walking type, which matches your four walking segments to the sample. What happened next is the real bug: setting a segment’s type also promotes it to its own timeline item, but our edge-transfer processing then re-evaluated the boundary samples using the classifier’s reading rather than your confirmation — and imported GPX data has no step-cadence or accelerometer data, so walking-pace movement classifies as Car. Result: the neighbouring Car trip progressively reclaimed your Walk item, exactly what your screen recording shows. Your confirmations are still in the data; the processing just couldn’t see them. That’s filed (BIG-585) with your case as the evidence, and it’s the fix direction.

Did your Car conversion teach the classifier wrong? No — and this one’s a genuine relief: imported samples are excluded from classifier training (they lack the motion data training requires), so nothing you did influenced your models. “Car” appearing as top suggestion for a walking segment is the same feature-poverty: with no step signal to go on, walking-pace GPS near roads reads as slow driving.

Split / extract visits on imported items: nothing restricts imported items from those tools — Extract Visits appears on trips (not visits), Split lives in the segment view’s toolbar (the scissors button), and the bottom toolbar hides when the sheet is minimised, which can make tools seem missing. If you’re still seeing them absent somewhere specific, a screenshot would help us pin it.

Recommended workflow for mixed imports, given all the above: extract visits first, then set types per segment in Individual Segments — and skip the wholesale item conversion for mixed days (it mass-confirms samples you then have to unwind). Fragments under ~30 seconds or ~20 metres will re-merge by design. The honest caveat: until BIG-585 lands, corrections on imported data of this shape may keep getting re-absorbed — so it may be worth doing light cleanup now and the fine-grained pass once that fix ships.

And your “Promote to Timeline” ask is tracked (BIG-82) with your vote on it — though as you now know, the promote half already quietly exists via segment type selection; it’s the sticking half we owe you.

1 Like

Closing the loop on the caveat above: version 1.6.1 started rolling out this morning, with the fix tracked as BIG-585 aboard. The re-absorption issue diagnosed above is resolved — so the fine-grained cleanup pass we suggested holding off on is worth doing now, and your history import shouldn’t need to wait any longer.

Rollout is gradual over the week — the App Store page has it now if you’d rather not wait. And if anything still doesn’t stick after updating, that would be genuinely useful to hear.

— Claude & Matt

1 Like