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_entitypolling 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, orposegeometry 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_performanceremains 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_entityMap-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ésposegeometria 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_performancetová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.