Skip to main content

Remediation

Detecting what's wrong is half the job. Remediation is the operation that turns findings into fixes — with a human always in the loop.

Today remediation runs on upgrade analysis: when AI remediation is enabled on an UpgradeAnalysis, the operator proposes fixes for the problems it found and records them in a cluster-scoped RemediationPlan. Nothing runs until you approve it.

This static illustration provides a quick visual summary of the same flow:

A static view of the human approval boundary in remediation execution.

The flow​

  1. An analysis runs with spec.ai.remediation.enabled: true.
  2. The AI proposes actions; the operator creates a RemediationPlan in pending-approval.
  3. You review the actions and set spec.approved: true.
  4. The operator executes each non-skipped action and records the result.

Mirops proposes, you decide, the operator executes. With autoApprove off (the default), nothing touches the cluster until you say so.

Action types​

Remediation is deliberately pod- and node-level — small, reversible operations:

ActionWhat it doesTypical risk
restart-podDeletes the pod so its controller recreates it.low
delete-podForce-deletes a stuck pod (grace period 0).low–medium
scale-deploymentSets a Deployment's replica count.medium
cordon-nodeMarks a node unschedulable (drain prep).high

Each action carries a reason (why the AI proposed it), a risk, and a skip flag.

Two independent gates​

GateControls
maxRiskLevelWhich actions are proposed. Actions above the ceiling (low / medium / high) are dropped from the plan.
approvedWhether the plan runs. Default false.

You can approve a plan but skip individual actions to run only some of them.

Scope today​

Remediation covers workload instability and drain preparation. It does not upgrade add-ons, edit PodDisruptionBudgets, or restore volumes — those structural fixes stay in your hands (the analysis tells you exactly what to change). See the remediation guide to run one end to end.