auto-sync: 2026-05-04 12:40:01
This commit is contained in:
87
tasks/enduro-trails/reports/dev-2026-05-04-bugfix-2.md
Normal file
87
tasks/enduro-trails/reports/dev-2026-05-04-bugfix-2.md
Normal file
@@ -0,0 +1,87 @@
|
||||
# Dev Report: Enduro Trails Bug Fix #2
|
||||
Дата: 2026-05-04
|
||||
Статус: BLOCKED
|
||||
|
||||
## Задача
|
||||
Исправить 2 бага в Enduro Trails:
|
||||
- **Bug 3**: UI панель маршрута перекрывается кнопками управления
|
||||
- **Bug 4**: Длинные маршруты не строятся + улучшить сообщения об ошибках
|
||||
|
||||
## Сделано
|
||||
- [x] Bug 3 — исправлен в CSS и HTML
|
||||
- [x] Bug 4 — исправлен в app.py (добавлен radiuses=5000, улучшены ошибки)
|
||||
- [x] Все изменения готовы в 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)
|
||||
|
||||
- `/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
|
||||
|
||||
## Следующий шаг
|
||||
**Варианты:**
|
||||
1. Запустить деплой из main agent (не subagent) — там может быть рабочий SSH
|
||||
2. Попросить Славу задеплоить файлы вручную
|
||||
3. Установить openssh-client с elevated правами (требует изменения конфига)
|
||||
|
||||
## Команды для ручного деплоя (если нужно)
|
||||
```bash
|
||||
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:
|
||||
```bash
|
||||
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 — это зависимость окружения
|
||||
Reference in New Issue
Block a user