Repository navigation
Avoid Issues warnings for Crossplane's pause annotation - #2306
Conversation
PR Summary by QodoSuppress intentional Crossplane pause warnings without hiding failures
AI Description
Diagram
High-Level Assessment
Files changed (3)
|
Code Review by Qodo
1. Some stale conditions appear current
|
|
Code review by qodo was updated up to the latest commit 7dce015 |
7dce015 to
6ed9b98
Compare
|
/review |
|
Code review by qodo was updated up to the latest commit 5975b13 |
5975b13 to
87197c4
Compare
Bugbot needs on-demand usage enabledBugbot uses usage-based billing for this team and requires on-demand usage to be enabled. A team admin can enable on-demand usage in the Cursor dashboard. |
87197c4 to
749b2e9
Compare
Radar adds a reconciliation warning when a Crossplane resource reports
Synced=False, ReconcilePaused, even when the operator deliberately paused it withcrossplane.io/paused: "true".Keep that one condition quiet only when the annotation is exactly
"true". Continue evaluating other condition types, so a separateReady=False, Unavailableremains eligible under the usual condition and generation filters. A realSynced=False, ReconcileErrorstill warns despite the annotation. Matching the annotation also covers Crossplane resources with user-defined API groups.Uses the shared condition-by-condition selector. This PR contains only the pause predicate, focused regression scenarios and integration documentation. Pausing through empty
managementPoliciesremains a separate scenario. Existing whole-object generation/suspend filters are unchanged. This is an Issues-detection fix: the existing frontend badge can still label the paused stateOut of sync, which needs a focused frontend follow-up.Validation: focused pause regressions, the full
internal/issuessuite andmake buildpassed on87197c47bee934f1bf58e8a3f9930bb8a96e6c17. The EKS matrix below used identical detector source. An actual EKS API/informer/HTTP matrix covered 17 synthetic status scenarios à flat/grouped views à three reads, including a stale-generation pause, independent failures, authority, unknown onset and the existing generation gate. Resume/error/recovery/reblock checks converged in one poll each, and unchanged error controls retained their IDs and observation metadata. The real Issues page loaded without page errors, showed independent failures and omitted the pause-only row. Owned test fixtures and local servers were removed afterward.Visual feature screenshots are skipped because rendering is unchanged. The EKS fixtures prove Radar's real storage/cache/API behavior; no Crossplane-controller or cloud failure was induced. Required CI is green on the final head.