я не сильно понимаю, почему это может быть здравая идея. Result<> традиционно используется, чтобы заэнкодить два разных состояния, каждое из которых может быть детализировано (DU для успешных операций, DU для неуспешных) и явно зафорсить два разных обработчика для обеих видов возврата. если кому-то нужно только значение из Result - зачем заворачивать возврат в Result?
Тут идея в том, что у тебя может быть дефолтное значение для типа результата.
И ты хочешь, если пришел результат, то получить его, а если пришла ошибка, то залоггировать её и взять дефолтный результат.