- признаки «работы нет» и «задача не найдена» узнаются по смыслу, а не приведением типа: обёртка `%w` на пути больше не превращает пустой прогон воркера в отказ раз в секунду - отказ закрытия соединения с распознавателем доходит до вызывающего (`errors.Join`) либо до журнала; у `errcheck` включён `check-blank`, иначе критерий принимал реализацию, выбрасывающую отказ в пустоту - заведены первые тесты пакета worker и capability `pipeline`; долг из четырёх замечаний линтера закрыт, гейт зелёный целиком
26 lines
1.0 KiB
YAML
26 lines
1.0 KiB
YAML
version: "2"
|
|
|
|
linters:
|
|
default: standard
|
|
enable:
|
|
- errorlint
|
|
settings:
|
|
errcheck:
|
|
# Без этого `_ = x.Close()` снимает замечание, и критерий «отказ не
|
|
# теряется молча» принимается реализацией, которая его теряет. Отказ,
|
|
# который решено не проверять, теперь объявляют ниже поимённо — заметно.
|
|
check-blank: true
|
|
exclude-functions:
|
|
# Закрытие через defer и лучшая-попытка уборки файла — осознанно без проверки
|
|
- (io.Closer).Close
|
|
- (*database/sql.DB).Close
|
|
- (*os.File).Close
|
|
- (io.ReadCloser).Close
|
|
- os.Remove
|
|
# Метод сам логирует ошибку отправки, вызывающему она не нужна
|
|
- (*git.vakhrushev.me/av/transcriber/internal/controller/tg.TelegramController).send
|
|
|
|
formatters:
|
|
enable:
|
|
- gofmt
|