refactor(warnings): report raw signal only, align meta key naming
CI / test (3.10) (push) Failing after 8s
CI / test (3.11) (push) Failing after 7s
CI / test (3.12) (push) Failing after 7s
CI / test (3.9) (push) Failing after 7s

get_device_warnings() now returns only {code, meta} — severity, title,
message, and action are resolved centrally by netork's
WARNING_CATALOG (netork/core/device_warnings.py), not by the driver.
Also renames meta.version -> meta.latest_version for
firmware_update_available so it matches the netgear driver's shape and
the shared catalog message template.
This commit is contained in:
Christian Manivong
2026-07-20 09:54:23 +02:00
parent 3b3469daa9
commit 4723c44d9d
+2 -9
View File
@@ -411,9 +411,7 @@ class FritzBoxDriver(ResidentialGatewayDriver):
if ui_info.get("NewX_AVM-DE_UpdateState", "") == "Available": if ui_info.get("NewX_AVM-DE_UpdateState", "") == "Available":
warnings.append({ warnings.append({
"code": "firmware_update_available", "code": "firmware_update_available",
"severity": "info", "meta": {"latest_version": ui_info.get("NewX_AVM-DE_Version", "")},
"action": None,
"meta": {"version": ui_info.get("NewX_AVM-DE_Version", "")},
}) })
except _OPTIONAL_SERVICE_ERRORS: except _OPTIONAL_SERVICE_ERRORS:
pass pass
@@ -424,12 +422,7 @@ class FritzBoxDriver(ResidentialGatewayDriver):
# SNR margin is in dB×10; < 60 means < 6 dB — borderline line quality # SNR margin is in dB×10; < 60 means < 6 dB — borderline line quality
snr_down = int(_to_float(info.get("NewDownstreamNoiseMargin"))) snr_down = int(_to_float(info.get("NewDownstreamNoiseMargin")))
if 0 < snr_down < 60: if 0 < snr_down < 60:
warnings.append({ warnings.append({"code": "dsl_snr_low", "meta": {"snr_db_x10": snr_down}})
"code": "dsl_snr_low",
"severity": "warning",
"action": None,
"meta": {"snr_db_x10": snr_down},
})
except _OPTIONAL_SERVICE_ERRORS: except _OPTIONAL_SERVICE_ERRORS:
pass pass