feat(scraper-kit): copy sweep pipeline orchestration (avito) with protocol injection, strangler (#2135) #2171
No reviewers
Labels
No labels
admin
analytics
auth
automation
bug
business
chore
ci
compliance
data
data-moat
docs
duplicate
dx
enhancement
Fable 5 ревью
feedback/max
generative
GG-форсайт
needs-discussion
needs-human
observability
pause-bots
performance
priority/p0
priority/p1
priority/p2
priority/p3
scope/backend
scope/db
scope/devops
scope/frontend
scope/qa
scrapers
security
site-finder
stage/1
stage/2
status/blocked
status/done
status/needs-analysis
status/needs-fix
status/qa
status/ready
status/review
status/wip
tech-debt
tradein
ux
week ревью 1
wontfix
вторичка
ИРД
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lekss361/gendesign#2171
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "feat/scraper-kit-pipeline-copy"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Часть #2135 (Epic #2126, шаг F). Strangler-copy —
app/services/scrape_pipeline.pyНЕ тронут, деплой инертен. Первый срез (avito) + инфра; остальные 7 sweep — follow-up.Скопировано в
scraper_kit/orchestration/pipeline.py—run_avito_city_sweep(SEARCH→SAVE→GROUP→HOUSES→DETAIL + ban/rotation + partial-intake + IMV) +run_avito_pipeline+ countersruns.py— копияscrape_runs.py(sentry опционален)Развязка + инфра
settings→config: ScraperConfig,matching→matcher: HouseMatcher,house_imv_backfill→enrichment: EnrichmentJobscontracts.py:ScraperConfig+9 полей оркестрации +EnrichmentJobs.process_houses_imv_batchscraper_adapters.py(guard-тест зелёный, учтён урок #2170)_try_rotate_within_budgetGolden-parity ✅ (6 сценариев)
Старый
run_avito_city_sweep≡ новый на мокнутом I/O: counters, full-ban→banned, partial-intake→done (флаг on/off), detail 3-block propagate, IMV counters.Follow-up
7 остальных sweep (yandex/cian/domclick + 3 full_load + avito_newbuilding) — следующий срез.
Verify
from appв orchestration пусто; ruff clean; 39 passed