ну вот это как раз плохой вариант. ошибка, которая не ошибка.
если может быть “не нашлось”, а может и ошибка - надо (user, bool, error)
возвращать
Почему это плохой вариант?
Если рассмотреть вариант с nil, nil, то код который вызывает этот метод может словить nil pointer панику если не будет этого ожидать, а ошибка явно покажет, что ничего найдено не было