fix(plant): alert hygiene — watchdog gate, trend smoothing, UPS [#344]
ci / lint (push) Successful in 1m31s
ci / lint (push) Successful in 1m31s
Three live-fire defects: unconditional 30-min watchdog page, tsys6 flap false-positive, Tripp Lite runtime-low gap. TDD: 4 new regression tests. On-box ha core check passed before commit. Meat + verification: https://projects.knownelement.com/issues/344#note-4966
This commit is contained in:
@@ -84,11 +84,14 @@ input_boolean:
|
||||
|
||||
shell_command:
|
||||
# Unlock dispatch via curl — swapped from rest_command 2026-09-04: the
|
||||
# rest_command integration silently fails to register on this box
|
||||
# (404 on /api/services/rest_command despite valid config + secret;
|
||||
# root-cause pending in #345/#741). curl is present in the HA core
|
||||
# container. Token lives in the URL secret — process-list exposure
|
||||
# accepted (isolated container).
|
||||
# rest_command integration silently failed to register on this box
|
||||
# (404 on /api/services/rest_command despite valid config + secret).
|
||||
# NOT reproducible: 2026-09-06 the integration + doorman_unlock service
|
||||
# are registered again (suspect: transient state after a reload-only
|
||||
# deploy window; rest_command now also exposes a reload service).
|
||||
# curl stays as the verified-live dispatch path — swapping back to
|
||||
# rest_command (drops the token from the process list) is gated on one
|
||||
# armed badge re-test (founder call, questions-v1).
|
||||
doorman_unlock: "curl -sS -m 10 '{{ doorman_unlock_url }}'"
|
||||
|
||||
rest_command:
|
||||
|
||||
@@ -543,26 +543,56 @@ sensor:
|
||||
unique_id: pfv_garage_pdu_energy
|
||||
|
||||
# --- Rate-of-change early warning (#682): +10°F/15min = AC trouble [#344] ---
|
||||
# DRAC sensors quantize to whole °C and FLAP ~1.8°F between polls; raw-fed
|
||||
# trend sensors false-tripped TEMP RISING FAST (2026-09-06 05:02 CDT, tsys6).
|
||||
# Trend inputs are 5-min time-weighted moving averages — real climbs survive
|
||||
# the smoothing, quantization flapping does not.
|
||||
filter:
|
||||
- platform: time_simple_moving_average
|
||||
name: "PFV tsys1 rack temperature smoothed"
|
||||
entity_id: sensor.pfv_tsys1_rack_temperature
|
||||
window: "00:05:00"
|
||||
precision: 2
|
||||
unique_id: pfv_tsys1_rack_temperature_smoothed
|
||||
- platform: time_simple_moving_average
|
||||
name: "PFV tsys6 DRAC ambient smoothed"
|
||||
entity_id: sensor.pfv_tsys6_drac_ambient
|
||||
window: "00:05:00"
|
||||
precision: 2
|
||||
unique_id: pfv_tsys6_drac_ambient_smoothed
|
||||
- platform: time_simple_moving_average
|
||||
name: "PFV tsys7 DRAC inlet smoothed"
|
||||
entity_id: sensor.pfv_tsys7_drac_inlet
|
||||
window: "00:05:00"
|
||||
precision: 2
|
||||
unique_id: pfv_tsys7_drac_inlet_smoothed
|
||||
- platform: time_simple_moving_average
|
||||
name: "PFV garage temperature smoothed"
|
||||
entity_id: sensor.pfv_garage_temperature
|
||||
window: "00:05:00"
|
||||
precision: 2
|
||||
unique_id: pfv_garage_temperature_smoothed
|
||||
|
||||
binary_sensor:
|
||||
- platform: trend
|
||||
sensors:
|
||||
server_room_temp_rising:
|
||||
entity_id: sensor.pfv_tsys1_rack_temperature
|
||||
entity_id: sensor.pfv_tsys1_rack_temperature_smoothed
|
||||
sample_duration: 900
|
||||
min_gradient: 0.011
|
||||
unique_id: trend_server_room_rising
|
||||
tsys6_ambient_rising:
|
||||
entity_id: sensor.pfv_tsys6_drac_ambient
|
||||
entity_id: sensor.pfv_tsys6_drac_ambient_smoothed
|
||||
sample_duration: 900
|
||||
min_gradient: 0.011
|
||||
unique_id: trend_tsys6_ambient_rising
|
||||
tsys7_inlet_rising:
|
||||
entity_id: sensor.pfv_tsys7_drac_inlet
|
||||
entity_id: sensor.pfv_tsys7_drac_inlet_smoothed
|
||||
sample_duration: 900
|
||||
min_gradient: 0.011
|
||||
unique_id: trend_tsys7_inlet_rising
|
||||
garage_temp_rising:
|
||||
entity_id: sensor.pfv_garage_temperature
|
||||
entity_id: sensor.pfv_garage_temperature_smoothed
|
||||
sample_duration: 900
|
||||
min_gradient: 0.011
|
||||
unique_id: trend_garage_rising
|
||||
|
||||
Reference in New Issue
Block a user