feat(infra): commit live infra-audit/cluster work to reconcile git with prod

This work (network_hosts inventory + infra_audit MCP tool, /api/cluster +
Sacred Valley cluster card, topbar cluster-health pill + SW self-heal) was
built in an earlier session and DEPLOYED to CT 311 as alpha.24–26, but was
never committed to git — prod was running code absent from the repo. Commits
it as-is (already prod-validated) so git matches the live state, and restores
its alpha.24/25/26 CHANGELOG entries. Files are disjoint from the fold-in
work; both now ship together under alpha.27.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
root
2026-06-08 15:20:38 +10:00
parent ae2ea09f0c
commit b0b23ba05d
19 changed files with 606 additions and 4 deletions

View File

@@ -448,6 +448,25 @@ ul.plain li:last-child { border-bottom: none; }
.tile.status-warn .dot { background: var(--warn); box-shadow: 0 0 7px var(--warn); }
.tile.status-down .dot { background: var(--bad); box-shadow: 0 0 7px var(--bad); }
.tile.status-unknown .dot { background: var(--muted); }
/* cluster-health card — reuse the tile status palette */
.sv-cluster .dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 6px; vertical-align: middle; background: var(--muted); }
.sv-cluster .status-ok .dot { background: var(--ok); box-shadow: 0 0 7px var(--ok); }
.sv-cluster .status-down .dot { background: var(--bad); box-shadow: 0 0 7px var(--bad); }
.sv-cluster .warn { color: var(--warn); }
.sv-cluster .cl-badge { font-family: var(--font-mono); font-size: 11px; font-weight: 700; letter-spacing: .06em; padding: 1px 7px; border-radius: 4px; }
.sv-cluster .cl-badge.ok { color: var(--ok); border: 1px solid var(--accent-soft); }
.sv-cluster .cl-badge.bad { color: var(--bad); border: 1px solid var(--bad); background: var(--accent-soft); }
/* topbar cluster-health pill */
.cluster-health { display: inline-flex; align-items: center; gap: 6px; }
.cluster-health .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--muted); flex: none; }
.cluster-health .ch-label { font-size: 12px; letter-spacing: .04em; text-transform: lowercase; }
.cluster-health.status-ok .dot { background: var(--ok); box-shadow: 0 0 7px var(--ok); }
.cluster-health.status-ok .ch-label { color: var(--ok); }
.cluster-health.status-warn .dot { background: var(--warn); box-shadow: 0 0 7px var(--warn); }
.cluster-health.status-warn .ch-label { color: var(--warn); }
.cluster-health.status-down { border-color: var(--bad); }
.cluster-health.status-down .dot { background: var(--bad); box-shadow: 0 0 7px var(--bad); }
.cluster-health.status-down .ch-label { color: var(--bad); }
.tile-go { color: var(--lb); font-size: 12px; opacity: 0; transition: opacity .25s; }
.tile:hover .tile-go { opacity: 1; }
/* Tile root is a div hosting a stretched primary link + a small alt control. */