mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-24 12:13:28 +00:00
6b78feba8a
Follow-up audit after the vSphere Backup fix, sweeping every platform page and tab for columns that say the same thing on every row. Avail (both Proxmox and vSphere, default-visible): the cell renders nothing at all until an availability check is linked to that workload. Availability checks are opt-in per resource, so any install without one showed an empty column under an "Avail" header on every row. Gate it on live data via a new `hasAvailabilityData` accessor rather than on a stored preference: writing a hidden preference would overwrite the user's own choice the first time a probe appeared. The column now returns by itself when data arrives, and the accessor reads the unfiltered guest set so narrowing the table by search or status never makes it vanish. Tags (vSphere, default-visible): every VM rendered six dots carrying the identical tag set, because `internal/vmware/provider.go` fills `Resource.Tags` with fixed provenance strings (`vmware`, `vsphere`, `vm`, `source:vcenter`, `connection:<name>`, `power:<state>`) rather than reading vCenter's tag API. Five are constant across an estate and the sixth restates the power state the status filter already owns, so filtering on any of them selects everything. Default-hide it on the vSphere scope, with the same one-time migration used for `backup` so existing preferences are retired too. Proxmox keeps the column since its tags are genuine per-guest labels. The Tags hide is a stopgap, not the canonical fix. vCenter does expose a real tag/category system; the adapter simply does not read it. The tags stay in the payload because search and facet counts consume them, and the hide should be removed once the adapter ingests real vCenter tags. Also checked and left alone: AI Context on vSphere reports the backend's own `unsupported` discovery state as "N/A", which is honest and already default-hidden. Docker, Kubernetes, TrueNAS, Machines and every Proxmox and vSphere sub-tab had no single-value columns. Contract-Neutral: Contract delta staged in performance-and-scalability.md Extension Point 17 (vSphere tags stopgap + the hasAvailabilityData gate). Residual demand is a Workloads hot-path perf proof; inapplicable because this only changes which columns are offered at render time and adds no per-row or per-frame work, so no hot-path proof file legitimately changes.