Answer
Run-to-completion resources like Jobs are ideal because ArgoCD tracks their success/failure to gate the sync. Pods can work for simple tasks, but Jobs give retries, completions, and clean semantics for migrations, tests, and one-off tasks.
Real-world example Migrations and smoke tests are Jobs so ArgoCD can wait for completion and detect failure.