You describe the end state, not the steps. That idea underlies replicas, updates, and rollback: the cluster keeps working to match your description.
The count sequences describe the article’s local arithmetic model. Real controllers have separate responsibilities and asynchronous failure modes. Historical model passes are unchanged; no example was rerun. Spec beats imperative steps A Deployment is a statement of the end state, not a list of steps: how many replicas, which image, what update strategy, which labels. The operator publishes the what, and the controller, a reconcile loop, is responsible for the how. The distinction is resource ownership, not whether a shell command was used. kubectl run normally creates a standalone Pod; its kubelet can restart containers, but no ReplicaSet maintains a replacement population after that Pod disappears. A Deployment can itself be created with a command, yet its stored specification continues guiding controllers after the client exits. Interrupting the client does not reliably indicate whether the API accepted the request: inspect the stored object before retrying or diagnosing convergence.
...