v1.7.0 — Native charge & wait steps
The headline: a run profile can now carry an ordered sequence with stops, not just a flat room queue.
✨ Charge & wait steps
- Charge to X% — a "dock and charge to a target %" step between room groups. Vacuum the whole floor, top up to 80%, then mop — all as one learned job. (Closes #41.)
- Wait X min — a timed dock-and-hold, e.g. a mop-dry pause between a vacuum and a mop pass.
- Per-group settings — the same room can be vacuumed in one group and mopped in a later one.
- Multiple charges per run, and a live "N% to go" countdown while charging (no fabricated pre-run estimate — charge time depends on how low the battery is when it docks).
- Build it in the run-profile editor (Add a charge step / Add a wait / Add current rooms as a group), or via the
set_run_profile_stepsservice.
🧹 Roborock
- Charge & wait steps work on Roborock too; a stepped run holds strict order so groups clean exactly as laid out.
- Settable mop is now per-model — the S6's mop stays observe-only, but S7/S8-class models expose the cleaning-mode + water controls and can vacuum-then-mop per group. (Unverified on S7/S8 hardware — best-effort; a rejected mop command degrades safely.)
🐛 Fixes
- Profile buttons exposed to Home Assistant now actually start cleaning. (Closes #42.)
- New/unlearned rooms no longer trip a spurious "may be stuck" warning. (Closes #40.)
- Omni E28 (T2352) inherits the x10 dock capabilities.
🌍 Localization
- Everything new is translated across all 7 locales (de/es/fr/it/nl/pt/ru).
Hardened by a multi-agent adversarial review pass before shipping.