Для большой базы городов пытаюсь кешировать границы городов и прогоняю сейчас все населенные пункты через Геокодер.
Попадаются интересные случаи, когда ответ Яндекса расходится с ожидаемым.
Вот первая порция примеров, если согласитесь, что это баг, то воспримите это как багрепорт.
1) Россия, Буденновск, Ставропольский край, Буденновский район - не находит по такому запросу и пытается исправить Буденновский на Буденовский.
По данным Яндекса город принадлежит городскому округу Буденновск, а не Буденновскому району
Согласно Википедии и базе КЛАДР такого городского округа нет
https://ru.wikipedia.org/
2) Не находится город Остров (чтобы с типом locality, есть только other), центр Островского района - https://ru.wikipedia.org/wiki/Остров_(город)
Россия, Псковская область, Островский район, Остров
3) Прямым запросом не находится деревня Давыдово (Россия, Давыдово, Московская область, Орехово-Зуевский район)
Если поменять запрос на "Россия, деревня Давыдово, Московская область, Орехово-Зуевский район", то находится
4) По запросу (Россия, Троицк, Москва) не находится Троицк (входит в состав Москвы). Если сократить запрос до (Россия, Троицк), то находится. В принципе тут можно понять парсер и правильнее формулировать запрос Россия, Москва, Троицк.
5) По запросу (Россия, Стародуб, Брянская область, городской округ Стародуб) получаем 2 населённых пункта
Россия, Брянская область, Стародуб - точное и правильное совпадение
Россия, Московская область, Каширский район, деревня Стародуб
Оба с точностью "precision": "other". Какими путями выдаётся второй вариант?
6) Для города Юбилейный (Россия, Юбилейный, Московская область, городской округ Королев) тип населенного пункта стоит "kind": "district" вместо locality.
https://ru.wikipedia.org/wiki/Юбилейный_(город)
7) Не находит Ногинск-9 по запросу (Россия, Московская область, Ногинский район, Ногинск-9) хотя по аналогичному запросу (Россия, Московская область, Ногинский район, Ногинск-5) находит Ногинск-5
https://ru.wikipedia.org/wiki/Ногинск-9
А дело в том, что в базе Яндекса он находится в Щёлковском районе, а не Ногинском
8) В Ногинском районе Московской области есть деревня Оселок. По запросу (Россия, Московская область, Ногинский район, Оселок) координаты не находит, так как исправляет на запрос (Россия, Московская область, Ногинский район, Поселок). Приходится менять на (Россия, Московская область, Ногинский район, деревня Оселок).