Skip to content

CI: один прогон на коммит PR вместо двух, отмена устаревших и срок теста 30 с вместо 5 - #227

Merged
4booser merged 1 commit into
mainfrom
ci-stability
Oct 25, 2026
Merged

4booser merged 1 commit into
mainfrom
ci-stability

Conversation

@4booser

@4booser 4booser commented Oct 25, 2026

Copy link
Copy Markdown
Owner

С 7 октября CI был красным в 27 прогонах. Ниже — от чего, и что меняет этот PR.

От чего краснело

Причина Прогонов Тесты Где чинится
Порог времени или счёта на раннере CI 8 dynamicsScale (4), отношение count(*) в rlsScale (4) dynamicsScale — #225, слит сегодня; rlsScale после волны 21 не падал
Тест перешёл 5 с — умолчание bun 5 (2 из них вместе с порогом) «сторож: владелец и роль приложения» (3), курсор направлений (1), «сотрудник под ролью приложения: аналитика, когорты, очередь» (1, сегодня в #226) здесь
Окно 23:00–00:00 по Киеву 4 срок в уведомлении, датировка офлайн-сдачи не пушить в main и не ставить теги в это окно
Тесты зависели от порядка или следов соседних 4 эталон аналитики методики (2), перешифровка ключом (1), витрина светлой темы (1) #222 и закрепление темы в эталонах
Настоящие ошибки — CI сработал правильно 8 типы (2), журнал миграций (2), словарь, приглашения, a11y, поток событий —

Что меняется

  • Один прогон на коммит PR вместо двух. Раньше push срабатывал на любой ветке, и каждый коммит в PR гонял всю сюиту дважды: событием push и событием pull_request. Ждать приходилось вдвое дольше. Ветка краснела, если случайный сбой поймал любой из двух прогонов. Теперь push проверяется только в main, а ветки PR — событием pull_request. Теги, как и раньше, проверяет выкатка: deploy.yml зовёт этот же ci.yml.
  • Отмена устаревшего прогона. Новый коммит в PR отменяет проверку предыдущего (concurrency). Пуш в main и вызов из выкатки не отменяются: у каждого прогона своя группа.
  • Срок теста 30 с вместо 5. Пять секунд — не обещание скорости, а умолчание bun. Под ролью приложения на раннере CI проходы по всей зоне его переходили, хотя в коде ошибки не было. Раньше такие тесты чинили по одному, ставя каждому свой срок в 30 с. Теперь этот срок общий: в CI и в скриптах test и test:app-role. Там, где скорость важна, её проверяют отдельные тесты с явными порогами (dynamicsScale, rlsScale), и этот PR их не трогает.

Проверки

  • ci.yml разбирается; новый concurrency с группой deploy у выкатки не пересекается.
  • Сам этот PR — первый прогон по новым правилам: на его коммит должен прийти один прогон, событием pull_request.

…и срок теста 30 с вместо 5

- push проверяется только в main; ветки PR — событием pull_request. Прежде каждый коммит в PR гонял всю сюиту дважды, и красной ветка была, если сбой поймал любой из двух прогонов.
- Новый коммит в PR отменяет проверку прошлого (concurrency); пуш в main и вызов из выкатки не отменяются.
- bun test --timeout 30000 в CI и в скриптах test, test:app-role: пять из 27 красных прогонов с 7 октября — тесты, перешедшие 5 с по умолчанию на проходах по всей зоне под ролью приложения, без ошибки в коде.
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-25T14:27:41.327584Z f6b170a PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant