gendesign/tradein-mvp/backend/app
lekss361 8de8daef01 fix(tradein): extract_street_name handles Nominatim reverse format
Live bug: geocoder Nominatim возвращает адрес в REVERSE формате
"80, улица 8 Марта, район, ..., Россия" — старый regex брал всё после
"8 Марта" вместо stop'а перед первой запятой → ILIKE '%<huge mess>%'
возвращал 0 matches на проде.

Fix: новый _STREET_KW_RE ищет keyword (ул./улица/пр./...) затем
_STREET_NAME_RE капчит 1-3 слова имени улицы со stop'ом на comma или
house number. Работает с обоими форматами:
  forward:  "Екатеринбург, ул. Космонавтов, 50" → "Космонавтов"
  reverse:  "80, улица 8 Марта, район, ..." → "8 Марта"

Bonus fallback: первый capitalized токен (для "Большая Конюшенная, 25"
без keyword).

Tests: 10 parametrized cases в test_street_deals_endpoint.py.
2026-05-24 23:54:13 +03:00
..
api feat(tradein): GET /street-deals — ДКП-сделки Росреестра по улице target адреса (#555) 2026-05-24 20:05:48 +00:00
core feat(tradein): postgres_fdw live read of gendesign.cad_buildings (replaces snapshot) (#493) 2026-05-24 08:57:30 +00:00
schemas feat(tradein): GET /street-deals — ДКП-сделки Росреестра по улице target адреса (#555) 2026-05-24 20:05:48 +00:00
services fix(tradein): extract_street_name handles Nominatim reverse format 2026-05-24 23:54:13 +03:00
tasks feat(tradein/cian): valuation backfill + runner script для prod (#539) 2026-05-24 15:16:45 +00:00
__init__.py feat: add tradein-mvp subproject (Trade-In Estimator под /trade-in) 2026-05-21 00:25:39 +03:00
main.py feat(tradein): postgres_fdw live read of gendesign.cad_buildings (replaces snapshot) (#493) 2026-05-24 08:57:30 +00:00