fix(site-finder): P1 #45 — extract 0.3 ha to _GEOM_AREA_COMFORT_HA
Auto-review нашёл: recommendation упоминала "от 0.3 га" но в constants block
не было 0.3 — magic literal в строке. Тот же класс проблемы что 30/40м inconsistency
из прошлого review, только в другом поле.
Fix: новая константа `_GEOM_AREA_COMFORT_HA = 0.3` с комментарием
"рекомендуемая комфортная площадь МКД (recommendation)". Размещена между
_GEOM_MIN_AREA_HA (физический минимум) и _GEOM_AREA_SCORE_FULL_HA (premium) —
третий semantic threshold. Recommendation теперь f-string использует константу.
Per auto-review on ae5e8de.
This commit is contained in:
parent
ae5e8de1c7
commit
5832dfae21
1 changed files with 4 additions and 3 deletions
|
|
@ -278,8 +278,9 @@ GEOTECH_BY_REGION: dict[int, dict[str, Any]] = {
|
|||
|
||||
# P1 (#45) — constants for polygon suitability (строительные нормы Свердл/общие
|
||||
# для ЖК; будут править — храним в одном месте)
|
||||
_GEOM_MIN_AREA_HA = 0.2 # ниже → area_subscore = 0
|
||||
_GEOM_AREA_SCORE_FULL_HA = 0.5 # ≥ → area_subscore = 1.0
|
||||
_GEOM_MIN_AREA_HA = 0.2 # ниже → area_subscore = 0 (физический минимум)
|
||||
_GEOM_AREA_COMFORT_HA = 0.3 # рекомендуемая комфортная площадь МКД (recommendation)
|
||||
_GEOM_AREA_SCORE_FULL_HA = 0.5 # ≥ → area_subscore = 1.0 (premium)
|
||||
_GEOM_ASPECT_PENALTY_THRESHOLD = 5.0 # выше → вытянутый
|
||||
_GEOM_ASPECT_PENALTY = 0.3
|
||||
_GEOM_CONVEX_PENALTY_THRESHOLD = 0.65 # ниже → изрезанный
|
||||
|
|
@ -419,7 +420,7 @@ def _polygon_suitability(geom_wkt: str) -> dict[str, Any]:
|
|||
"recommendation": (
|
||||
f"Строительный минимум короткой стороны — {_GEOM_MIN_WIDTH_PHYSICAL_M}м, "
|
||||
f"комфорт типового МКД 12-16 этажей — от {_GEOM_MIN_WIDTH_COMFORT_M}м "
|
||||
f"и площадь от 0.3 га."
|
||||
f"и площадь от {_GEOM_AREA_COMFORT_HA} га."
|
||||
),
|
||||
"note": (
|
||||
"Оценка по форме участка (Shapely). Учитывает площадь, "
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue