это вопрос ни разу не style guide, это вопрос семантики
если бы ошибка была глобальная (модуля, или приложения в целом), то или MonadError, или конкретный тип для этого модуля
раз это ошибка чисто для функции, то Either, потому что это не эксешпен, а просто один из результатов вызова функции, и при этом только этой функции