--- type: phase-brd phase_id: PH-2.routing title: "Роутинг: OSRM с кастомным эндуро-профилем" version: 1 status: done created_at: 2026-05-18 authors: - "agent:stream" --- # PH-2 — Роутинг: «Дикий путь» ## Цель Добавить построение маршрутов с приоритетом грунтовых дорог. Использовать OSRM с кастомным Lua-профилем, оптимизированным под эндуро. ## Scope - Кастомный профиль `enduro.lua` для OSRM (приоритет грунтовок, штраф за асфальт) - Пересборка OSRM графа из OSM PBF (~5.2 GB) - Базовый UI для построения маршрута (точка А → Б) - Отображение маршрута на карте ## Что реализовано - OSRM с профилем enduro.lua (веса: track > path > unclassified > tertiary > secondary) - API эндпоинт `/api/route` (FastAPI → OSRM) - UI: клик по карте для установки точек старта/финиша - Отображение маршрута (GeoJSON LineString на карте) - Docker-сервис OSRM в compose ## Ключевые решения | Решение | Причина | |---------|---------| | OSRM (не GraphHopper) | Быстрый, проверенный, кастомный lua-профиль | | Кастомный enduro.lua | Стандартные профили не учитывают грунтовки как приоритет | | Swap 6 GB | OSRM граф требует ~5.2 GB RAM | ## Дата завершения 03.05.2026