|
All checks were successful
CI / changes (push) Successful in 7s
CI / changes (pull_request) Successful in 6s
Deploy / changes (push) Successful in 6s
Deploy / build-frontend (push) Has been skipped
Deploy / build-worker (push) Successful in 2m47s
Deploy / deploy (push) Successful in 1m12s
CI / frontend-tests (push) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / backend-tests (push) Successful in 6m28s
CI / backend-tests (pull_request) Successful in 6m25s
Deploy / build-backend (push) Successful in 1m45s
`OVERLAPS` — это PostgreSQL keyword (binary operator для time-periods — `(start1,end1) OVERLAPS (start2,end2)`). Парсер ругается на `overlaps AS (...)` в WITH-блоке с ERROR: syntax error at or near "overlaps" → exception → транзакция в aborted state → весь analyze пайплайн ниже получает InFailedSqlTransaction (ird_overlays, persist, ird block) → фронт видит data_available=False, neighbors=[]. Воспроизводится на КАЖДОМ /analyze с момента мерджа PR #1195. Mock-БД в pytest tests/api/v1/ синтаксис не проверяет — отсюда регрессия прошла CI. Прямой psql-replay на проде: WITH neighbors AS (...), overlaps AS (...) → syntax error WITH neighbors AS (...), overlap_rows AS (...) → ok Минимальная переименование CTE alias (4 строки: 2 в SQL + 1 в SELECT column alias + 1 в Python `row["overlap_rows"]`). Семантика идентична PR #1195. Memory: future-proofing — добавить интеграционный тест с реальной PG для analyze hot-path (отдельный issue, не блокер этого hotfix). Refs #1196 |
||
|---|---|---|
| .. | ||
| api | ||
| core | ||
| models | ||
| observability | ||
| schemas | ||
| scrapers | ||
| services | ||
| templates | ||
| workers | ||
| __init__.py | ||
| main.py | ||