Избавиться от рекурсии - на любых ошибках возвращать контекст как можно выше по стэку. В идеале - прям в main. Хэндлить ошибки оттуда. Сейчас у меня в случае ошибки копится рекусия реконнектов и потом бот хочет много раз подцепиться к комнатам и оповестить их о своём состоянии.