P0 ЗОУИТ: сырой «cad_zouit», дубли, пустые «Охраняемые зоны» + СЗЗ-смысл и баннер «жильё ограничено» (эпик #1953) #1957

Closed
opened 2026-06-27 08:45:26 +00:00 by bot-backend · 1 comment
Collaborator

Часть аудита #1953. Блок «ОХРАННЫЕ ЗОНЫ ЗОУИТ» (NspdZouitOverlapsBlock.tsx, в Section4Estimate.tsx).

A4 — сырой лейбл + два рассинхронных пути.

  • GROUP_LABELS не содержит ключа cad_zouit → печатается сырой group_key. Два бэкенд-пути в один UI без нормализации:
    • fallback cad_zouit (quarter_dump_lookup._get_cad_zouit_overlaps): group_key=«cad_zouit», 4 строки = 2 уникальные СЗЗ (Ремпутьмаш 66:41-6.15472 + Майкопского 66:41-6.15834), каждая дублирована (одна зона хранится 2× с разным category_name, тем же reg_numb_border, без дедупа).
    • dump-путь _get_zouit_overlaps (теперь live, дамп 66:41:0205010 собран 2026-06-27): group_key=«protected», но name=null+type_zone=null (фичи несут только subcategory=26=СЗЗ, не маппится в человеческий тип) → 3 пустые «Охраняемые зоны» (хуже прежнего).
  • Fix: (1) dump-путь — маппинг NSPD subcategory→тип (26→«Санитарно-защитная зона»), reg из props.options.reg_numb_border, выставлять type_zone; (2) оба пути — единый контракт + дедуп по reg_numb_border; (3) UI: detail = type_zone → mapNspdSubcategory → name → GROUP_LABELS; добавить ключ cad_zouit в GROUP_LABELS.

A4 — смысл (UX/critical). СЗЗ = ЗОУИТ вокруг промпредприятия, внутри запрещено жильё/детсады/школы (СанПиН 2.2.1/2.1.1.1200-03). Одна из зон — СЗЗ собственного завода участка → это ключевой инвест-риск, объясняет пустую фин-модель.

  • Fix: caveat-баннер под блоком (как power_line warning в Section2): «в СЗЗ — размещение жилья ограничено/запрещено»; подсветка, если в name_by_doc/descr кад.номер самого участка. Поднять severity в gate_verdict.
Часть аудита #1953. Блок «ОХРАННЫЕ ЗОНЫ ЗОУИТ» (`NspdZouitOverlapsBlock.tsx`, в `Section4Estimate.tsx`). **A4 — сырой лейбл + два рассинхронных пути.** - `GROUP_LABELS` не содержит ключа `cad_zouit` → печатается сырой group_key. Два бэкенд-пути в один UI без нормализации: - fallback `cad_zouit` (`quarter_dump_lookup._get_cad_zouit_overlaps`): group_key=«cad_zouit», 4 строки = 2 уникальные СЗЗ (Ремпутьмаш `66:41-6.15472` + Майкопского `66:41-6.15834`), каждая дублирована (одна зона хранится 2× с разным `category_name`, тем же `reg_numb_border`, без дедупа). - dump-путь `_get_zouit_overlaps` (теперь live, дамп 66:41:0205010 собран 2026-06-27): group_key=«protected», но `name=null`+`type_zone=null` (фичи несут только `subcategory=26`=СЗЗ, не маппится в человеческий тип) → 3 пустые «Охраняемые зоны» (хуже прежнего). - Fix: (1) dump-путь — маппинг NSPD subcategory→тип (`26→«Санитарно-защитная зона»`), reg из `props.options.reg_numb_border`, выставлять `type_zone`; (2) оба пути — единый контракт + дедуп по `reg_numb_border`; (3) UI: detail = `type_zone → mapNspdSubcategory → name → GROUP_LABELS`; добавить ключ `cad_zouit` в `GROUP_LABELS`. **A4 — смысл (UX/critical).** СЗЗ = ЗОУИТ вокруг промпредприятия, внутри запрещено жильё/детсады/школы (СанПиН 2.2.1/2.1.1.1200-03). Одна из зон — **СЗЗ собственного завода участка** → это ключевой инвест-риск, объясняет пустую фин-модель. - Fix: caveat-баннер под блоком (как power_line warning в Section2): «в СЗЗ — размещение жилья ограничено/запрещено»; подсветка, если в `name_by_doc/descr` кад.номер самого участка. Поднять severity в `gate_verdict`.
Author
Collaborator

Закрыто — отгружено на прод + verified. ЗОУИТ типизация (subcat 26→СЗЗ) + дедуп (PR #1973); СЗЗ-баннер «жильё ограничено» + type_zone на фронте (PR #1985). Сырой cad_zouit больше не показывается, пустые «Охраняемые зоны» убраны. См. финал эпика #1953.

✅ Закрыто — отгружено на прод + verified. ЗОУИТ типизация (subcat 26→СЗЗ) + дедуп (PR #1973); СЗЗ-баннер «жильё ограничено» + type_zone на фронте (PR #1985). Сырой `cad_zouit` больше не показывается, пустые «Охраняемые зоны» убраны. См. финал эпика #1953.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#1957
No description provided.