Skip to content

Anthbot Map v2.4.7.0

Latest

Choose a tag to compare

@github-actions github-actions released this 13 Sep 19:14
· 0 commits to 59bb7d520137b3d70c238762d8ddf749a820d824 since this release

Anthbot Map v2.4.7.0

Architecture and stability release built on v2.4.6.6 and the field-tested v2.4.6.7 stability work.

Live map architecture

  • Separates high-frequency live map/path/pose delivery from the Home Assistant entity state machine.
  • Adds a dedicated Home Assistant WebSocket transport for live map data.
  • The card receives an initial full snapshot, then incremental path deltas instead of repeatedly receiving the complete path through entity attributes.
  • Adds sequence tracking, automatic resync after gaps/mismatches, path-id reset handling, and rolling-window support for long M-series paths.
  • Keeps a compatibility fallback: if the live frontend resource is unavailable, the legacy entity-based path remains usable instead of disabling map data.
  • Prevents a stale frontend resource from taking over after downgrade when the backend no longer advertises live-stream support.
  • Stops the card's legacy periodic homeassistant.update_entity polling for the Map entity while live-stream mode is active.

Home Assistant Recorder and state load

  • The Map entity is now a compact status/diagnostic anchor and no longer embeds full live path, cloud_path, mowed_path, or pose geometry while WebSocket live mode is active.
  • Diagnostic collections such as map archive selection, task-event history and error-history snapshots no longer trigger a Map entity write every few seconds.
  • Existing Map coordinator listeners are rebound to the compact write semantics when the live transport starts, preventing old Recorder wrappers from continuing to write at the previous cadence.
  • runtime_performance remains visible live where needed but is excluded from Recorder attributes.
  • A one-minute heartbeat keeps non-critical Map diagnostics current without turning live mowing into Recorder churn.

No-Go and event-loop stability

  • Moves expensive No-Go geometry evaluation off the Home Assistant event loop with async_add_executor_job().
  • Applies the protection to M-series, N8 and Genie path diagnostics.
  • Uses stable geometry/path revision caching plus a live evaluation cadence guard so repeated cloud updates do not rescan unchanged geometry unnecessarily.
  • Keeps path/pose forwarding and mower command routing unchanged.

Validation

Field validation was performed on a real Anthbot M9 Pro with the live map open during mowing:

  • live path and robot position continued updating through the WebSocket transport;
  • the Home Assistant Map entity contained no full path/pose geometry while the path continued growing;
  • Recorder load dropped from tens of Map state rows per three minutes to 3 rows in a 3-minute active-mowing sample;
  • Home Assistant restart completed successfully and the full existing path returned after WebSocket reconnect/snapshot;
  • movement, pause/resume and restart behavior remained functional;
  • no Anthbot event-loop blocking or startup bootstrap timeout was observed in the tested flow.

Automated tests cover the WebSocket snapshot/delta protocol, resync behavior, rolling-window path handling, compact entity architecture, existing-listener rebinding, legacy polling suppression, Recorder semantics, M-series/N8 No-Go throttling and Genie path diagnostics. Home Assistant hassfest and HACS validation pass on the release candidate.

Model scope

  • M9 Pro: real-device field validation completed for the new live transport and Recorder behavior.
  • M5/M9 family: shares the protected M-series path implementation.
  • N8: dedicated model path/control handling remains separate; No-Go executor protection and N8-specific regression tests are included.
  • Genie: dedicated path diagnostics remain separate; expensive No-Go diagnostics are moved off the event loop and covered by tests.

Scope protection

No mower command-routing changes are introduced by this release. Genie, M5/M9-family and N8 control paths remain separated. The separate Mqbretrofit/anthbot-reporting-server project is not modified by this release.

ANTHBOT Map 2.4.7.0 – változások

Ez a kiadás a 2.4.6.6 stabil alapjára és a terepen ellenőrzött 2.4.6.7 stabilitási javításokra épülő architekturális és stabilitási frissítés.

Élő térkép architektúra

  • A nagy frekvenciájú live map/path/pose adatfolyam leválik a Home Assistant entity state mechanizmusáról.
  • Külön Home Assistant WebSocket transport kezeli az élő térképadatot.
  • A kártya első csatlakozáskor teljes snapshotot kap, utána pedig csak path deltákat, nem a teljes útvonalat újra és újra entity attribútumként.
  • Sequence kezelés, automatikus resync, path-id váltás és hosszú M-series útvonalaknál gördülő path-ablak támogatás került bele.
  • Ha a live frontend erőforrás nem használható, a rendszer kompatibilitási módban megtartja a régi entity-alapú térképadatot.
  • Downgrade után egy bent maradó régi frontend resource nem veheti át a működést, ha a backend már nem jelzi a live-stream támogatást.
  • Live-stream módban a kártya leállítja a régi periodikus homeassistant.update_entity Map-entity pollingot.

Home Assistant Recorder és state terhelés

  • WebSocket live módban a Map entity már csak kompakt státusz/diagnosztikai anchor; a teljes path, cloud_path, mowed_path és pose geometria nem kerül bele.
  • A map archive selection, task-event history, error-history snapshot és más forgó diagnosztikai gyűjtemények már nem indítanak néhány másodpercenként új Map state write-ot.
  • A live transport indulásakor a már korábban regisztrált Map coordinator listenerek is átállnak a kompakt write-semantics logikára, így a régi Recorder wrapper sem tud tovább a korábbi gyakorisággal írni.
  • A runtime_performance továbbra is elérhető élő diagnosztikához, de nem kerül Recorder attribútumként eltárolásra.
  • Egyperces heartbeat frissíti a nem sürgős Map diagnosztikát úgy, hogy az élő nyírás ne okozzon Recorder churnt.

No-Go és event-loop stabilitás

  • A drága No-Go geometriai ellenőrzés kikerült a Home Assistant event loopból, és async_add_executor_job() segítségével executorban fut.
  • A védelem az M-series, N8 és Genie path diagnosztikára is kiterjed.
  • Stabil geometry/path revision cache és live cadence védi a rendszert attól, hogy változatlan geometriát minden cloud update-nél újra teljesen végigszámoljon.
  • A path/pose továbbítás és a robotvezérlési command routing nem változott.

Terepi ellenőrzés

A live-map architektúrát valódi Anthbot M9 Pro roboton, aktív nyírás közben ellenőriztük:

  • a live path és a robot pozíciója WebSocketen tovább frissült;
  • a Home Assistant Map entityben nem volt teljes path/pose geometria, miközben az útvonal tovább nőtt;
  • a Recorder terhelése a korábbi több tíz Map state / 3 perc értékről 3 state sorra csökkent egy 3 perces aktív nyírási mérésben;
  • Home Assistant restart után a teljes korábbi útvonal WebSocket reconnect/snapshot segítségével visszatért;
  • a mozgás, pause/resume és restart működése megmaradt;
  • a tesztelt folyamatban nem jelent meg ANTHBOT event-loop blokkolás vagy startup bootstrap timeout.

Automatikus tesztek védik a WebSocket snapshot/delta protokollt, resync viselkedést, rolling-window path kezelést, compact entity architektúrát, meglévő listener újrakötést, legacy polling letiltást, Recorder szemantikát, M-series/N8 No-Go throttlingot és Genie path diagnosztikát. A release candidate-en a Home Assistant hassfest és HACS ellenőrzések is sikeresek.

Modellhatókör

  • M9 Pro: a live transport és Recorder működés valódi eszközön terepen ellenőrizve.
  • M5/M9 család: ugyanazt a védett M-series path implementációt használja.
  • N8: a külön N8 model path/control kezelés megmarad; a No-Go executor védelem és N8-specifikus regressziós tesztek benne vannak.
  • Genie: a külön path diagnosztika megmarad; a drága No-Go számítás executorba került és tesztek védik.

Hatókörvédelem

Ez a kiadás nem módosítja a robotvezérlési command routingot. A Genie, M5/M9 család és N8 vezérlési útvonalai továbbra is külön maradnak. A külön Mqbretrofit/anthbot-reporting-server projektet ez a kiadás nem módosítja.