Skip to content

Stability Score

Senyo edited this page Oct 24, 2026 · 5 revisions

Humidity Intelligence Wiki

Stability Score

This guide describes v2.1.1, published on 24 October 2026, retaining schema 3/formula 4 and using V2 UI revision 13. Check the version offered in HACS before updating. The canonical Stability contract owns calculation and compatibility; this Wiki explains the user experience.

Stability observes environmental evidence. It cannot choose a ventilation lane, change a gate or command an output. CO-first control, independent humidifier demand, season-aware targets and backend-owned reasons remain authoritative.

Collection and evidence

The backend retains 432 ten-minute UTC buckets across 72 hours. A score requires 303 valid samples plus sufficient consecutive and balance evidence. Collection progress counts valid samples toward 303; rolling-window coverage counts them out of 432. Reaching the sample target cannot override another missing-evidence gate.

Blue collection marks show valid-sample progress. A separate thin red track shows known failed or missed scheduled buckets; the backend never invents offline or pre-setup failures. Restart or integration reload resets baseline, failure history, AQ recovery, movement and score history. There is no Recorder backfill. Without gaps, 303 samples take 50h20m after the first observation. A genuine backend score of zero remains valid; a missing score is a different state.

Stability collecting its baseline, with 4 of 303 valid samples
State How to read it
Collecting baseline Valid observations are accumulating; the count is not a score.
Excellent / Good / Unstable / Poor Backend score bands: 92–100 / 70–91 / 55–69 / 0–54.
Partial Eligible but incomplete historical AQ evidence remains disclosed.
Evidence gaps or Balance evidence Required historical evidence is insufficient; no score.
Live data unavailable Required current evidence is missing; an older score is suppressed.
Missing or malformed payload No score; unknown evidence never becomes a numeric zero or healthy claim.

AQ scoring uses enabled individual CO2, PM2.5 and VOC conditions per level; IAQ is the fallback only when no individual conditions are enabled for that level. Missing configured evidence stays missing. Routine non-CO AQ adds an additional deduction of up to 12 points, recovering over six observed-clear hours; missing evidence pauses that recovery. Historical AQ and combined recovery still contribute separately, so twelve points is not a limit on all AQ influence. This selection does not change engine AQ triggers or CO protection.

Choosing the badge display

Hold the badge to switch its score display off. It stays visible with Disabled text, a static violet/indigo glow and segmented LEDs. Hold it again to restore the normal display. With a keyboard, focus the badge and hold Space for the same action. Tap, Enter or a short Space press still opens the explanation and history in either state; collection, scoring and environmental control continue in the background.

Home Assistant remembers this choice for your signed-in account and this HI entry, including across Mobile, Tablet and browser sessions. Refreshing the page keeps the choice. Other accounts and HI entries are unaffected. There is no separate switch, button or configuration checkbox.

If the status label says Display preference unavailable or Save unconfirmed, HI could not read or confirm the saved choice. Check the Home Assistant connection and hold again to retry. This message describes the display preference, not the health of your home or devices.

Reading the explanation

Tap or keyboard-activate the badge to open a labelled snapshot. The headline keeps the final backend score. Individual component shortfalls and evidence/AQ deductions remain visible. At the bottom of the breakdown, Total deductions leads to one calculation: 100 − total deductions = calculated score.

The calculated value can differ from the headline. The backend clamps the result to its allowed range, rounds for the displayed integer and applies the strictest remaining safety ceiling. The separate explanation shows those steps; a ceiling above the calculated score does not raise it. The backend reconciles displayed component rounding so the individual deductions agree with their total. Missing or inconsistent arithmetic is reported as unavailable, never recreated by the frontend.

For example, 100 − 35.09 = 64.91 can produce a displayed score of 65 after rounding. A safety ceiling of 91 leaves that result unchanged because 65 is already below it.

Current CO emergency caps at 0. Current condensation/mould Danger or CO warning caps at 54; recent recorded CO emergency caps at 54 and recent recorded condensation/mould Danger or CO warning caps at 69. Incomplete current AQ or an unavailable historical AQ component can cap at 91, as can sustained risk evidence. Routine non-CO AQ crossings use the recoverable deduction instead of those danger ceilings. The canonical contract contains the exact lookback and coverage rules.

Movement and score history

The arc compares the current displayed score with an actual recorded reference within the last 60 minutes. Clockwise means a net gain; counterclockwise means a net loss. The backend keeps the first publication in each ten-minute slot, at most seven references, and uses the oldest one still in the window. The details show its timestamp and the actual comparison interval; a full hour is not assumed.

LED colour describes the latest update: green for a rise, orange/red for a fall, and neutral for unchanged. For example, 49 → 54 → 52 gives a recent net gain of 3 points but a latest fall of 2 points, so a clockwise arc can be orange. This is an illustrative score sequence, not a humidity measurement or a scoring formula. The headline and halo still describe the 72-hour composite score; recent improvement can coexist with a Poor score or poor current humidity. Read the humidity and reason panels for current conditions.

Older references expire on the next backend update. That can change the arc without a new score change; the details explain the advancing reference, and an unchanged latest score stays neutral. Missing scores or a publication gap over eleven minutes start a fresh baseline. Scoring, sampled history and the saved display preference are unchanged.

Open the existing Score history expander at the bottom of the details to inspect recorded ten-minute samples. The graph and time context use only available history. Missing samples remain gaps; partial coverage, empty collection and unavailable history remain distinct. It does not record every change between sample slots or join missing observations into an invented trend. Restart/reload clears it. Other badge charts can use Home Assistant Recorder; this score history does not.

Close, Escape and backdrop dismissal remain available. Browsers without native dialog support open Diagnostics more-info when you tap. Reduced-motion presentation preserves the information without requiring animation. These details remain a snapshot until reopened.

Updating and support

After installing the complete package, fully restart Home Assistant. For earlier V2 cards, run refresh_ui, obtain fresh dump_cards or view_cards exports, then replace the complete YAML in every saved Manual card and refresh the frontend. Both V2 layouts use revision 13, superseding revisions 1–12; existing beta.4 and RC.1 revision-13 cards remain compatible and need no extra export for the version bump alone. Stamp schema/generator 1 and Stability schema 3/formula 4 remain. No V2 configuration or entity migration is required. See the card update sequence.

Restore package and saved dashboard YAML separately for rollback; keep package backups outside custom_components. Restart/reload resets history. Synthetic replay and browser fixtures do not establish live observations or physical-client behavior. Lab evidence is advisory, never a mandatory release gate.

Use Diagnostics and Support Bundle for support. Check screenshots and exports for private information before sharing. The score provides environmental context; it is not an alarm or a guarantee of air safety. Always rely on certified alarms for safety warnings.

Clone this wiki locally