docs: мерж доков тоже деплоит — и 409 на пересменке это норма - #8
Conversation
Мерж PR #7 (только доки) передеплоил бота: у deploy.yml нет paths-фильтра. На пересменке ревизий старая дренируется, пока новая уже поллит — в логах 20-40с TelegramConflictError, затем Connection established. Записываю, потому что это ложный след ровно в ту сторону, куда мы уже смотрим: инвариант №10 гласит "один токен = один поллер", и 409 после мерджа читается как его нарушение. Отличать по времени: конфликты внутри минуты от createdTime живой ревизии = пересменка, дольше нескольких минут = реально второй поллер. Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 00ad0e371e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ⚠️ **`paths`-фильтра у `deploy.yml` нет: любой мерж в main передеплоит бота — даже правка | ||
| только этого файла.** На пересменке ревизий старая дренируется, пока новая уже поллит → 20–40 с |
There was a problem hiding this comment.
Correct the claim that documentation merges deploy
The inspected .github/workflows/deploy.yml explicitly configures paths: ["bot/**", ".github/workflows/deploy.yml"] for pushes to main, so a merge that changes only CLAUDE.md will not start this deployment workflow. This runbook statement—and the related advice to interpret a post-doc-merge 409 as a routine revision handoff—is therefore misleading unless the workflow filter is removed.
Useful? React with 👍 / 👎.
Что
Мерж PR #7 (правки только в доках) передеплоил прод-бота — у
deploy.ymlнетpaths-фильтра.Зачем записывать
409 сразу после мерджа читается как нарушение инварианта №10 («один токен = один поллер») — а это просто пересменка ревизий: старая дренируется, пока новая уже поллит. Живой факт с этого мерджа:
Без этой заметки следующий человек (или я) пойдёт искать второго поллера там, где его нет.
Как отличать
Конфликты внутри минуты от
createdTimeживой ревизии = пересменка. Дольше нескольких минут = реально второй поллер (например, поднятый локальный compose).Доки-онли. Мерж этого PR, разумеется, тоже передеплоит бота 🙂