Ну и вопрос по архитектуре.
Это нормально делать так?
В генсервере я добавляю таск.супервизор. И в хендлах отдаю пайлоад в функцию запускаемую таском.
Ну чтоб некорректный пайлоад не крашил весь генсервер
Использовать таск внутри генсервера странно. А чтобы некорректные данные не крашили генсервер, нужно обрабатывать ошибки, использовать функции без ! , которые возвращают тупл, а не райзят, и при матчинге не использовать = там где данные могут не совпадать, а использовать например with.