docs: правила о контексте и о токене записаны, две находки — в журнал
- в go-linters.md заведён раздел «Отмена и внешний собеседник», перечень механизированного пополнен девятью правилами и двумя шагами гейта, названы остатки: contextcheck не видит сигнатуру без контекста вовсе, шаг migrations судит только шаги, бывшие в базе диффа, rowserrcheck и sqlclosecheck профилактические — предмета в коде нет - в logging.md и security.md чистка отказа Telegram описана по факту: точка одна и лежит на границе клиента, закрыты все пять путей вместе с логгером самой библиотеки. Прежнее «*Расхождение:* вычистки нет... она не логируется» было неверным дважды - в журнал дефектов записаны две находки: отказ скачивания уносил токен бота (проскочил, жил с самого начала) и остановка сервиса хоронила конвертируемую запись в failed (поймано ревью до коммита) - вопрос темы operations про отмену переформулирован: спрашивать надо не «доходит ли контекст», а «что шаг делает с задачей, деньгами и ответом отправителю»; вопрос про таймаут оставлен с оговоркой, что проброс контекста на него не отвечает - в памятке: словарь кодов новых шагов, требование компилятора C у детектора гонок и оговорка, что «CGO не нужен» относится к сборке, а не к гейту
This commit is contained in:
+10
-2
@@ -267,8 +267,16 @@ Telegram отправителю.
|
||||
приходит путь, выданный самим Telegram. Настоящее имя документа дальше проверки
|
||||
типа файла не идёт.
|
||||
|
||||
Токен бота попадает в URL скачивания файла (`file.Link(token)`), и этот URL
|
||||
нигде не логируется.
|
||||
Токен бота стоит в пути **каждого** обращения к Bot API (`bot<TOKEN>/getFile`,
|
||||
`…/sendMessage`, `…/getMe`, `…/getUpdates`) и в ссылке на скачивание
|
||||
(`file.Link(token)`). Сами адреса нигде не логируются, но до 2026-08-13 их
|
||||
уносил **отказ транспорта**: `*url.Error` встраивает адрес целиком, а отказы
|
||||
скачивания и отправки пишутся в журнал. Теперь адрес снимается на границе
|
||||
клиента — `internal/adapter/telegram`, `NewBot`: свой `Do` чистит отказ, а
|
||||
подменённый логгер библиотеки вычищает токен из строк длинного опроса, которые
|
||||
она печатает сама. Транспорт бота токена больше не получает вовсе: клиента ему
|
||||
отдают готовым. Правило — [conventions/logging.md](conventions/logging.md),
|
||||
случай — [review.md](review.md), оракул — `internal/adapter/telegram/bot_test.go`.
|
||||
|
||||
## Что вне модели
|
||||
|
||||
|
||||
Reference in New Issue
Block a user