Какой реальный баг может возникнуть из-за неправильного понимания errors.As?
Что хотят услышать интервьюеры:
Суть:
Ответ:
errors.As извлекает ошибку конкретного типа из цепочки wrapping.
Пример:
var e *QueryError; if errors.As(err, &e) { ... } Практический акцент: Проверяйте не только happy path: добавьте негативные сценарии, timeout/cancel, граничные значения и регрессионный тест на типичную ошибку.
Типичная ошибка: терять тип ошибки при fmt.Errorf без
%w .
Как отвечать на собеседовании: Хороший ответ показывает, что Go строится вокруг явных ошибок, простых функций и предсказуемого control flow.