chore(ui,agent): harden collector parsing, drop dead CSS, resilver label

Addresses final code review:
- to_int/1 now returns 0 on nil or unparseable strings instead of crashing
- remove unused .pool-row CSS (superseded by .pool-block)
- clamp capacity bar width to [0, 100] to prevent visual overflow
- pool_scrub_line/1 uses scan_function so resilver shows as "resilver..."
This commit is contained in:
Carsten 2026-04-22 18:06:17 +02:00
parent dd992573a1
commit 28a40a2650
5 changed files with 67 additions and 21 deletions

View file

@ -176,7 +176,15 @@ defmodule ProxmoxAgent.Collectors.Zfs do
end
defp to_int(v) when is_integer(v), do: v
defp to_int(v) when is_binary(v), do: String.to_integer(v)
defp to_int(v) when is_binary(v) do
case Integer.parse(v) do
{n, _} -> n
:error -> 0
end
end
defp to_int(_), do: 0
defp max_or_nil([]), do: nil
defp max_or_nil(list), do: Enum.max(list)