по-другому нормально не сделать. если API держать, то он будет держать референсы на старые функции, которые держат референсы на старые модули (через замыкания)
да все нормально это делается , внутри прокси функций без проблем атомарно меняются ссылки со старых на новые, при этом "в моменте" когда роль не доустпна эти прокси функции выдают служебную ошибку для rpc модуля который понимает что нужно сделать ретрай в связи с обновлением роли ... вот как это должно быть