Skip to content

v0.3.2 - Per-area member counts

Choose a tag to compare

@positionguard positionguard released this 01 Sep 23:52
· 5 commits to main since this release

Added

  • Per-area member counts. Each area in a group now gets a sensor with the
    number of members currently inside it, plus a count of members whose position
    is stale. Coordinate-free — the sensor reports how many, never where. Useful
    for occupancy automations: member_count == 0 is a reliable "everyone's out"
    trigger.

Changed

  • A member whose position has gone stale now reports as unavailable
    instead of off. Previously a phone that hadn't reported recently looked
    identical to a member who was safely inside their usual area, so a sensor
    could alternate between "safe" and "outside" for someone who hadn't moved.
    Stale now means "no current data", which is what unavailable is for.

    This changes behavior for existing automations. Anything treating off
    as "safe" — template sensors, conditions, history graphs — will now see
    unavailable during stale periods. Add an availability check if your
    automation should only act on a known state.

    The raw position age remains in the entity attributes if you want to gate on
    freshness yourself.

Fixed

  • Test suite regression: list_group_area_counts was mocked without async
    support, failing every coordinator refresh test.

Requires

PositionGuard API with Safety Zones enabled. Per-area counts require the
/groups/{id}/area-counts endpoint (backend, August 2026 or later).