fix: council-review noise cuts — scenes/central-macros exempt, language-matched repairs

External expert review (real run on the demo house) flagged: scenes (18.001)
wrongly marked missing_status + an unsafe DPT-1.011 status repair for them;
'All blinds down' warned while 'All lights off' was correctly INFO; and a Russian
'(статус)' suffix synthesised on an English project. Fixes: scene_no_status INFO
+ no synth status for scenes; broadened central-macro detection (generic 'all
blinds/shutters/...'); language-matched repair suffixes. Demo missing_status
warnings ~7 -> 1 genuine. tests/test_council_fixes.py; full suite green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Nikolay1
2026-07-15 09:09:57 +02:00
co-authored by Claude Opus 4.8
parent 1e924ede6f
commit c53f388dcb
4 changed files with 101 additions and 3 deletions
+9
View File
@@ -44,6 +44,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed
- **Noise & unsafe repairs surfaced by an external expert review on the demo house.** (1) Scene-control
GAs (DPT 17/18) are no longer flagged as `missing_status` — they recall a preset and have no single
state to read back (now `scene_no_status`, INFO), and `suggest_repairs` no longer synthesises a bogus
boolean status GA for them. (2) Generic group commands (`All blinds down`, `All shutters up`) are now
recognised as central macros (INFO) like `All lights off`, not missing-status warnings. (3) Synthesised
repair names match the GA's language — an English project no longer gets a Russian `(статус)`/`Значение
яркости` suffix. On the demo house this cut `missing_status_address` warnings from ~7 (mostly scenes) to
the one genuine case. `tests/test_council_fixes.py`.
- **`skills/ha-git-backup`**: `install.sh` now pins `core.sshCommand` + a repo-local `known_hosts`
so the nightly sync pushes from HA's Core container (was failing `Host key verification failed`).