mirror of
https://github.com/NickoScope/nickol-knx-mcp.git
synced 2026-09-29 19:31:12 +02:00
feat(param_check): significance layer — a focus list of config-value outliers
Rank findings by significance: config_value (setpoint/hysteresis/time/threshold — an odd device is usually a real mistake) vs config_flag (mode/type) vs label (per-room text, often intentional). New focus list surfaces the config-value clear outliers first. On a real 275-device project this turns 422 raw outliers into a 9-item focus that includes the thermostats whose init-setpoint differs from their siblings. Multilingual name hints (EN/DE/RU). Test updated. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
81799169c5
commit
1e924ede6f
@@ -75,6 +75,10 @@ def main():
|
||||
assert h["majority_value"] == "5"
|
||||
assert [d["value"] for d in h["odd_devices"]] == ["10"], h["odd_devices"]
|
||||
assert h["odd_devices"][0]["address"] == "10"
|
||||
# significance: "Hysteresis (K)" is a config VALUE -> shows up in focus
|
||||
assert h["significance"] == "config_value", h["significance"]
|
||||
assert r["focus_count"] >= 1
|
||||
assert any(o["refid"].endswith("R-1") for o in r["focus"]), r["focus"]
|
||||
|
||||
# uniform param (mode, all "2") must NOT appear anywhere
|
||||
assert not any(o["refid"].endswith("R-2") for o in r["clear_outliers"] + r["split_configs"])
|
||||
|
||||
Reference in New Issue
Block a user