{{/* triage legend — Acknowledge vs Resolve looks identical on screen
(both leave the Open tab) so the difference needs spelling out. */}}
Acknowledge silences fan-out while the underlying problem is still happening — the alert moves to the Acknowledged tab.
Resolve closes the alert; the next failure raises a fresh one with a new notification.
{{/* severity dropdown — option text tinted to match the colour
already used in the row (dot, left border, kind chip). The
severity word is otherwise invisible to operators because the
table column shows kind only; the colour bridges the two. */}}
{{/* host dropdown */}}
{{/* search input */}}
{{/* alerts table — polled every 5s when the tab is visible AND the
live toggle is on. The localStorage check is part of the htmx
trigger predicate, so flipping the toggle just sets the flag and
the next tick (or the absence of one) honours it. No need to
re-process the element when the toggle changes.
The polling lives on this div (not the page root) so the filter
strip and header don't flash on each tick. */}}
{{/* header row */}}
Kind
Host
Message
Raised
Last seen
{{if eq (len $page.Alerts) 0}}
{{/* empty state */}}