Tracker Version History
Current deployed version: v1.4.19
* Added RID2Caltopo app-version visibility and upgrade advisory support. The /r2c status page now shows each instance’s reported app version and highlights stale or unknown versions, while deploys now require the recommended R2C versionCode used in websocket upgrade advisories. * Added a local pre-release verification gate for r2c-tracker that runs the Python test suite, starts an isolated local tracker, verifies key HTTP pages, and performs an authenticated /ws/r2c protocol smoke test before deployment. * Improved /ws/r2c coordination coverage for delayed and out-of-order client messages. * Added validation that slower clients can still win ownership when their earlier drone detection arrives late. * Added coverage for sightings arriving before owner claims, without creating incorrect owners. * Added coverage for delayed drone confirmations overriding prior first- sighting ownership. * Added websocket heartbeat acknowledgement to the local release smoke test.
* Added optional tracker idle-state support for parked R2C clients. The tracker now advertises idle parking guidance in hello_ack, accepts a backwards-compatible idle message before clients close /ws/r2c, and shows parked instances as IDLE on /r2c. * Idle requests are ignored while the client still owns an active drone lease, preserving owner/relay behavior during live flights.
* Reduced idle coordination overhead on the tracker by throttling heartbeat- triggered zone_update broadcasts to once per minute by default, while preserving immediate delivery for owner changes, owner expiry, Drone Confirmation Save events, disconnects, and initial joins. * Lowered noisy /ws/r2c lifecycle and heartbeat logging from routine idle/ reconnect traffic, keeping abnormal or longer-lived closes visible for diagnostics. * Added regression coverage to verify heartbeat acknowledgements are still sent every time even when idle zone-update fanout is throttled.
* Confirmation events now authoritatively update and broadcast tracker ownership for the active drone lease, with normal cleanup on lease expiry, lost-drone, or confirming-zone disconnect.
* Fixed tracker-coordinated Drone Confirmation so each Save broadcasts as a new event, even for the same drone Remote ID, while Ignore remains the only action that suppresses future prompts. * Removed flightStartMsec from key - silly Codex. Gotta keep closer tabs... * Missing from untagged v1.1.13: Persist per-ws r2c coordination - tracker can run in multiple processes.
* Address "Server Internal Error" during export of 2026 flight logs.
* Fixed r2c-tracker coordination so drone confirmation saves are replayed to
* Improved standalone R2C coordination. Standalone instances now automatically
* Handle out of order r2c arrivals.
* Support standalone devices declaring mapid=""