FluxCD
Workflow operations: Reconcile, Reconcile-with-source (Kustomization/HelmRelease), Suspend/Resume.
Diagnosis: Conditions extracted to issues (Ready=False, Stalled=True, Reconciling=True). Per-resource diff and recent events not yet available for Flux (HelmRelease-installed resources don’t carry
last-applied-configuration; tracked in #601).
ArgoCD
Workflow operations: Sync (with options dialog: prune, dry-run, apply-only, force, replace, server-side apply, sync-options), Refresh, Hard refresh, Terminate, Suspend/Resume auto-sync, Rollback to historical revision, Selective sync of marked resources.
Diagnosis:
- Per-resource field diff computed from each resource’s
kubectl.kubernetes.io/last-applied-configurationannotation vs live spec - works for any Argo client-side-applied resource without calling the Argo API - Recent events surfaced inline per managed resource (5 most recent, namespace-RBAC-filtered)
- Stuck-drift-loop detector - flags
sync=OutOfSync ∧ opPhase=Succeeded ∧ auto-sync on ∧ reconciledAt<30minwith the likely cause (mutating webhook, sibling controller, schema migration) - Manual-drift detector - calls out OutOfSync apps with auto-sync disabled
- Argo Application conditions extracted to issues (ComparisonError, OrphanedResourceWarning, etc.) with type-aware severity and per-condition action text
- Operation-failure parser recognizes 11 patterns: annotation-too-large, label-too-long, hook failure, admission webhook denial, RBAC, conflict, immutable field, schema migration, connectivity, etc.
- SSA-applied resources (
ServerSideApply=truesync-option) lack thelast-applied-configurationannotation, so the local diff described above is unavailable for those rows. Configuring the Argo CD API integration covers them: Radar then asks argocd-server for the Git-rendered desired state and diffs against that, which is canonical rather than annotation-derived. An annotation-free local fallback viametadata.managedFieldsis still tracked in #601. - Single-cluster only: Application↔resource edges only render when Radar is connected to the cluster where the managed resources live (not necessarily the cluster running the Argo controller).