test(ptica): объявить пропуск нового EXPLAIN-теста в skip_allowlist
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI / changes (pull_request) Successful in 10s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Successful in 2m30s
CI / backend-tests (pull_request) Successful in 16m41s

Причина четырёх красных прогонов backend-tests найдена, и это не инфраструктура:
сторож в tests/conftest.py (pytest_sessionfinish) роняет прогон, если тест
пропустился, но не объявлен в skip_allowlist.txt. Мои два новых
параметризованных EXPLAIN-теста скипаются без TEST_DATABASE_URL и в списке
не значились → session.exitstatus = 1 при зелёной сводке «4647 passed».

Сторож сработал ПРАВИЛЬНО и ровно за тем, зачем написан: пропуск без записи
неотличим от пройденной проверки. Его сообщение всё это время лежало в логе
на 1014-й строке, за две секунды до сводки, — я его не увидел, потому что
искал по английским «FAILED/ERROR» и смотрел хвост лога.

Почему проверку нельзя выполнить здесь (как требует шапка файла): EXPLAIN идёт
против КОПИИ ПРОДОВОЙ схемы через SSH-туннель, CI намеренно не задаёт
TEST_DATABASE_URL (комментарий в ci.yml у backend-tests). Где выполняется
вместо этого: вручную с туннелем — прогнан в этой ветке, 4 passed, и со
строкой из main падает 1 из 3.

Плюс backend/.gitignore: coverage.xml. Локальный прогон с --cov-report=xml
кладёт 1.2 МБ рядом с кодом; в этом заходе файл чуть не уехал в коммит и был
пойман только хуком check-added-large-files.

Refs #2464, #2871
This commit is contained in:
bot-backend 2026-08-13 22:28:15 +05:00
parent 8aacd1385e
commit c9c7aab228
2 changed files with 3 additions and 0 deletions

2
backend/.gitignore vendored
View file

@ -1 +1,3 @@
.coverage
# Артефакт локального прогона с --cov-report=xml (1.2 МБ) — чуть не уехал в коммит.
coverage.xml

View file

@ -34,6 +34,7 @@ tests/test_layout_tz_pdf.py
# (`ssh -N gendesign` → localhost:15432), см. tests/integration/conftest.py.
# ЗАПУСКАТЬ ВРУЧНУЮ после правок SQL-запросов в app/services/**.
tests/integration/test_analyze_parcels_sql.py::TestIrdOverlapSql::test_explain_ird_overlap
tests/integration/test_analyze_parcels_sql.py::TestVelocityCompetitorsSql::test_explain_competitors
tests/integration/test_analyze_parcels_sql.py::TestNeighborsSummarySql::test_explain_neighbors_summary
tests/integration/test_phantom_columns.py::TestCadGeoTables::test_parcel_centroid_query
tests/integration/test_phantom_columns.py::TestDomrfKnFlats::test_avg_price_query