Так с 1.13 (а в принципе и раньше) вполне нормально делать ошибки частью api
ну вот пример:
есть два пакета findDir1 и findDir2
в обоих пакетах реализована функция / метод с сигнатурой Find(string) (string, error)
я хотел бы у себя в коде описать этот интерфейс и иметь возможность прозрачно заменять одну библиотеку на другую, но вот проблема, каждая библиотека возвращает свою ошибку ErrNotFound
вопрос - что мне делать? ведь выбрав один тип ошибок я намертво привязываюсь к конкретной реализации