competitors.py:491-502 — ценовой fallback покрывает только objective_complex_mapping, игнорируя nearest_cx gap-fill: конкурент с velocity>0 из спатиального матча получает avg_price=None
nspd_lite.fetch_geoportal / nspd_client._http_get_json: json.loads на HTTP 200 не обёрнут → WAF-челлендж со статусом 200 даёт JSONDecodeError мимо autoretry harvest_quarter
obj_checks.extract_obj_checks: bool() на строковом флаге → 'false'/'0'/'нет' трактуется как пройдено
obj_checks.extract_obj_checks: or-коалесинг passed-значения (list-ветка) теряет boolean False → проваленная проверка пишется как пройденная
nspd_denorm.denorm_dump: штатный пропуск feature без cad_num считается ошибкой → завышенный error-счётчик в метрике прогона
domrf_catalog scrape_one_flat: success=True даже при updated=False / 0 извлечённых полей — ложь в статистике батча
domrf_catalog status: классификация по первому ключевому слову во всём HTML + 'продано'≠'продана' → sold помечается free
domrf_catalog _TextCollector: void-теги (<br>/<img>/<input>) рассинхронизируют стек/буфер — текст блоков теряется
ekburg_permits: _COORD_FIRST_RE требует дробную часть — целочисленные координаты МСК-66 теряют геопривязку молча
EMISS-парсер: годовой агрегат (PERIOD='год') и I квартал коллидируют по obs_date=date(year,1,1) — последний Series молча затирает первый
Phase A не пагинирует и молча теряет хвост объектов при limit=999999, run всё равно 'done'
Lazy-загрузка фото: при провале make_thumbnail оригинал записан на диск, но local_path не сохранён в БД (photos.py:113-125) — вечный re-fetch + осиротевший файл
make_thumbnail: неатомарная запись WebP (thumbs.py:53) — усечённый thumb навсегда кэшируется и отдаётся как валидный
LLMResult.from_provider теряет finish_reason — content_filter/length-обрезка возвращаются как ok=True
_parse_openai_response: int() на нечисловых usage-токенах бросает ValueError/TypeError мимо fallback-гарантии complete
Подписи секций в DXF привязаны по левому-нижнему углу к центроиду, а не отцентрованы на нём
DXF-экспорт теряет внутренние кольца (отверстия) участка/пятна застройки — вырезы зарисовываются сплошняком
ConceptInput.land_cost_rub без ge=0: отрицательная стоимость земли молча завышает маржу и IRR-proxy
place_strategy не отбраковывает стратегию с нулевым размещением: пустой концепт (revenue=0, margin=-land, IRR=-33%) выдаётся как валидный вариант
[Fable 5][P3] §15 confidence_engine: advisory-cap сообщение дублируется в rationale при all-high (самый частый advisory-случай)