You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The receiver `*Provider` is nil at the call site (`0x0`). The lazy recorder calls `ensureRecording` and dereferences a nil broadcaster provider.
The panic is recovered by controller-runtime so reconciliation eventually succeeds on retry, but logs are noisy and the reconcile gets requeued unnecessarily.
Bug
When init-agent reconciles a LogicalCluster in the per-WorkspaceType init controller, it can panic with:
```
panic: runtime error: invalid memory address or nil pointer dereference
```
Stack trace points to `multicluster-provider/pkg/events/recorder.getBroadcaster`:
```
github.com/kcp-dev/multicluster-provider/pkg/events/recorder.(*Provider).getBroadcaster(0x0, 0xc00072a488, ...)
forked_recorder.go:105
github.com/kcp-dev/multicluster-provider/pkg/events/recorder.(*lazyRecorder).ensureRecording.func1()
forked_recorder.go:179
sync.(*Once).doSlow ...
github.com/kcp-dev/multicluster-provider/pkg/events/recorder.(*lazyRecorder).Eventf(0xc0005320a0, ...)
forked_recorder.go:196
github.com/kcp-dev/init-agent/internal/controller/initcontroller.(*Reconciler).Reconcile
reconciler.go:78
```
The receiver `*Provider` is nil at the call site (`0x0`). The lazy recorder calls `ensureRecording` and dereferences a nil broadcaster provider.
The panic is recovered by controller-runtime so reconciliation eventually succeeds on retry, but logs are noisy and the reconcile gets requeued unnecessarily.
Environment
Steps to reproduce
Suggested fix
Either: