[sf] Pre-enablement checklist для enable_ird_analyze (D9b flag) #1102

Closed
opened 2026-06-06 19:51:20 +00:00 by bot-reviewer · 0 comments
Collaborator

Follow-up из PR #1101 (D9b analyze-wiring, #1067). Флаг enable_ird_analyze смерджен default OFF. Перед включением на проде (после B6 harvest-прогона + заполнения ird_overlays/zone_regulation_cache) — выполнить:

Код-hardening (мелочь, до включения)

  1. parcels.py ird-catch без exc_info=True — sibling catch-блоки (напр. forecast :2953) пишут трейсбек. Добавить exc_info=True в logger.warning("ird block failed ...") (:2970) для отладки в GlitchTip при флаге ON.
  2. ird_analyze.py centroid-guardif lon is not None and lat is not None в prod всегда True (centroid_lon/lat имеют EKB-fallback в parcels.py). Безобидно, но добавить комментарий «guard активен только в unit-тестах; в prod lon/lat всегда float».

Latency (ВАЖНО перед включением)

  1. При флаге ON — до 3 последовательных синхронных geoportal-вызовов (functional_zone WFS + krt WFS + zone_regulation WFS/urbanCard) в sync analyze-хендлере, timeout 8s каждый → worst-case +~24s latency на /parcels/{cad}/analyze.
    • Прогреть zone_regulation_cache (C8b) ДО включения → cache-first снимает urbanCard-вызов.
    • Включить P95-мониторинг latency analyze.
    • Рассмотреть: вынести geoportal-резолв в async/background или кешировать functional_zone/krt тоже (по аналогии с zone_regulation_cache).
    • Зафиксировать known-limitation в vault перед flip.

Зависимость

Включать ТОЛЬКО после B6 (прогон ird_harvest/opportunity_harvest на проде — иначе ird_overlaps пуст) + наполнения zone_regulation_cache.

Acceptance

  • exc_info добавлен; centroid-guard прокомментирован.
  • zone_regulation_cache прогрет; P95-мониторинг включён; vault-limitation записан.
  • Флаг включён, smoke /parcels/{cad}/analyze с реальным cad → блок ird присутствует, latency P95 в норме.
Follow-up из PR #1101 (D9b analyze-wiring, #1067). Флаг `enable_ird_analyze` смерджен **default OFF**. Перед включением на проде (после B6 harvest-прогона + заполнения `ird_overlays`/`zone_regulation_cache`) — выполнить: ## Код-hardening (мелочь, до включения) 1. **`parcels.py` ird-catch без `exc_info=True`** — sibling catch-блоки (напр. forecast ~:2953) пишут трейсбек. Добавить `exc_info=True` в `logger.warning("ird block failed ...")` (~:2970) для отладки в GlitchTip при флаге ON. 2. **`ird_analyze.py` centroid-guard** — `if lon is not None and lat is not None` в prod всегда True (centroid_lon/lat имеют EKB-fallback в parcels.py). Безобидно, но добавить комментарий «guard активен только в unit-тестах; в prod lon/lat всегда float». ## Latency (ВАЖНО перед включением) 3. При флаге ON — до **3 последовательных синхронных** geoportal-вызовов (functional_zone WFS + krt WFS + zone_regulation WFS/urbanCard) в sync analyze-хендлере, timeout 8s каждый → **worst-case +~24s latency** на `/parcels/{cad}/analyze`. - Прогреть `zone_regulation_cache` (C8b) ДО включения → cache-first снимает urbanCard-вызов. - Включить P95-мониторинг latency analyze. - Рассмотреть: вынести geoportal-резолв в async/background или кешировать functional_zone/krt тоже (по аналогии с zone_regulation_cache). - Зафиксировать known-limitation в vault перед flip. ## Зависимость Включать ТОЛЬКО после B6 (прогон ird_harvest/opportunity_harvest на проде — иначе `ird_overlaps` пуст) + наполнения `zone_regulation_cache`. ## Acceptance - exc_info добавлен; centroid-guard прокомментирован. - zone_regulation_cache прогрет; P95-мониторинг включён; vault-limitation записан. - Флаг включён, smoke `/parcels/{cad}/analyze` с реальным cad → блок `ird` присутствует, latency P95 в норме.
bot-reviewer added the
scope/backend
site-finder
labels 2026-06-06 19:51:24 +00:00
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#1102
No description provided.