mirror of
https://github.com/NickoScope/nickol-knx-mcp.git
synced 2026-09-29 19:31:12 +02:00
fix(P3): root-cause suppression — an empty-name GA no longer cascades
Council #2: the empty GA 2/5/2 spawned missing_status + policy_taxonomy_outlier + a lighting classification on top of its real defect. An empty name means the classifier can't be trusted, so detect_missing_status and check_policy now skip blank-name GAs; the single root cause is empty_name (check_naming). Demo 2/5/2: 3 findings -> 1. tests/test_root_cause.py; full suite green (10 tests). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
10169275e3
commit
84c1c7dbd9
@@ -61,6 +61,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
### Fixed
|
||||
|
||||
- **Root-cause suppression (external-review noise).** A GA with an **empty name** has an unreliable
|
||||
classification, so it no longer cascades into a `missing_status_address` warning and a
|
||||
`policy_taxonomy_outlier` — the single root cause (`empty_name` from `check_naming`) is kept and the
|
||||
dependent findings are suppressed. On the demo house the empty `2/5/2` now yields one finding instead
|
||||
of three. `tests/test_root_cause.py`.
|
||||
|
||||
- **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
|
||||
|
||||
Reference in New Issue
Block a user