|
All checks were successful
CI / changes (pull_request) Successful in 8s
CI Trade-In / changes (pull_request) Successful in 8s
CI Trade-In / backend-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 1m59s
CI / backend-tests (pull_request) Successful in 14m49s
domrf_kn_flat_plans было пусто (0 строк) — блокер для #299 (Potrace production-wiring) и #300 (CubiCasa). domrf_catalog.py уже фетчит SSR- страницы каталога квартир, где лежит планировка, но _TextCollector сознательно дропал <img> как void-tag (#1608) — картинка никогда не извлекалась. parse_catalog_flat теперь возвращает plan_image_url: primary-стратегия парсит __NEXT_DATA__ pageProps JSON (Next.js SSR-паттерн), fallback — голый <img> по class-hint/соседству с текстом "Планировка". _TextCollector получает аддитивный self.images-сбор ДО void-tag early-return — не трогает существующий stack/buffer, регрессия по #1608 исключена (тест test_img_capture_preserves_text_blocks). download_plan_image_stub (NotImplementedError) заменён на рабочую async-загрузку через существующий BrowserSession.download_binary (те же cookies/TLS/throttle), Pillow для width/height, идемпотентна (skip при уже существующем файле). Двухфазный upsert: URL пишется первым, затем метаданные после скачивания — частичный прогресс переживает падение загрузки. Не заводит новый Celery beat — не подключено ни в один task (домрана предпосылка issue #2440: scrape_one_flat/scrape_catalog_batch сейчас нигде не вызываются). Ships inert до отдельного follow-up по wiring. Refs #2440, #299, #300 |
||
|---|---|---|
| .. | ||
| alembic | ||
| app | ||
| db/init | ||
| output | ||
| scripts | ||
| tests | ||
| .dockerignore | ||
| .env.example | ||
| .env.runtime.example | ||
| .gitignore | ||
| alembic.ini | ||
| debug.log | ||
| Dockerfile | ||
| pyproject.toml | ||
| uv.lock | ||