v0.7.10
This commit is contained in:
+17
-5
@@ -1,8 +1,8 @@
|
||||
# GREE Controller v0.7.9 - build and validation report
|
||||
# GREE Controller v0.7.10 - build and validation report
|
||||
|
||||
## Scope
|
||||
|
||||
Version 0.7.9 includes the previous climate-group and whole-house changes plus the zone-profile and Home Assistant stability fixes described below. Global controls are consolidated, group control stays immediately below them, and lower-priority dashboard sections are collapsed on demand.
|
||||
Version 0.7.10 includes the previous climate-group, whole-house and zone-profile fixes plus a strict separation between local quick-thermostat ownership and true physical/manual-device takeover. Global controls are consolidated, group control stays immediately below them, and lower-priority dashboard sections are collapsed on demand.
|
||||
|
||||
## Implemented changes
|
||||
|
||||
@@ -395,13 +395,25 @@ Rust compiler note: this packaging environment still does not provide `cargo`, `
|
||||
Validation for this package is recorded after the final archive/manifest checks. Rust compile/test still requires the normal target/CI host because this packaging environment has no Rust toolchain.
|
||||
|
||||
|
||||
## Final validation for v0.7.9
|
||||
## 2026-08-27 v0.7.10 local quick thermostat and false takeover fix
|
||||
|
||||
- Added persisted `local_thermostat_power` ownership with three distinct states: normal group/schedule ownership (`null`), locally forced thermostat ON (`true`) and locally forced thermostat OFF (`false`).
|
||||
- Dashboard quick ON/OFF and the legacy zone manual-power route now use local thermostat semantics; they never call the direct/manual-device command path.
|
||||
- A locally active thermostat bypasses disabled climate-group power gates while retaining the normal sensor, hysteresis, profile/target, Smart Fan and GREE setpoint-modulation logic.
|
||||
- **Resume automation** for a local thermostat clears local ownership and returns the zone to group/schedule control. The existing device takeover Resume action remains separate.
|
||||
- Direct device commands and genuine remote/pilot changes still create `device_manual_override`; local thermostat ownership does not.
|
||||
- Added a bounded pending controller-command record for GREE climate fields when post-command status has not settled. A later poll matching that expected state is no longer misclassified as remote control, fixing false **Manual control / remote** after group ON and similar controller-originated transitions.
|
||||
- Direct device automations are suppressed while local thermostat ownership is active so they cannot fight the local regulator.
|
||||
- Home Assistant zone climate ON/OFF now maps to local thermostat power; the separate Enabled switch remains the technical zone enable.
|
||||
- Rotated the PWA cache key and advanced package/Home Assistant metadata to `0.7.10`.
|
||||
|
||||
## Final validation for v0.7.10
|
||||
|
||||
- `node --check` passed for all Web UI JavaScript files.
|
||||
- Home Assistant modules, helper scripts and `make_zip.py` passed `python3 -m py_compile`.
|
||||
- All JSON files parsed successfully; Polish and English language packs have identical flattened 597-key sets.
|
||||
- All JSON files parsed successfully; Polish and English language packs have identical 598-key sets.
|
||||
- All shell scripts passed `bash -n`; `web/index.html` parsed successfully and CSS braces are balanced.
|
||||
- Cargo package, Home Assistant manifest, README and PWA cache metadata consistently report version `0.7.9`.
|
||||
- Cargo package, Home Assistant manifest, README and PWA cache metadata consistently report version `0.7.10`.
|
||||
- Rust source delimiter/static invariant checks passed, including the new regulator wake-up and control-plan fields.
|
||||
- `FILE_MANIFEST.sha256` is regenerated from the final tree and verified before packaging; the resulting ZIP is tested with `unzip -t`.
|
||||
- This environment does not provide `cargo`, `rustc` or `rustfmt`, so the normal target/CI update path must still run `cargo test --all-targets` and `cargo build --release` before replacing the running binary.
|
||||
|
||||
Reference in New Issue
Block a user