4.6 KiB
4.6 KiB
Dev Report: Enduro Trails Bug Fix #2
Дата: 2026-05-04 Статус: BLOCKED
Задача
Исправить 2 бага в Enduro Trails:
- Bug 3: UI панель маршрута перекрывается кнопками управления
- Bug 4: Длинные маршруты не строятся + улучшить сообщения об ошибках
Сделано
- Bug 3 — исправлен в CSS и HTML
- Bug 4 — исправлен в app.py (добавлен radiuses=5000, улучшены ошибки)
- Все изменения готовы в workspace
Изменённые файлы
-
/home/node/.openclaw/workspace/tasks/enduro-trails/prototype/static/app.css- Добавлен
#route-panel { right: 56px !important; }чтобы не перекрывать кнопки - Добавлен медиа-запрос для мобильных устройств
- Добавлен
-
/home/node/.openclaw/workspace/tasks/enduro-trails/prototype/static/index.html- Удалён inline
right:10pxиз#route-panel(теперь управляется через CSS)
- Удалён inline
-
/home/node/.openclaw/workspace/tasks/enduro-trails/prototype/app.py- Добавлен параметр
radiuses=5000(5 км snap radius) для длинных маршрутов - Улучшены сообщения об ошибках OSRM:
NoRoute→ "Маршрут не найден: нет пути между точками"NoSegment→ "Маршрут не найден: точки слишком далеко от дорог"InvalidValue→ "Некорректные координаты: {msg}"- Прочие → "Маршрут не найден ({code})"
- Добавлен параметр
Проблема — БЛОКЕР
SSH недоступен в subagent контейнере из-за несовместимости glibc:
- Контейнер: glibc 2.36
- SSH бинарь требует: glibc 2.38+
- Все попытки обойти (static binary, Python paramiko, Node ssh2) не удались
- Elevated exec недоступен для subagent
- Gateway host имеет ту же проблему с glibc
Следующий шаг
Варианты:
- Запустить деплой из main agent (не subagent) — там может быть рабочий SSH
- Попросить Славу задеплоить файлы вручную
- Установить openssh-client с elevated правами (требует изменения конфига)
Команды для ручного деплоя (если нужно)
SKILL=~/.openclaw/skills/installer/scripts
# 1. CSS
$SKILL/ssh_exec.sh --host mva154 --cmd "cat > /home/slin/enduro-trails/prototype/static/app.css << 'ENDOFFILE'
<содержимое из workspace>
ENDOFFILE"
$SKILL/ssh_exec.sh --host mva154 --cmd "docker cp /home/slin/enduro-trails/prototype/static/app.css prototype-enduro-trails-1:/app/static/app.css"
# 2. HTML
$SKILL/ssh_exec.sh --host mva154 --cmd "cat > /home/slin/enduro-trails/prototype/static/index.html << 'ENDOFFILE'
<содержимое из workspace>
ENDOFFILE"
$SKILL/ssh_exec.sh --host mva154 --cmd "docker cp /home/slin/enduro-trails/prototype/static/index.html prototype-enduro-trails-1:/app/static/index.html"
# 3. app.py
$SKILL/ssh_exec.sh --host mva154 --cmd "cat > /home/slin/enduro-trails/prototype/app.py << 'ENDOFFILE'
<содержимое из workspace>
ENDOFFILE"
$SKILL/ssh_exec.sh --host mva154 --cmd "docker cp /home/slin/enduro-trails/prototype/app.py prototype-enduro-trails-1:/app/app.py"
# 4. Restart
$SKILL/ssh_exec.sh --host mva154 --cmd "cd /home/slin/enduro-trails && docker compose restart prototype" --timeout 90
Диагностика Bug 4 (не выполнена)
Не удалось выполнить диагностику OSRM из-за отсутствия SSH:
curl 'http://localhost:5559/route/v1/driving/37.15,55.58;46.85,55.72?overview=false'
Фикс реализован на основе описания задачи:
- Увеличен snap radius до 5 км
- Добавлены детальные сообщения об ошибках
Уроки
- Subagent контейнеры имеют ограниченное окружение (старый glibc, нет pip, нет elevated)
- Для задач с SSH деплоем лучше использовать main agent или проверять доступность SSH заранее
- Installer skill предполагает наличие рабочего SSH — это зависимость окружения