I noticed that these methods don't have a pointer receiver, and a `sync.RWMutex` has been introduced to `gRPCServer`. I _think_ this means that it passes the lock by value? If so, I wonder if this is properly protecting the critical section (`instances` access, I think).     I created this little example which has a similar setup that eventually gets a concurrent map write failure: https://go.dev/play/p/Tp84A66iWLo. I might be wrong here, but it's worth looking into.