The breaking change announced above is now applied (deployed 2026-09-29): timestamp holds the report Generated Time, the GNSS fix time is in position.timestamp, and message.seqnum and timestamp.key are set on all messages, including records without their own time in multi-record reports.
If your application builds tracks by timestamp and you now see jumps (stale or buffered GNSS fixes placed at report time), assign a msg-expression plugin to those devices: validate message exists('position.timestamp'), output parameter timestamp, expression $position.timestamp. This restores ordering by GNSS time. Note: with this plugin, messages that share the same position.timestamp (e.g. a stationary device repeating an old fix) may be merged in device storage.