From 920238af26ca37c83c2b05b858696212553f7a89 Mon Sep 17 00:00:00 2001 From: bot-backend Date: Wed, 12 Aug 2026 21:32:23 +0500 Subject: [PATCH] =?UTF-8?q?fix(tradein/ci):=20=D0=BE=D0=B1=D1=8A=D1=8F?= =?UTF-8?q?=D0=B2=D0=B8=D1=82=D1=8C=20=D0=BF=D1=80=D0=BE=D0=BF=D1=83=D1=81?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=B6=D0=B8=D0=B2=D1=8B=D1=85=20=D1=82=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=BE=D0=B2=20=D0=BF=D0=BE=D0=B2=D1=82=D0=BE=D1=80?= =?UTF-8?q?=D0=B0=20IMV=20=E2=80=94=20=D0=B4=D0=B5=D0=BF=D0=BB=D0=BE=D0=B9?= =?UTF-8?q?-=D0=BB=D1=8D=D0=B9=D0=BD=20=D0=B1=D0=B5=D0=B7=20=D0=91=D0=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR #2843 добавил три теста против живой Postgres. В pre-merge гейте (ci-tradein.yml) БД есть, и они бегут по-настоящему; в post-merge деплой-лэйне (deploy-tradein.yml) DSN — заглушка, тесты самоскипаются, а хук conftest роняет прогон на любом пропуске без записи в skip_allowlist.txt. Итог: пост-мерж test упал (4295 passed, 20 skipped → exit 1), build-backend пропущен, деплой не состоялся. Запись — ровно то, чего требует контракт списка. Проверено воспроизведением лэйна локально (DSN-заглушка, полный сьют): 4292 passed, 21 skipped, exit 0. Refs #2674 --- tradein-mvp/backend/tests/skip_allowlist.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tradein-mvp/backend/tests/skip_allowlist.txt b/tradein-mvp/backend/tests/skip_allowlist.txt index 30011d7b..fe555229 100644 --- a/tradein-mvp/backend/tests/skip_allowlist.txt +++ b/tradein-mvp/backend/tests/skip_allowlist.txt @@ -59,3 +59,13 @@ tests/test_purge_expired_trade_in_data.py::test_real_purge_not_wedged_by_healthy # дефолт mark_banned ('unknown') проходит CHECK-констрейнт из миграции 234: # на мок-лэйне (deploy-tradein.yml, DSN-заглушка) констрейнта нет вовсе. tests/test_2764_ban_kind_no_default.py::test_real_default_ban_kind_survives_the_check_constraint + +# Повтор застрявших transient_error (#2674, PR #2843) — тот же `_live_session()`. +# Проверяют ВЫБОРКУ очереди на живой схеме (кто попал в пакет прогона), а не текст +# SQL: на мок-лэйне deploy-tradein.yml БД нет вовсе. В ci-tradein.yml они бегут +# по-настоящему (Postgres + схема из data/sql) — там прогон и был красным на +# origin/main и зелёным на ветке. Статическая половина файла +# (test_retry_queue_is_not_bound_to_only_status) БД не требует и идёт в обоих лэйнах. +tests/test_house_imv_retry_stuck.py::test_explicit_only_status_still_takes_exhausted_houses +tests/test_house_imv_retry_stuck.py::test_stuck_transient_house_returns_to_the_queue_by_itself +tests/test_house_imv_retry_stuck.py::test_transient_attempts_counter_only_counts_transient -- 2.45.3