gendesign/backend/app
lekss361 c67c8138af feat(sf-b5): extend /analyze with EGRN + encumbrance + red_lines + risks
SF-B5: добавить 15 новых полей в POST /parcels/{cad_num}/analyze:
- egrn: cadastral_value_rub/per_m2, land_category, permitted_use_text,
  last_egrn_update_date, area_m2, ownership_type, right_type, status, address
- encumbrance: has_zouit, zouit_types, zouit_count (из cad_zouit)
- red_lines: intersects, count (из cad_red_lines via ST_Intersects)
- metro: nearest_top3 = null placeholder (заполнится после merge metro scraper)
- district_price_per_m2_min/max/median/sample_size (из objective_lots по району)
- risks: flood_zone (cad_risk_zones), noise_score, geology_risk_label (proxy)

Не трогает competitors block (OBJ-3 + PR #328 уже работают).
2026-05-18 00:02:54 +03:00
..
api feat(sf-b5): extend /analyze with EGRN + encumbrance + red_lines + risks 2026-05-18 00:02:54 +03:00
core fix(infra): wire GlitchTip DSNs (build-arg + env_file) + reject sentry.io promote 2026-05-16 21:48:28 +03:00
models feat(jobs): centralized job_settings API + DB-driven beat schedule 2026-05-11 15:38:13 +03:00
observability feat(backend): sentry-sdk init для FastAPI + Celery (#204 backend) (#207) 2026-05-16 15:09:16 +00:00
schemas feat(trade-in): TI-1 mock /trade-in/estimate endpoint + Pydantic + SQL migration (#316) 2026-05-17 16:45:06 +00:00
scrapers Merge pull request 'feat(#263 sub-A): cad_* overlay schemas + cadastre territorial_zones (ПЗЗ)' (#265) from feat/263-sub-a-cad-nspd-overlay-schemas-and-pzz into main 2026-05-17 07:50:08 +00:00
services fix(stealth): bump Semaphore 6->8 for higher concurrency in gather 2026-05-17 23:04:51 +03:00
workers fix(scrape-objective): stream-parse lots_pf via ijson to avoid OOM (#315) 2026-05-17 16:37:30 +00:00
__init__.py init 2026-04-25 13:45:19 +03:00
main.py feat(trade-in): TI-1 mock /trade-in/estimate endpoint + Pydantic + SQL migration (#316) 2026-05-17 16:45:06 +00:00