|
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 |
||
|---|---|---|
| .. | ||
| alembic | ||
| app | ||
| db/init | ||
| output | ||
| scripts | ||
| tests | ||
| .dockerignore | ||
| .env.example | ||
| .env.runtime.example | ||
| alembic.ini | ||
| debug.log | ||
| Dockerfile | ||
| pyproject.toml | ||
| uv.lock | ||