github BSkando/GoogleFindMy-HA v1.7.14

3 months ago

This release teaches the integration to reject physically impossible location
jumps. Crowd-sourced (FMDN) fixes occasionally place a device far from where it
really is, and a single bad report used to yank the device across the map. A new
kinematic speed gate now rejects any fix that would require an impossible speed
to reach, so one noisy crowd report can no longer teleport a device. A companion
round-trip recovery makes sure a genuine short there-and-back trip is not held
back by that gate. The release also stops a device's name from leaking into
manual-locate diagnostic logs, and the remainder is correctness hardening of the
new gate that was caught in review. The config schema is unchanged and nothing
is removed for existing working installs.

What's Changed

New Features

  • A kinematic speed gate rejects "teleport" location fixes. Google's
    crowd-sourced network sometimes returns a fix that puts a device hundreds or
    thousands of metres from its true position within seconds, an apparent jump
    that would require a speed no ground vehicle can reach. The integration now
    compares each incoming fix against the last accepted one and rejects it when
    the implied speed exceeds a physical ceiling. A single stray crowd report can
    therefore no longer drag the device across the map, while normal fast travel
    (car, train, plane) stays comfortably below the ceiling and is unaffected.
  • Round-trip recovery keeps genuine short trips from being blocked. The
    speed gate on its own could reject a real, quick out-and-back movement. When a
    jump is gated, the integration now remembers where it pointed as a lightweight
    in-memory "round-trip anchor"; if the device genuinely returns to that spot
    within a short window (about 15 minutes) and a small radius, the return is
    accepted instead of gated. The anchor lives only in memory, does not survive a
    restart, and self-heals, so the safety net stays cheap and cannot get stuck.

Bug Fixes

  • A device's name no longer leaks into manual-locate diagnostic logs.
    Several manual-locate log sites still printed the device name (alongside a
    misleading cause list); both are now redacted, matching the privacy hygiene of
    the rest of the logging.

Changed

  • Speed-gate correctness hardening (review follow-ups). A series of small
    fixes tighten the new gate before it could ever misbehave in the field, each
    caught during review rather than by a user: the round-trip anchor seed now
    propagates correctly to a device shared across several config entries; the
    anchor expires only when its time window has truly elapsed, not when an
    unrelated far-away crowd report happens to arrive between the two legs of a
    trip; and the "reliable fix" check the gate relies on now requires a real,
    finite, physically plausible accuracy, so a corrupt zero-accuracy reading can
    no longer pass as a trusted reference and silently suppress a device's
    updates. These refine the new feature only; unrelated behaviour is unchanged.
  • Internal release and version-sync tooling. The maintenance line gained
    branch-neutral release automation that keeps the three version literals
    (manifest, integration constant, packaging metadata) in sync. This is
    maintainer-facing plumbing with no runtime effect for users.

Full Changelog: v1.7.13...v1.7.14


A full restart of Home Assistant is required after updating. Reloading the
integration alone is not enough: a version update changes the integration's
Python code, which Home Assistant only picks up on a full restart. After
updating, restart Home Assistant and confirm that manifest.json shows
1.7.14 under Settings -> Devices & Services -> Google Find My.

Don't miss a new GoogleFindMy-HA release

NewReleases is sending notifications on new releases.