mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-10 10:35:51 +00:00
2e064e6c6c
When a capacity finding has a registered template in the forecast registry, generateRemediationPlan attaches the deterministic proposal to the existing aicontracts.RemediationPlan via a new optional ProposedActionPlan field. Reuses the existing remediation engine plumbing - no parallel approval surface. The wire-in best-effort extracts current value from the finding title and ships canonical thresholds for storage / guest disk so the capacity-forecast approval card has enough context to render without depending on the forecast service being configured. ProposedActionPlan / ProposedActionPreflight / ProposedMetricSummary are wire-side projections defined in pkg/aicontracts so the contract package stays free of an internal/ dependency.