Idempotency as a Standard Change


The closed-loop architecture from the previous post requires idempotent automation in the remediation path. I have seen that term treated as a design principle settled during architecture review, when the implementation still has to earn it. In a change management process, idempotency is what a playbook has to prove to qualify as a standard change and run without a human approving it first.

Standard change classification is the mechanism that allows automated remediation to scale. If every config drift finding requires a CAB ticket, the loop does not close in any useful timeframe. The point of the detection and remediation machinery is to remove that bottleneck for changes that have earned automatic approval. Idempotency is what earns it, and it has to be demonstrated, not assumed.

A playbook that qualifies proves three things. The pre-check verifies current state before acting: if the target already matches the baseline, the playbook exits without making a change. That is what makes it safe to run automatically at scale, because a playbook that makes no unnecessary changes cannot introduce drift while remediating it. The post-check verifies state after the change completes. Without it, you know a change was attempted, not whether it succeeded. The rollback demonstrates that the playbook can return to the prior state if the post-check fails. A human does not need to stand by because the playbook will self-correct. All three have to be present. Pre-check and post-check without rollback means you can detect a failed remediation but cannot recover from one.

Some change types cannot meet this bar, and the reason is structural. A firmware update cannot be reliably rolled back once applied. If the management controller goes offline mid-update, recovery requires hands-on work, not a playbook. A database schema migration is not idempotent if other processes have already written to the new schema by the time rollback is invoked. Any change that modifies shared state outside the playbook’s control, or depends on an external operation that cannot be undone, belongs in a different approval track. Reclassifying those as standard changes does not change the failure mode. It removes the reviewer who would have caught it.