-
-
Notifications
You must be signed in to change notification settings - Fork 3
Understanding Control Decisions
Humidity Intelligence is built around one calm idea: one explainable control decision per evaluation cycle.
It does not run a loose pile of competing Home Assistant automations. It reads the configured telemetry, checks gates and risks, resolves priority, and exposes the reason so you can see why the selected state won.
Each cycle works like this:
- check global gates
- check high-priority safety and risk lanes
- check zone demand
- check air-quality demand
- fall back to normal
The first valid lane wins. Lower-priority lanes wait.
The current design contract preserves this order:
- carbon-monoxide emergency
- humidity danger
- mould danger
- mould risk
- condensation danger
- condensation risk
- zone 1
- zone 2
- air quality
- normal
This is why a normal comfort or air-quality response may not run while a higher priority safety, moisture, gate, or alert state is active.
Global gates can suppress lower-priority runtime truth.
Examples:
- time gate outside the allowed window
- presence or alarm state says the home is away
- manual pause is active
- override behavior is active
When a gate takes authority, the UI should show gate truth rather than letting stale lower-priority alert text pretend it still owns the decision.
Humidity, mould, and condensation alerts are useful only when HI can explain where the problem came from.
The engine tries to resolve:
- source sensor
- room
- zone
- configured output path
If that context is incomplete, HI should degrade safely. It should not blindly boost an unknown output just because a risk signal exists.
Humidity readings are interpreted relative to the active target profile.
A reading that is acceptable in summer may be risky for a colder winter envelope. HI uses target-relative states such as:
- below target
- in target
- above target
- high risk
That keeps the reason panel closer to how the home actually behaves across seasons.
Air-quality response can matter, especially for cooking, occupancy, particles, VOCs, or stale air. But normal AQ response does not outrank carbon-monoxide emergency or moisture-risk alert lanes.
If AQ looks delayed, check whether a higher-priority lane or global gate is active.
Humidifier lanes remain independent from the selected ventilation lane. That keeps dry air correction from being hidden inside the same lane decision as extraction, ventilation, or air-quality response.
The reason panel should answer:
- what lane is active
- what condition selected it
- what source or context matters
- whether a gate is blocking control
- whether anything is degraded or unavailable
If the reason panel, dashboard chips, and backend state disagree, report it as a UI truth consistency issue.
This page explains the current public model. It does not define runtime behavior. The implementation contract remains in the repository source and design brief.