Тестировщику по области было нечего выбрать: реестр городов во фронте знал
только Свердловскую область и Москву, а подмосковные населённые пункты
лежали в _COVERAGE_NEGATIVE_CENTROIDS_DEG — намеренно, решением от
11.09.2026 «центроид без порога = город не определён».
Решение пересмотрено на замере, а не на желании открыть регион. Метрика —
та же, которой Москве выбирали жёлтый тир: 120 проб на город, радиус 8 км
от центра, когорта = is_active + точные комнаты + площадь ±15% +
scraped_at > now()-14d + ST_DWithin 1000 м. Результат: медиана когорты по
городам области 17-51, доля проб с >=12 аналогов 0.63-0.92. У Москвы,
которая уже жёлтая, медиана 14 и доля 0.57; у Нижнего Тагила (тоже
жёлтый) — 11 и 0.473. То есть каждый город области плотнее Москвы, и
жёлтый порог для них — консервативный выбор, а не натяжка.
Парность реестра и порогов сохранена (гейт test_public_mera_api): 22
города добавлены и во фронт, и в _COVERAGE_CITY_THRESHOLDS с
COVERAGE_YELLOW_MIN_N, и в _CITY_CENTROIDS_DEG. 12 центроидов перенесены
из негативного списка (32 -> 20 записей, ключи двух словарей не
пересекаются), 10 взяты из MOSCOW_OBLAST_CITY_ANCHORS — там они
резолвлены Nominatim.
MOSCOW_CITY больше не берётся по индексу последнего элемента: список
перестал заканчиваться Москвой, и молчаливая поломка стоила бы дорого —
теперь поиск по id с явным throw.
Тесты сетки покрытия переписаны по факту, а не подогнаны: 12 промоутнутых
координат раньше держали утверждение «здесь город не определён».
Контрольные точки пересчитаны (Пушкино теперь резолвится в Королёв,
контроль бесконечного радиуса переехал с точки в 22.9 км от Коломны).