Full GPS tracks
icu_get_activity_streams returned only latitudes for the latlng stream, so a route could not be put on a map. It now returns [lat, lng] pairs, with null for samples without a GPS fix. Thanks to @belidzs for the report.
Lighter streams with max_points
Full-resolution streams run to thousands of samples per activity, a heavy payload for an LLM. The new optional max_points thins every returned stream by the same step, so samples still line up across streams, and reports the step in the response. On a real activity with 1,819 GPS samples, max_points=180 cut the response from 53.6k to 4.6k characters. That is still enough to trace the route or see the shape of the effort.
Full Changelog: v5.3.0...v5.4.0