refactor(tradein/admin): debug newbuilding endpoints на kit + config=, fix stray await (#2397 Part D4) #2414

Merged
lekss361 merged 1 commit from refactor/tradein-partD4-admin-newbuilding-kit into main 2026-07-04 12:29:52 +00:00
Owner

Summary

Umbrella #2397 Part D4 (эпик #2277). Мигрирует два debug-эндпоинта admin.py (/scrape/yandex-newbuilding, /scrape/cian-newbuilding) с legacy app.services.scrapers.{yandex,cian}_newbuilding на kit. Debug-only (за Caddy basic_auth, не prod-scheduled) → низкий риск.

Изменения

  • yandex import (module-top) → scraper_kit.providers.yandex.newbuilding; YandexNewbuildingScraper(config=RealScraperConfig()).
  • cian lazy import → scraper_kit.providers.cian.newbuilding; fetch_newbuilding(zhk_url, config=RealScraperConfig()). Без config → AssertionError в BrowserFetcher.__aenter__ (self-revealing).
  • Bug fix: убран некорректный await перед save_newbuilding_enrichment(...) — функция sync (def, returns None) и в legacy, и в kit; await кидал бы TypeError при реальном вызове с house_id. Пре-существующий баг, тривиально пофикшен раз строка трогается.
  • Стейл-anchor-комментарий (стр 20-30) о «kit newbuilding still blocked» переписан (#2322 закрыт).

Test plan

  • Full suite: 2811 passed, 6 skipped, 1 failed (#2208 flake, unrelated).
  • Import-sanity import app.main; import app.api.v1.admin → OK (ключевая проверка для admin.py).
  • ruff check clean; grep — 0 legacy {yandex,cian}_newbuilding импортов в admin.py.
  • Note: HTTP-тестов на эти debug-эндпоинты нет (существующий gap, вне scope D4) → mock-retarget не требовался.

Refs #2397, #2277

## Summary Umbrella #2397 **Part D4** (эпик #2277). Мигрирует два debug-эндпоинта `admin.py` (`/scrape/yandex-newbuilding`, `/scrape/cian-newbuilding`) с legacy `app.services.scrapers.{yandex,cian}_newbuilding` на kit. Debug-only (за Caddy basic_auth, не prod-scheduled) → низкий риск. ## Изменения - yandex import (module-top) → `scraper_kit.providers.yandex.newbuilding`; `YandexNewbuildingScraper(config=RealScraperConfig())`. - cian lazy import → `scraper_kit.providers.cian.newbuilding`; `fetch_newbuilding(zhk_url, config=RealScraperConfig())`. Без config → `AssertionError` в `BrowserFetcher.__aenter__` (self-revealing). - **Bug fix**: убран некорректный `await` перед `save_newbuilding_enrichment(...)` — функция sync (`def`, returns None) и в legacy, и в kit; `await` кидал бы `TypeError` при реальном вызове с `house_id`. Пре-существующий баг, тривиально пофикшен раз строка трогается. - Стейл-anchor-комментарий (стр 20-30) о «kit newbuilding still blocked» переписан (#2322 закрыт). ## Test plan - [x] Full suite: 2811 passed, 6 skipped, 1 failed (#2208 flake, unrelated). - [x] Import-sanity `import app.main; import app.api.v1.admin` → OK (ключевая проверка для admin.py). - [x] `ruff check` clean; grep — 0 legacy `{yandex,cian}_newbuilding` импортов в admin.py. - Note: HTTP-тестов на эти debug-эндпоинты нет (существующий gap, вне scope D4) → mock-retarget не требовался. Refs #2397, #2277
lekss361 added 1 commit 2026-07-04 12:21:18 +00:00
refactor(tradein/admin): debug newbuilding endpoints на kit + config=, fix stray await (#2397 Part D4)
All checks were successful
CI Trade-In / changes (pull_request) Successful in 8s
CI / changes (pull_request) Successful in 7s
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / backend-tests (pull_request) Successful in 1m1s
6ace4ea4ce
lekss361 merged commit 00a4dca5c0 into main 2026-07-04 12:29:52 +00:00
lekss361 deleted branch refactor/tradein-partD4-admin-newbuilding-kit 2026-07-04 12:29:52 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#2414
No description provided.