The reconciliation loop is the engine of everything.
Observe, compare, act, repeat forever. Every controller in Kubernetes is a variation on this loop.
Imperative
"Run these steps in this order." If step 3 fails, or the start state differs, the result is unpredictable.
Declarative
"This is the end state." Apply it a thousand times: same result, any starting point.
Process-control analogy
A plant's PID loop does not "open the valve once". It measures the process variable, compares it with the setpoint and adjusts continuously. Kubernetes controllers are control loops where the setpoint is your YAML.
Self-healing is not a feature: it is what a control loop does when a pod disappears.