Theory
Theory: Reconciliation is Compare Desired to Actual, Forever
Argo CD’s Application is a pointer at Git (desired) plus a cluster (actual). The controller loop diffs and optionally syncs. Immutable infrastructure: replace, do not SSH-mutate.
Invariants
- Five-step loop: detect, compare, present, sync (if policy), record.
- Repo server renders manifests (Helm/Kustomize/plain) in a sandbox.
- Sync status and health are different questions.
Git → repo-server → desired manifests
cluster API → actual
controller: diff + sync policy
What can break
- Editing live resources that auto-sync will revert.
How to read this chapter
History, reconciliation, loop, components, apps/projects, path to cluster, desired vs actual.