- PR #28 merged into main (864181e).
- Tag v0.0.6 pushed.
- Deploy hook (ssh slin@127.0.0.1) RC=0.
- Healthcheck GET /enduro/ → 200 first try.
- Smoke (real URLs /enduro/{app.css,app.js,units.js,gpx.js,gps_tracks.js})
all 200; deployed app.js carries ET-014/ADR-019/sheet-popup-yield markers
(4/3/2 respectively) — fix really reached prod, not a stale image cache.
- No rollback needed.
CHANGELOG: added [v0.0.6] block (Fixed: ET-014 terrain-popup ↔
bottom-sheet yield on mobile), restored ET-012 calibration body
under Unreleased that an earlier edit accidentally truncated.
Artefacts:
- docs/work-items/ET-014/14-deploy-log.md
- CHANGELOG.md
5.5 KiB
deploy_status, version, work_item, pr, merge_commit, date_utc, environment, healthcheck, smoke
| deploy_status | version | work_item | pr | merge_commit | date_utc | environment | healthcheck | smoke |
|---|---|---|---|---|---|---|---|---|
| SUCCESS | v0.0.6 | ET-014 | 28 | 864181e |
2026-06-04T11:30:00Z | test | PASS | PASS |
Deploy Log — ET-014
- Version (tag): v0.0.6
- Date: 2026-06-04 11:30 UTC
- PR: #28 (
fix(ui): terrain-popup закрывается при открытии bottom-sheet (ET-014)), merged intomain(merge commit864181e). - Environment: test (https://openclaw.mva154.duckdns.org/enduro/)
- Healthcheck: PASS
- Smoke: PASS
- Status: SUCCESS
Pipeline
-
Merge.
POST /repos/admin/enduro-trails/pulls/28/merge(Gitea API,Do=merge) → HTTP 200. PR былmergeable=true, конфликтов сmain(на котором уже сидел деплой ET-013 / v0.0.5) не было. Merge commit864181eсидит наorigin/main. -
Tag. Инкремент patch от
v0.0.5→v0.0.6. Тег создан отorigin/main(git tag v0.0.6 origin/main && git push origin v0.0.6). -
Deploy hook.
ssh slin@127.0.0.1 bash /home/slin/bin/enduro-deploy-hook.sh→ RC=0. Хук тянетmain, пересобирает/перезапускает docker compose сервисappна хостеmva154. Previous-image-digest на хосте (/home/slin/repos/enduro-trails/.deploy-prev-image) —sha256:4c09cd6f9fe8dccdf2bb70ac24679e44abf9ecdea050108173e43c9c86e4ff98(тот же, что был зафиксирован при деплое ET-013; хук не обновляет маркер, если digest не изменился, но это не означает, что rebuild не произошёл — см. smoke ниже, в задеплоенномapp.jsприсутствуют ET-014-маркеры). Этот digest доступен для--rollback. -
Healthcheck.
GET https://openclaw.mva154.duckdns.org/enduro/→ HTTP 200 с первой попытки (без необходимости polling-loop). -
Smoke.
Ресурс Статус Размер /enduro/(index.html)200 37 251 B /enduro/app.css200 48 675 B /enduro/app.js200 143 856 B /enduro/units.js200 8 773 B /enduro/gpx.js200 48 674 B /enduro/gps_tracks.js200 38 695 B Размер
/enduro/app.jsвырос со 142 964 B (v0.0.5) до 143 856 B (+892 B) — это ровно тот yield-блок, который добавил фикс ET-014 (src/web/app.js, +17 строк, см. ADR-019).Дополнительные проверки на специфику ET-014 (фикс «terrain-popup yields to opening bottom-sheet»):
- В задеплоенном
/enduro/app.jsприсутствуют маркерыET-014(×4),sheet-popup yield(×2),ADR-019(×3) — фикс действительно доехал до прода, а не остался старым image-кэшом.
Замечание про шаблон smoke. Алгоритм деплоера упоминает
/static/style.jsonи/static/app.js, но вenduro-trailsтакого префикса нет — статика монтируется в корень/enduro/(app.js,app.css, …);style.jsonприложение не отдаёт отдельным эндпоинтом, MapLibre-стиль формируется вapp.jsпрограммно. Корректный smoke (как и в ET-013) — над реально отдаваемыми URL'ами (/enduro/app.jsи пр.); они все 200. Прогон против шаблонных URL дал бы ложный rollback. Это известный gap в инструкции, отмеченный в deploy-log ET-013. - В задеплоенном
Что фактически уехало в v0.0.6
- ET-014 — фикс UX-конфликта
terrain-popup ↔ bottom-sheet(src/web/app.js, +17 строк): при открытии любого bottom-sheet активныйterrain-popupкорректно закрывается, а не остаётся висеть поверх UI (ADR-019). Поведение действует только на mobile (window.innerWidth ≤ 768); на desktop popup сохраняется (см. AC-01..AC-08, REQ-F-1..F-8). Покрытие: 16 unit-тестов (tests/unit/sheet_popup.test.js, 11 кейсов поведения + 5 boundary;tests/unit/test_sheet_popup.py, 4 архитектурных invariants ADR-019). - Никаких изменений API/БД/тайлов; чисто клиентский fix.
Rollback
Не понадобился. Если бы потребовался — план:
ssh slin@127.0.0.1 bash /home/slin/bin/enduro-deploy-hook.sh --rollback
(хук восстановит образ из .deploy-prev-image,
sha256:4c09cd6f9fe8…ff98 — это, к слову, образ ET-013 v0.0.5).
НЕ git checkout в shared-репо — этот путь прямо запрещён в
инструкции деплоера, потому что загаживает рабочее дерево
и не откатывает прод.
Артефакты
- Tag:
v0.0.6(origin/main@864181e) - PR: #28 (merged)
- Deploy timestamp: 2026-06-04 11:30 UTC
- Previous image digest (для возможного rollback):
sha256:4c09cd6f9fe8dccdf2bb70ac24679e44abf9ecdea050108173e43c9c86e4ff98