Answer
Use ignoreDifferences to exclude controller-managed fields from diffs (preventing false OutOfSync), and custom health scripts to define health for CRDs. For fields set by admission/webhooks, ignoring them or using ServerSideApply avoids perpetual drift and health noise.
spec:
ignoreDifferences:
- group: apps
kind: Deployment
jsonPointers: [ /spec/replicas ]Real-world example Ignoring HPA-managed replicas stops the app flapping between Synced and OutOfSync every reconcile.