[SF-v2 #949] 949-A: Вес релевантности конкурентов §9.1 + complex_id join #968

Closed
opened 2026-06-02 19:20:15 +00:00 by lekss361 · 0 comments
Owner

Часть EPIC #949 (Site Finder v2 / GG-форсайт). Декомпозиция критпути — ground-truth (прод-БД + код) + web-research, 2026-06-02.

Scope: competitors.py выбирает конкурентов ТОЛЬКО по радиусу lat/lon (distance ASC), без веса релевантности; velocity джойнит objective_corpus_room_month по project_name (string) через objective_complex_mapping — lossy (~32% покрытие, objective_project_id 0% заполнен). Добавить вес релевантности + complex_id join path.

Файлы: backend/app/services/site_finder/competitors.py (_COMPETITORS_SQL L63, get_competitors L162, sort L132, flats_sold/sold_pct hardcoded None L283-284); backend/app/schemas/parcel.py

DoD:

  • Competitor.relevance: float 0..1 = composite(distance-decay × class-match × stage-weight); сортировка по relevance desc
  • добавить objective_lots.complex_id join как fallback к project_name-string-join → ≥1 доп. mapped competitor на тест-участке
  • поле relevance в схеме parcel.py

Зависит от:
Effort: M

**Часть EPIC #949 (Site Finder v2 / GG-форсайт).** Декомпозиция критпути — ground-truth (прод-БД + код) + web-research, 2026-06-02. **Scope:** competitors.py выбирает конкурентов ТОЛЬКО по радиусу lat/lon (distance ASC), без веса релевантности; velocity джойнит objective_corpus_room_month по project_name (string) через objective_complex_mapping — lossy (~32% покрытие, objective_project_id 0% заполнен). Добавить вес релевантности + complex_id join path. **Файлы:** backend/app/services/site_finder/competitors.py (_COMPETITORS_SQL L63, get_competitors L162, sort L132, flats_sold/sold_pct hardcoded None L283-284); backend/app/schemas/parcel.py **DoD:** - Competitor.relevance: float 0..1 = composite(distance-decay × class-match × stage-weight); сортировка по relevance desc - добавить objective_lots.complex_id join как fallback к project_name-string-join → ≥1 доп. mapped competitor на тест-участке - поле relevance в схеме parcel.py **Зависит от:** — **Effort:** M
lekss361 added this to the Site Finder v2 — Foresight (GG-форсайт) milestone 2026-06-02 19:20:19 +00:00
lekss361 added the
analytics
GG-форсайт
scope/backend
site-finder
labels 2026-06-02 19:20:20 +00:00
lekss361 added the
status/ready
label 2026-06-02 19:27:58 +00:00
Sign in to join this conversation.
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#968
No description provided.