[Fable 5][P3] objective_sync_config.get_config: голый except Exception: pass на seed-INSERT — запрещённый паттерн, сессия остаётся в aborted-состоянии
[Fable 5][P3] §14.2 price_feasibility: reason говорит «субсид. ставка», хотя платёж считан по рыночной key_rate+4.5 п.п. (~19%)
[Fable 5][P3] §25.3 _price_overlap: нулевая ширина ценовой вилки нашего проекта внутри вилки кандидата даёт 0.0 вместо 1.0/None
[Fable 5][P3] §15 report-confidence: _confounded читает ключи, которых нет в forecast-диктах — шок-окно никогда не влияет на уверенность
[Fable 5][P3] recommend_mix: _district_market_saturation без latest-snapshot фильтра — каждый ЖК считается ~3 раза, медиана и гейт n>=5 искажены
[Fable 5][P3] best_layouts: supply-бакеты ('4+', euro-1/2) не стыкуются с velocity-бакетами objective ('4', '5+', '2') — supply=0/sold_pct искажены
[Fable 5][P3] OCR-нормализация не чинит задокументированный шум «6б:41:…» — кад-номера тихо теряются
[Fable 5][P3] scrape_catalog_batch не делает db.commit() — все UPDATE цен откатятся при закрытии сессии
[Fable 5][P3] PUT /admin/jobs/settings/{job_type} для отсутствующей строки молча теряет изменения и отвечает 200 с fallback-дефолтами
[Fable 5][P2] scrape_kn: Redis-lock без owner-токена — release удаляет чужой lock, а stale lock после рестарта молча убивает resume
[Fable 5][P2] apiFetch падает с SyntaxError на 204 No Content — DELETE кастомных POI и weight-профилей всегда «ошибается» после успешного удаления
[Fable 5][P2] scrape_objective: провал lots_pf-стрима (главный 600МБ отчёт) проглатывается — run завершается status='done'
[Fable 5][P2] MiniMap обрезает 100px карты и все контролы SiteMap: рыночные слои #999/#958 невозможно включить на странице анализа
[Fable 5][P2] EGRN-контракт сломан: фронт ждёт vri/category/owner_type, бэкенд шлёт permitted_use_text/land_category — таблица ЕГРН пустая в prod
[Fable 5][P2] ROLLUP grand-total неотличим от NULL-группы rooms_int — velocity/absorption форсайта может схлопнуться
[Fable 5][P2] L3 future-supply: фильтр по volatile-колонкам внутри DISTINCT ON берёт «последний подходящий» снапшот, а не последний
[Fable 5][P2] _ACTIVE_STATUSES — английские значения против русского словаря site_status: POST /competitors всегда отдаёт is_active=false, active_count=0
[Fable 5][P2] nspd_geo: WAF-backoff sleep (до 240с) > 2-мин порога cleanup_zombies → дубль-запуск того же job двумя воркерами
[Fable 5][P2] price_sensitivity: в _elasticity_coef уходит админ-район вместо микро — регрессия всегда мертва (fallback)
[Fable 5][P2] _AVG_PRICE_SQL без snapshot-фильтра: цена конкурента — смесь исторических снапшотов, flats_sold кратно завышен