mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-10 18:45:53 +00:00
d45715d083
Capacity forecasts (days-to-full, current usage, trend) were previously computed deterministically but only fed into LLM prompt text. They never reached the finding as structured data, so the frontend could not render a verified urgency signal and the model's speculation was the only thing the operator saw. This persists CapacityForecast on Finding (marshal-mirror pair) and stamps it post-analysis via a service join (StampCapacityForecasts). The forecast filter now also keeps stable-high (>=80%) pools so the deterministic "no fill trend" reading wins over model speculation, and fixes isQuiet wrongly treating stable (-1) trends as filling. Frontend maps the forecast through the UnifiedFinding view model and renders a deterministic urgency line (Filling up / Stable / days-to-full · % used) in the expanded finding detail. Note: forecasts only populate for resources whose usage is ingested into metrics history (Proxmox/Ceph storage, nodes, guests). Agent-host storage (unraid pools) is not yet ingested as a time-series and remains a follow-up to activate the feature for those pools. Refs lane: protection-posture-attention-queue