From 7d34a79dbeb83c4bf59f864ed1f115bdf6f955f5 Mon Sep 17 00:00:00 2001 From: Stream Date: Sat, 2 May 2026 07:00:01 +0300 Subject: [PATCH] auto-sync: 2026-05-02 07:00:01 --- memory/ontology/graph.jsonl | 3 + tasks/enduro-trails/PROJECT.md | 66 +++++++++++++++++ .../TASKS/active/prototype-setup/TASK.md | 70 +++++++++++++++++++ 3 files changed, 139 insertions(+) create mode 100644 tasks/enduro-trails/PROJECT.md create mode 100644 tasks/enduro-trails/TASKS/active/prototype-setup/TASK.md diff --git a/memory/ontology/graph.jsonl b/memory/ontology/graph.jsonl index 3c8b434..0d65d5c 100644 --- a/memory/ontology/graph.jsonl +++ b/memory/ontology/graph.jsonl @@ -148,4 +148,7 @@ {"op": "create", "entity": {"id": "doc_fr24_rtl_sdr_tz", "type": "Document", "properties": {"title": "FR24 RTL-SDR TZ", "path": "tasks/flightradar24/docs/RTL-SDR_TZ.md", "summary": "ТЗ на приём, хранение и обработку данных с RTL-SDR для FR24 / noisemap."}, "created": "2026-04-18T21:11:00Z"}, "timestamp": "2026-04-18T21:11:00Z"} {"op": "create", "entity": {"id": "doc_fr24_test_plan", "type": "Document", "properties": {"title": "FR24 RTL-SDR test plan", "path": "tasks/flightradar24/docs/TEST_PLAN.md", "summary": "Smoke, integration, recovery and retention checks for the RTL-SDR ingest stack."}, "created": "2026-04-18T21:18:00Z"}, "timestamp": "2026-04-18T21:18:00Z"} {"op":"create","entity":{"id":"proj_karaoke","type":"Project","properties":{"name":"Караоке-генератор","status":"planning","folder":"tasks/karaoke/","doc_path":"tasks/karaoke/PROJECT.md","description":"Генерация видео-караоке из аудиофайла: транскрипция текста, NLP-анализ смысла, авто-подбор видео-фона из стоков, рендер в MP4.","start_date":"2026-04-29"},"created":"2026-04-29T21:21:00Z"},"timestamp":"2026-04-29T21:21:00Z"} +{"op":"create","entity":{"id":"proj_karaoke","type":"Project","properties":{"name":"Караоке-генератор","status":"planning","folder":"tasks/karaoke/","doc_path":"tasks/karaoke/PROJECT.md","description":"Генерация видео-караоке из аудиофайла: транскрипция текста, NLP-анализ смысла, авто-подбор видео-фона из стоков, рендер в MP4.","start_date":"2026-04-29"},"created":"2026-04-29T21:21:00Z"},"timestamp":"2026-04-29T21:21:00Z"} {"op":"create","entity":{"id":"task_karaoke_setup","type":"Task","properties":{"title":"Оформить проект Караоке-генератор","status":"open","project":"proj_karaoke","folder":"tasks/karaoke/TASKS/active/project-setup/","doc_path":"tasks/karaoke/TASKS/active/project-setup/TASK.md","description":"Создать структуру папок, PROJECT.md, TASK.md, обновить онтологию.","priority":"high"},"created":"2026-04-29T21:21:00Z"},"timestamp":"2026-04-29T21:21:00Z"} +{"op":"create","entity":{"id":"proj_enduro_trails","type":"Project","properties":{"name":"Enduro Trails","status":"planning","folder":"tasks/enduro-trails/","doc_path":"tasks/enduro-trails/PROJECT.md","description":"OSM-карта с фокусом на грунтовые дороги для эндуро: роутинг с максимизацией грунтовок, визуализация рельефа, POI, поиск красивых маршрутов","start_date":"2026-05-02"},"created":"2026-05-02T03:51:00Z"},"timestamp":"2026-05-02T03:51:00Z"} +{"op":"create","entity":{"id":"task_enduro_prototype","type":"Task","properties":{"title":"Прототип Enduro Trails на mva154","status":"open","project":"proj_enduro_trails","folder":"tasks/enduro-trails/TASKS/active/prototype-setup/","doc_path":"tasks/enduro-trails/TASKS/active/prototype-setup/TASK.md","description":"Настроить прототип на mva154: парсинг PBF (ЦФО+Чувашия), Spatialite, базовый рендеринг тайлов, веб-карта MapLibre GL","priority":"high"},"created":"2026-05-02T03:51:00Z"},"timestamp":"2026-05-02T03:51:00Z"} diff --git a/tasks/enduro-trails/PROJECT.md b/tasks/enduro-trails/PROJECT.md new file mode 100644 index 0000000..45d34dd --- /dev/null +++ b/tasks/enduro-trails/PROJECT.md @@ -0,0 +1,66 @@ +# Enduro Trails 🏍️ + +> OSM-карта с фокусом на грунтовые дороги для построения красивых эндуро-маршрутов + +**Статус:** planning +**Старт:** 2026-05-02 +**Автор:** Слава + +--- + +## Концепция + +Обычные карты оптимизированы под автомобили — асфальт яркий, грунтовки не видны. Enduro Trails переворачивает эту логику: **грунтовки/тропы — главный слой**, асфальт — тусклый фон. Плюс фичи для поиска и построения красивых маршрутов (минимум асфальта, максимум красоты). + +## Ключевые фичи + +| Фича | Описание | +|------|----------| +| 🛤️ **"Дикий путь"** | Роутинг А→Б с максимизацией грунтовок | +| 🎨 **"Красивый маршрут"** | Замкнутый круг через водоёмы, виды, заброшки | +| 🏔️ **"Горка"** | Макс набор высоты, мин дистанция | +| 🔗 **"Связка"** | Соединить два трека грунтовками | +| 📍 **"Разведка"** | Грунтовки вокруг точки | +| 🚧 **"Препятствия"** | Броды, шлагбаумы, болота, ЛЭП | + +## Регионы + +1. **ЦФО + Чувашия** (первый регион, прототип) +2. Расширение на новые ФО по запросу + +## План + +Прототип (mva154) → проверка концепта → новая VM с PostGIS + OSRM → масштабируемая платформа + +## Архитектура + +Схема: `../../enduro_architecture.png` +Концепт: [CONCEPT.md](CONCEPT.md) + +### Стек + +- Pyrosm/Osmium → парсинг PBF +- Spatialite/PostGIS → хранение +- OSRM (кастомный профиль) → роутинг +- FastAPI → бэкенд +- MapLibre GL JS → фронт (веб + PWA) + +## Хостинг + +- **Прототип:** mva154 (localhost, Docker) +- **Продакшен:** новая VM (4 vCPU, 8 GB RAM, 50 GB диск) + +## Ресурсы на регион + +| Компонент | Объём | +|-----------|--------| +| PBF (регион) | ~150-200 MB | +| Spatialite/PostGIS | ~500 MB - 1 GB | +| OSRM граф | ~1-3 GB | +| SRTM DEM | ~2-3 GB | +| Тайлы (z10-16) | ~2-5 GB | +| **Итого** | **~5-12 GB** | + +--- + +*Ссылка на онтологию: `proj_enduro_trails`* diff --git a/tasks/enduro-trails/TASKS/active/prototype-setup/TASK.md b/tasks/enduro-trails/TASKS/active/prototype-setup/TASK.md new file mode 100644 index 0000000..205185c --- /dev/null +++ b/tasks/enduro-trails/TASKS/active/prototype-setup/TASK.md @@ -0,0 +1,70 @@ +# Прототип Enduro Trails на mva154 + +**Статус:** open +**Приоритет:** high +**Проект:** proj_enduro_trails + +--- + +## Задача + +Настроить прототип на mva154 для проверки концепции Enduro Trails. + +## Что делаем + +### 1. PBF Парсинг (ЦФО + Чувашия) +- Скачать PBF дамп европейской части России с Geofabrik +- Отфильтровать по bounding box (ЦФО + Чувашия) +- Распарсить highway=track, highway=path с тегами surface, tracktype, mtb:scale +- Сохранить GeoJSON в `tasks/enduro-trails/data/` + +### 2. Spatialite +- Импортировать отфильтрованные дороги в Spatialite +- Создать базовые индексы для поиска +- Добавить слой POI (водоёмы, видовые точки, брошенные объекты) + +### 3. Базовый рендеринг тайлов +- Настроить tileserver-gl или самописный генератор тайлов +- Стиль: грунтовки яркие, асфальт серый +- Поддержка z10-z16 + +### 4. Веб-карта (MapLibre GL) +- Простой HTML + MapLibre GL JS +- Загрузка тайлов +- Базовые контролы слоёв + +## Критерии выполнения + +- [ ] Скачан и отфильтрован PBF дамп +- [ ] Парсинг → Spatialite работает +- [ ] Тайлы генерируются с кастомным стилем +- [ ] Веб-карта показывает грунтовки ярко, асфальт тускло +- [ ] Клик по дороге → информация (название, surface, tracktype) + +## Данные для ЦФО + Чувашия + +**BBOX (приблизительно):** +- Запад: 30.0 +- Восток: 45.0 +- Юг: 51.0 +- Север: 59.0 + +**PBF источник:** `https://download.geofabrik.de/russia/centralfederal.ru-latest.osm.pbf` +Чувашия может быть включена или отдельным дампом — нужно проверить Geofabrik + +## Техстек + +- **Парсинг:** Pyrosm (Python) +- **Хранение:** Spatialite +- **Тайлы:** TileServer GL или Python + Pillow/Mapnik +- **Фронт:** MapLibre GL JS (CDN) + +## Примечания + +- Прототип локальный (mva154:5558 или другой порт) +- Без роутинга на этом этапе (только визуализация) +- OSRM ставим в фазе 2 + +--- + +*Ссылка на онтологию: `task_enduro_prototype`*