Commit Graph

169 Commits

Author SHA1 Message Date
efd3ca5b3f tester(ET): auto-commit from tester run_id=243
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
2026-06-07 00:14:13 +00:00
b025c43213 reviewer(ET): auto-commit from reviewer run_id=242
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
2026-06-07 00:10:41 +00:00
f82bb8cc0e reviewer(ET): auto-commit from reviewer run_id=240
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 23:55:18 +00:00
ea00b7e3ff reviewer(ET): auto-commit from reviewer run_id=238
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 23:39:52 +00:00
c4ea3f3196 tester(ET): auto-commit from tester run_id=237
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
2026-06-06 23:38:01 +00:00
ac4140e5e0 reviewer(ET): auto-commit from reviewer run_id=236
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 3s
2026-06-06 23:34:15 +00:00
5b3961c0f5 tester(ET): auto-commit from tester run_id=235
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 23:32:20 +00:00
786e4e75e9 reviewer(ET): auto-commit from reviewer run_id=234
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 23:27:23 +00:00
79f5b93ed2 tester(ET): auto-commit from tester run_id=233
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 23:24:55 +00:00
dd7e1bf021 reviewer(ET): auto-commit from reviewer run_id=232
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 23:22:14 +00:00
4153b5bcd0 reviewer(ET): auto-commit from reviewer run_id=230
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 3s
2026-06-06 23:06:51 +00:00
d2265fb368 tester(ET): auto-commit from tester run_id=229
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 23:04:44 +00:00
78f74db872 reviewer(ET): auto-commit from reviewer run_id=228
Some checks failed
CI / test (push) Failing after 4s
CI / lint (push) Successful in 4s
CI / build (push) Has been skipped
2026-06-06 23:02:27 +00:00
a898eef7c9 reviewer(ET): auto-commit from reviewer run_id=226
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 22:48:04 +00:00
ad6c5a4cee tester(ET): auto-commit from tester run_id=225
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
2026-06-06 22:45:54 +00:00
7866174d8a reviewer(ET): auto-commit from reviewer run_id=224
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
2026-06-06 22:43:36 +00:00
fb90ad9090 tester(ET): auto-commit from tester run_id=223
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 8s
CI / build (push) Successful in 2s
2026-06-06 22:41:41 +00:00
4bb160d85a reviewer(ET): auto-commit from reviewer run_id=222
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 22:38:57 +00:00
498c7e191d tester(ET): auto-commit from tester run_id=221
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 22:36:01 +00:00
c9da18fdd0 reviewer(ET): auto-commit from reviewer run_id=220
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
2026-06-06 22:32:45 +00:00
23cd31dbf1 tester(ET): auto-commit from tester run_id=217
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 22:14:26 +00:00
89b83e3dfb reviewer(ET): auto-commit from reviewer run_id=216
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 22:11:44 +00:00
fd0c7a47f0 tester(ET): auto-commit from tester run_id=215
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 22:09:18 +00:00
e948861775 reviewer(ET): auto-commit from reviewer run_id=214
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 22:06:21 +00:00
0ad44b5341 reviewer(ET): auto-commit from reviewer run_id=211
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-06 21:44:56 +00:00
c66d4fbde2 tester(ET): auto-commit from tester run_id=209
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
2026-06-06 21:39:20 +00:00
badd559927 reviewer(ET): auto-commit from reviewer run_id=207
Some checks failed
CI / lint (push) Successful in 5s
CI / test (push) Failing after 5s
CI / build (push) Has been skipped
2026-06-06 21:26:55 +00:00
316bb0d1a6 tester(ET): auto-commit from tester run_id=85
All checks were successful
CI / lint (push) Successful in 4s
CI / lint (pull_request) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
CI / test (pull_request) Successful in 9s
CI / build (pull_request) Successful in 2s
2026-06-04 10:10:25 +00:00
397dc60822 reviewer(ET): auto-commit from reviewer run_id=84
All checks were successful
CI / lint (push) Successful in 4s
CI / lint (pull_request) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 2s
CI / test (pull_request) Successful in 9s
CI / build (pull_request) Successful in 2s
2026-06-04 10:02:57 +00:00
099669deeb fix(terrain): расширить whitelist endpoint'а на tri (ET-013 review F-1)
All checks were successful
CI / lint (push) Successful in 5s
CI / lint (pull_request) Successful in 5s
CI / test (push) Successful in 11s
CI / build (push) Successful in 3s
CI / test (pull_request) Successful in 10s
CI / build (pull_request) Successful in 2s
Reviewer'ом найден pre-existing P1: backend `terrain_tile` whitelist
не пропускал слой `tri`, хотя фронтенд (`onTerrainCheckbox`) шлёт
запросы на `/terrain/tri/{z}/{x}/{y}.png` для слоя «Перепады высот».

На test/prod-среде эти запросы перехватывает nginx (подтверждено
эмпирически — 404 идёт с сигнатурой `nginx/1.18.0 (Ubuntu)`, а не
с FastAPI JSON-detail), но в dev-режиме (`make dev` → FastAPI на
:5556 напрямую) endpoint обязан поддерживать `tri` нативно.

Изменения:
- `src/api/main.py:1252`: whitelist `("hypso", "hillshade")` →
  `("hypso", "hillshade", "tri")`. Ответ-контракт и заголовки
  идентичны существующим слоям; REQ-F-18 «API contract без изменений»
  не нарушен (поведение для уже-известных layer'ов не меняется,
  добавляется только поддержка нового layer'а).
- `tests/integration/test_terrain_z9_tiles.py`: новый параметризованный
  тест `test_known_terrain_layer_accepted_by_whitelist[hypso|hillshade|tri]`,
  фиксирующий регрессию F-1 (не требует локальных PNG-данных:
  для несуществующего файла ожидает `detail: "Tile not found"`,
  а не `"Unknown layer"`).
- `tests/integration/test_terrain_z9_tiles.py`: параметризация
  `test_terrain_tile_available_z9_z10_z11` по `(layer × zoom)` —
  6 кейсов вместо 3 (review F-2).
- `tests/integration/test_terrain_z9_tiles.py`: убран неиспользуемый
  `from __future__ import annotations` (review F-4); type-аннотации
  упрощены (Python 3.10+ нативно).
- `tests/integration/test_terrain_z9_tiles.py`: `test_unknown_terrain_layer_returns_404`
  усилен ассертом `detail == "Unknown layer"` (парность с whitelist-тестом).

Тесты: 17/17 unit PASS, 6/6 non-data-зависимых integration PASS,
6 layer×zoom кейсов SKIPPED (нет PH-6 данных в sandbox — корректное
поведение `_maybe_skip`).

Refs: ET-013, review F-1/F-2/F-4 (`docs/work-items/ET-013/12-review.md`).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-04 09:59:51 +00:00
f6fc9be324 reviewer(ET): auto-commit from reviewer run_id=82
All checks were successful
CI / lint (push) Successful in 4s
CI / lint (pull_request) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 3s
CI / test (pull_request) Successful in 10s
CI / build (pull_request) Successful in 2s
2026-06-04 09:54:22 +00:00
5be81f97a5 feat(terrain): zoom-aware paint для hillshade/TRI на z9-z11 (ET-013)
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
CI / lint (pull_request) Successful in 4s
CI / test (pull_request) Successful in 9s
CI / build (pull_request) Successful in 2s
Понижаем UI-минзум hillshade с 10 до 9 и переводим raster-paint
обоих terrain-слоёв в zoom-aware форму через MapLibre interpolate.
На z9-z11 — пик opacity/contrast, чтобы рельеф читался как на z8;
на z12-z14 — возврат к исходным значениям (регрессия по AC-10).
TRI на z8 остаётся 0.70 (регрессия по AC-06), пик 0.80-0.85 на z9-z11.

Изменения:
- src/web/app.js: добавлены HILLSHADE_PAINT и TRI_PAINT; applyTerrainLayer
  расширена для поддержки object-paint (обратно-совместимо); порог
  updateHillshadeAvailability понижен до 9; вызовы для hillshade переведены
  на minzoom=9.
- src/web/index.html: hint обновлён с «Зум 10+» на «Зум 9+».
- tests/unit/test_terrain_paint.py: 17 тестов покрытия zoom-stops, контракта
  applyTerrainLayer и регрессий (UT-PAINT-*, UT-REG-*).
- tests/integration/test_terrain_z9_tiles.py: smoke /terrain endpoint на
  z9-z11 + кэш-заголовки (IT-TILE-*).

Backend, тайлы на диске, конфиги, стили — без изменений.

Refs: ET-013
ADR: ADR-017

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-04 09:45:43 +00:00
6b88bcee28 architect(ET): auto-commit from architect run_id=79
Some checks failed
CI / lint (push) Successful in 5s
CI / test (push) Failing after 5s
CI / build (push) Has been skipped
2026-06-04 09:40:50 +00:00
7df1ffe75c analyst(ET): auto-commit from analyst run_id=78
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-04 09:28:51 +00:00
010b1e72f5 docs: init ET-013 business request
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
2026-06-04 12:18:06 +03:00
8da09e6df5 Merge pull request 'feat(gps-tracks): lower public-tracks minzoom to z5 (ET-012)' (#24) from feature/ET-012-z5-z8 into main
Some checks failed
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
v0.0.4
2026-06-04 09:40:34 +03:00
31cb47a7a2 tester(ET): auto-commit from tester run_id=76
All checks were successful
CI / lint (push) Successful in 4s
CI / lint (pull_request) Successful in 4s
CI / test (push) Successful in 10s
CI / build (push) Successful in 3s
CI / test (pull_request) Successful in 10s
CI / build (pull_request) Successful in 3s
2026-06-04 06:39:59 +00:00
e5122a540b reviewer(ET): auto-commit from reviewer run_id=75
All checks were successful
CI / lint (push) Successful in 4s
CI / lint (pull_request) Successful in 5s
CI / test (push) Successful in 11s
CI / build (push) Successful in 2s
CI / test (pull_request) Successful in 10s
CI / build (pull_request) Successful in 2s
2026-06-04 06:34:31 +00:00
bbed0e1082 feat(gps-tracks): lower public-tracks minzoom to z5 (ET-012)
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 9s
CI / build (push) Successful in 2s
CI / lint (pull_request) Successful in 4s
CI / test (pull_request) Successful in 10s
CI / build (pull_request) Successful in 3s
Калибровка существующих tier-таблиц `build_gps_mvt` /
`_simplify_coords` (ADR-016), чтобы при первом открытии карты
пользователь видел общее покрытие сети треков, а не пустую подложку.

Backend (src/api/gps_tracks/mvt.py):
- build_gps_mvt: добавлены тиры z<=5 (min_length=10 км, limit=1500)
  и z=6 (5 км / 2000); z=7+ — без изменений (регрессия).
- _simplify_coords: tolerance для z=6 = 0.018° (~2 км),
  для z<=5 = 0.04° (~4 км); z=7+ не меняется.

Frontend:
- GPS_TRACKS_MIN_ZOOM понижен с 8 до 5; vector-source.minzoom
  подхватывает константу автоматически.
- line-width / halo получили stop на z=5 (0.8 / 1.8 CSS-px),
  чтобы линия была читаема на любом DPR.
- Hint #public-tracks-zoom-hint: «Зум 8+» → «Зум 5+».

Тесты:
- 8 unit zoom-tier (UT-Z5/6/7/8/12) — REQ-F-09.
- 10 unit simplify (UT-SIMP-*) — REQ-F-10.
- 9 integration endpoint z5-z7 (IT-Z5/6/7, CACHE, REGRESS) — REQ-F-11/12.
- 2 perf (PERF-Z5-01/02; avg ~64 ms, p95 ~89 ms при 500 треках —
  ниже бюджета 200/500 ms по M-6) — REQ-F-13.
  Маркер @pytest.mark.perf, не в основном CI-gate.

Контракт API /api/gps-tracks* не меняется (REQ-F-15);
localStorage-ключи и конфиги тоже (REQ-F-16, F-18).

Refs: ET-012
ADR: docs/work-items/ET-012/06-adr/ADR-016-z5-tiling-policy.md

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-04 06:29:41 +00:00
c7d472023f architect(ET): auto-commit from architect run_id=73
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 7s
CI / build (push) Successful in 2s
2026-06-04 06:19:02 +00:00
eb9adbc930 analyst(ET): auto-commit from analyst run_id=72
All checks were successful
CI / lint (push) Successful in 5s
CI / test (push) Successful in 7s
CI / build (push) Successful in 2s
2026-06-04 06:00:55 +00:00
afbdb56c44 docs: init ET-012 business request
All checks were successful
CI / lint (push) Successful in 4s
CI / test (push) Successful in 6s
CI / build (push) Successful in 3s
2026-06-04 08:50:19 +03:00
b6b21aaeb0 Merge pull request 'fix: enduro_russia GPX download (A1) + deploy_status frontmatter (orchestrator БАГ 8 gate)' (#23) from fix/bug8-deploy-status-and-a1 into main
Some checks failed
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
2026-06-04 02:49:39 +03:00
stream
81c33941ff feat(gps-tracks): allow GPX download for enduro_russia source (A1, owner decision)
All checks were successful
CI / lint (pull_request) Successful in 3s
CI / test (pull_request) Successful in 7s
CI / build (pull_request) Successful in 2s
2026-06-04 02:49:00 +03:00
stream
7f6b39ab4f fix(deployer): require deploy_status frontmatter in 14-deploy-log.md (orchestrator БАГ 8 gate) 2026-06-04 02:48:17 +03:00
d1524a61f8 Merge pull request 'deployer(ET-011): tag v0.0.3 + deploy log (FAILED — infra blocker)' (#22) from deploy/ET-011-v0.0.3-log into main 2026-06-04 02:11:59 +03:00
4b529004ba deployer(ET-011): tag v0.0.3, deploy FAILED — infra blocker on test host
All checks were successful
CI / lint (pull_request) Successful in 4s
CI / test (pull_request) Successful in 7s
CI / build (pull_request) Successful in 2s
PR #21 merged to main and tag v0.0.3 pushed, but docker-compose roll on
test host did not happen: /home/slin/bin/enduro-deploy-hook.sh exits with
"Permission denied" on /var/log/enduro-trails/deploy-hook.log
(root-owned, no NOPASSWD sudo for slin). Healthcheck/smoke/rollback all
skipped — new code is on main but old image still serves traffic.

Action for ops: see docs/work-items/ET-011/14-deploy-log.md
("Что нужно от ops, чтобы доехать"). After fix, re-run deploy hook —
PR/tag do not need to be redone.
2026-06-03 23:11:31 +00:00
b21f543289 Merge pull request 'feat(gps-tracks): GPX download from public track popup (ET-011)' (#21) from feature/ET-011-popup-enduro-trails into main v0.0.3 2026-06-04 02:08:44 +03:00
d2bc769160 tester(ET): auto-commit from tester run_id=70
Some checks failed
CI / test (push) Failing after 4s
CI / lint (push) Successful in 4s
CI / build (push) Has been skipped
CI / lint (pull_request) Successful in 4s
CI / test (pull_request) Successful in 7s
CI / build (pull_request) Successful in 2s
2026-06-03 23:08:11 +00:00
ff18afed8c reviewer(ET): auto-commit from reviewer run_id=69
All checks were successful
CI / lint (push) Successful in 4s
CI / lint (pull_request) Successful in 4s
CI / test (push) Successful in 7s
CI / build (push) Successful in 2s
CI / test (pull_request) Successful in 6s
CI / build (pull_request) Successful in 1s
2026-06-03 23:04:25 +00:00