gendesign/backend/tests/services/generative
bot-backend 22526aa331
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI / changes (pull_request) Successful in 9s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Successful in 2m7s
CI / backend-tests (pull_request) Successful in 14m41s
fix(generative): parse MultiPolygon parcels by largest contour (#2295)
_parse_polygon бросал ParcelGeometryError на MultiPolygon → POST /concepts
отдавал 422 на многоконтурных участках (интерактивный §7 «Пересчитать»
не работал; таких участков в ЕГРН немало — подвид «Многоконтурный»).
Нормализуем в одном месте: крупнейший контур max(geoms, key=area) —
паттерн, который буфер-стадия ниже уже использует; сравнение площадей
в градусах на этом этапе монотонно (один масштаб-фактор на участок),
итоговые площади считаются после репроекции. Пустой MultiPolygon и
прочие не-Polygon типы падают как раньше. Polygon-путь байт-в-байт
(тест эквивалентности single-contour MultiPolygon == Polygon, 1e-9).

Refs #2295
2026-07-04 01:56:58 +05:00
..
test_api_concepts.py feat(concept): фронт-пикер типовых домов (#1965 Stage 3b) 2026-06-28 02:49:44 +05:00
test_catalog.py feat(concept): house-type catalog + program-driven placement (#1965 Stage 3a) 2026-06-28 01:29:04 +05:00
test_exporters.py feat(finmodel): monthly DCF — real NPV/IRR/PBP, replace IRR-proxy (epic #1881 PR-3) 2026-06-23 21:52:04 +05:00
test_financial_dcf.py feat(financial/dcf): dormant separate-index inflation capability (default OFF) 2026-06-25 12:12:02 +00:00
test_geometry.py fix(generative): parse MultiPolygon parcels by largest contour (#2295) 2026-07-04 01:56:58 +05:00
test_market_price_lookup.py perf(objective): request-path consumers dedup inline, not via whole-table view (#1964) 2026-06-28 05:00:47 +05:00
test_placement.py feat(section7): editable section footprint + корпус plural/program hint (#1953) (#2102) 2026-06-30 09:48:11 +00:00
test_program_placement.py test(concept): turn greedy backward-compat into a real golden pin (#1965 Stage 3a) 2026-06-28 02:23:55 +05:00
test_teap_financial.py feat(generative): LIVE financial recompute from massing program (#1965 Stage 2a) 2026-06-28 00:27:25 +05:00