Skip to content

fix: preserve GVK reconciliation identity#93

Merged
cstanislawski merged 1 commit into
mainfrom
fix/gvk-reconciliation-identity
Jul 14, 2026
Merged

fix: preserve GVK reconciliation identity#93
cstanislawski merged 1 commit into
mainfrom
fix/gvk-reconciliation-identity

Conversation

@cstanislawski

Copy link
Copy Markdown
Owner

No description provided.

@cstanislawski

Copy link
Copy Markdown
Owner Author

Kubernetes object identity includes its resource type, namespace, and name.

Previously, watch events queued only namespace/name, so different kinds sharing that name collapsed into the same request. Reconciliation then scanned known GVKs and used the first matching object, permanently shadowing the others.

This change adds GVK to the queue identity: GVK + namespace + name. Reconciliation now fetches exactly the resource that triggered the event, with no cross-GVK scan.

The fix is general, not specific to Deployments or ConfigMaps. Regression tests cover both namespaced collisions (Deployment/ConfigMap) and cluster-scoped collisions (Namespace/PersistentVolume).

@cstanislawski cstanislawski self-assigned this Jul 14, 2026
@cstanislawski
cstanislawski marked this pull request as ready for review July 14, 2026 20:47
@cstanislawski
cstanislawski merged commit 20e21ed into main Jul 14, 2026
3 checks passed
@cstanislawski
cstanislawski deleted the fix/gvk-reconciliation-identity branch July 14, 2026 20:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant