determineStatus reads operator ManifestWorks from the informer cache, but doReconcile writes them via WorkApplier directly to the API server.
This can cause a transient IsNotFound error when the cache hasn't received the watch event yet.
This results in a ReconcileError status condition and error log on the mesh, which resolves on the next reconcile once the cache catches up.
Reproducible in integration tests on every run:
Successfully reconciled MultiClusterMesh test-ns/mesh
Encountered an error while reconciling MultiClusterMesh test-ns/mesh: failed to get operator ManifestWork for cluster cluster-xxx: ManifestWork "multicluster-mesh-operator" not found
determineStatusreads operator ManifestWorks from the informer cache, butdoReconcilewrites them via WorkApplier directly to the API server.This can cause a transient
IsNotFounderror when the cache hasn't received the watch event yet.This results in a
ReconcileErrorstatus condition and error log on the mesh, which resolves on the next reconcile once the cache catches up.Reproducible in integration tests on every run: