Гейт роняет проверку, судящую ответ по живой карте заголовков
- forbidigo с analyze-types запрещает в файлах проверок обращение к httptest.ResponseRecorder.Header и .HeaderMap: правило судит по типу приёмника, поэтому ловит и цепочку, и переменную, и индекс, и обход - класс стоил трёх зелёных гейтов при неработающем коде; правило записано строкой в перечне механизированного, прозой не дублируется - поправлены два утверждения «механизировано: ничего», разошедшиеся с включённым линтером и со сверкой шага схемы
This commit is contained in:
+10
-2
@@ -281,8 +281,16 @@ API и имя не откатываются обратной правкой по
|
||||
- **Что меняем:** уборка перенесена до записи ответа; все проверки этого файла
|
||||
судят по `Result()`. Класс всплывает **третий раз** (2026-08-10 «тесты
|
||||
http-обработчика ни разу не были зелёными», 2026-08-11 «проверка приёма не
|
||||
могла упасть»), поэтому он же уходит кандидатом в конвенции: проверка ответа
|
||||
судит по готовому ответу, а не по изменяемому состоянию обработчика
|
||||
могла упасть»), поэтому он же ушёл в конвенции правилом: проверка ответа
|
||||
судит по готовому ответу, а не по изменяемому состоянию обработчика.
|
||||
Механизировано 2026-08-12 задачей `response-assertions-judge-result` —
|
||||
`forbidigo` в `.golangci.yml` роняет гейт на чтении живой карты заголовков в
|
||||
файле проверок. Правило судит по **типу приёмника**, а не по тексту вызова, и
|
||||
потому ловит любую форму чтения живой карты — цепочкой, через переменную, по
|
||||
индексу, обходом, полем `HeaderMap`. Текстовый запрет ловил только прямую
|
||||
цепочку и обходился одной лишней строкой — это назвал прогон ревью этой же
|
||||
задачи. Проходу ревью остаётся проверка, идущая мимо recorder, через свой
|
||||
`http.ResponseWriter`
|
||||
|
||||
## 2026-08-12 — каждый анонимный запрос навсегда замедлял запись в хранилище [пойман ревью]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user