gendesign/backend/app
lekss361 bab2b95c14 merge: resolve conflicts с main (X2 #88 + P2 #91 уже merged)
Конфликты в:
- backend/app/api/v1/parcels.py — keep both _polygon_suitability (P1) И
  _neighbors_summary (P2 из main); response dict содержит оба
  geometry_suitability + neighbors_summary полей.
- frontend/src/components/site-finder/LandTab.tsx — рендерим оба блока:
  NeighborsBlock (P2, hard warn на overlap) выше GeometrySuitabilityBlock (P1).
- frontend/src/types/site-finder.ts — оба поля в ParcelAnalysis:
  geometry_suitability?, neighbors_summary? + сохранены X2 confidence_*.

ruff + tsc + lint — clean.
2026-05-12 07:50:31 +03:00
..
api merge: resolve conflicts с main (X2 #88 + P2 #91 уже merged) 2026-05-12 07:50:31 +03:00
core feat(site-finder): /parcels/{cad}/isochrones via OpenRouteService 2026-05-11 21:44:22 +03:00
models feat(jobs): centralized job_settings API + DB-driven beat schedule 2026-05-11 15:38:13 +03:00
schemas feat(analytics): recommend_mix v3.1-v3.4 - noise + 2D competitors + 24m cap + success-driven 2026-05-11 22:19:41 +03:00
services fix(pzz-sync): follow_redirects=True (PKK6 returns 301) 2026-05-11 22:50:46 +03:00
workers feat(site-finder): ПЗЗ territorial zones from Rosreestr PKK6 + zoning in analyze 2026-05-11 21:51:51 +03:00
__init__.py init 2026-04-25 13:45:19 +03:00
main.py feat(jobs): centralized job_settings API + DB-driven beat schedule 2026-05-11 15:38:13 +03:00