From c3dea44e7da592c5565c1e74b620c6e261acf8d1 Mon Sep 17 00:00:00 2001 From: claude-bot Date: Sun, 7 Jun 2026 01:09:04 +0000 Subject: [PATCH] tester(ET): auto-commit from tester run_id=253 --- docs/work-items/ET-013/13-test-report.md | 89 +++++++++++++++++++++++- 1 file changed, 88 insertions(+), 1 deletion(-) diff --git a/docs/work-items/ET-013/13-test-report.md b/docs/work-items/ET-013/13-test-report.md index 9976f6f..6e0f09f 100644 --- a/docs/work-items/ET-013/13-test-report.md +++ b/docs/work-items/ET-013/13-test-report.md @@ -2,7 +2,7 @@ type: test-report work_item_id: ET-013 title: "Test Report: Перепады высот на z9-z11 — zoom-aware paint" -version: 14 +version: 15 status: blocked verdict: BLOCKED created_at: 2026-06-04 @@ -18,6 +18,93 @@ adr_refs: # Test Report — ET-013 +> **v15 (2026-06-07).** Независимый перепрогон (tester re-run, свежий +> экземпляр). Состояние кода ET-013 неизменно (фича в `main`: `5be81f9` +> feat, `099669d` fix-whitelist; `git diff main...HEAD` — только docs). +> Review (re-run #23) — **APPROVED** (P0/P1 в коде нет). Прогон в venv +> `/tmp/et013venv`. Итог: **код и автотесты зелёные, деплой корректен, +> но инфраструктурный блокер v1..v14 не устранён** — на test-среде +> по-прежнему нет z9-тайлов hillshade. **Вердикт: BLOCKED** (данные/PH-6, +> не дефект кода → `back-to:dev` не требуется). +> +> **Что прогнано в v15:** +> - **Health.** `curl`/`make` в песочнице недоступны → probe через +> `python3 urllib`. `GET /enduro/api/health` → **200** +> (`{"status":"ok","db_path":".../centralfederal.sqlite","db_exists":true}`). +> - **ET-013 unit+integration** (`test_terrain_paint.py` + +> `test_terrain_z9_tiles.py`) → **23 passed / 7 skipped** (0.49 s). +> 17 unit PASS (opacity/contrast stops + монотонность, `nearest`, +> регрессия z8=0.70, пик z9-z11≥0.80, обратная совместимость +> `applyTerrainLayer`, порог `zoom < 9` + отсутствие `< 10`, hint +> «Зум 9+», call-count); 6 integration PASS (whitelist hypso/hillshade/ +> tri, 404 на unknown-layer/missing-tile/invalid-zoom); 7 SKIP — нет +> PNG-fixtures. AC-15/16/22 ✅. +> - **Полный авто-регресс** (`pytest tests/`) → **254 passed, 7 skipped, +> 4 deselected, 0 failed** (4.39 s). Регрессий ET-007/008/009/011/012 +> нет (AC-17 ✅). +> - **Lint.** `make lint` = `cd src/api && ruff check .` → **All checks +> passed!** (exit 0, AC-18 ✅). Примечание: `ruff check .` из корня +> репо находит 4 нарушения (F401×3, E741×1) в **чужих** тест-файлах +> (`tests/api/test_gps_tracks_mvt.py`, `..._sources_osm.py`, +> `tests/unit/test_base_layer.py`) — вне scope ET-013 и вне target'а +> `make lint` (он линтит только `src/api`). Не блокер ET-013; кандидат +> на отдельную housekeeping-задачу. +> - **Деплой ET-013 на test подтверждён прямым fetch:** `/enduro/app.js` +> (200, 132 KB) содержит `HILLSHADE_PAINT`, `TRI_PAINT`, `zoom < 9`; +> **нет** `zoom < 10`. `index.html` hint = «Зум 9+» (нет «Зум 10+»). +> AC-01 ✅. +> - **❌ Pre-deploy probe AC-19 / REQ-F-20 §1 — снова FAIL (P1, данные):** +> hillshade **z9-тайлы отсутствуют**. Широкий скан по ЦФО +> (lat 53–57, lon 35–40), обе схемы TMS и XYZ → **0 hits, все 404**. +> Контроль: TRI z9 → **200**, hillshade z10 → **200**. Слой hillshade +> по-прежнему начинается с **z10**. Подробная сетка 5×5 вокруг +> `[37.6, 54.5]`: hillshade z9 → **0/25**, z10 → 20/25, z11..z14 → 25/25; +> TRI z8..z12 → 25/25 (z13/z14 у TRI нет — ожидаемо, вне scope ET-013). +> **PH-6 follow-up из v1..v14 так и не выполнен.** +> - **Следствие для UX:** деплой понизил UI-минзум hillshade до z9 и +> запрашивает `/terrain/hillshade/9/*`, но тайлов нет → на z9 включённые +> «Тени рельефа» дают пустой слой; видны только «Перепады» (TRI z9 +> есть). Нарушены **AC-03** (видны тени на z9), **AC-07** (читаемость +> z9), **AC-13** (mobile z9) и **AC-19** (z9 = 200). +> - **UI Playwright (TC-UI-01..12) — NOT EXECUTED:** `$UI_TEST_RUNNER` +> не задан, `/home/slin/tools/ui-test/` отсутствует, `npx`/playwright +> в песочнице нет, спеков в `tests/ui|e2e|visual` нет (только template), +> baseline-скриншотов нет. Шаг 4 алгоритма пропущен из-за окружения. +> Кроме того, z9-визуальные TC всё равно не прошли бы без z9-тайлов. +> +> **Заключение v15:** дефекта кода нет (Review APPROVED; unit/integration/ +> lint зелёные; деплой корректен). Блокер — инфраструктурный/данные: +> отсутствие z9-тайлов hillshade. `back-to:dev` не требуется. +> Разблокировка = **PH-6 follow-up** (нарезать `data/terrain/hillshade/9/*` +> по той же TMS-схеме, что z10+, и задеплоить), после чего повторить +> AC-03/07/13/19 и UI TC-UI-01/03/07. +> +> ## Visual / UI тесты (v15) +> +> UI Playwright-раннер в окружении тестировщика недоступен → ни один +> visual-TC не выполнен. Таблица отражает статус прогона, не вердикт +> по коду. +> +> | TC | Назначение | Статус | Severity / прим. | +> |---|---|---|---| +> | TC-UI-01-Z9 | hillshade доступен/виден на z9 | NOT EXECUTED | блокер: нет z9-тайлов + нет раннера | +> | TC-UI-02-Z8-REGRESS | TRI на z8 как до ET-013 | NOT EXECUTED | нет раннера | +> | TC-UI-03-Z9-Q | читаемость z9 (оба слоя) | NOT EXECUTED | блокер: нет z9 hillshade | +> | TC-UI-04-Z10-Q | читаемость z10 | NOT EXECUTED | нет раннера (тайлы z10 есть) | +> | TC-UI-05-Z11-Q | читаемость z11 | NOT EXECUTED | нет раннера (тайлы z11 есть) | +> | TC-UI-06-Z14-REGRESS | hillshade не перегрет z14 | NOT EXECUTED | нет раннера | +> | TC-UI-07-Z9-MOBILE | mobile z9 | NOT EXECUTED | блокер: нет z9 hillshade | +> | TC-UI-08-Z10-SAT-Q | спутник + hillshade z10 | NOT EXECUTED | нет раннера | +> | TC-UI-09-Z10-DARK-Q | тёмная тема + hillshade z10 | NOT EXECUTED | нет раннера | +> | TC-UI-10-PERSIST | localStorage переживает F5 | NOT EXECUTED | нет раннера | +> | TC-UI-11-NETWORK-Q | сетевой объём M-10 | NOT EXECUTED | нет раннера + нет baseline | +> | TC-UI-12-Z9-PAN | панорамирование z9 | NOT EXECUTED | нет раннера | +> +> Severity по блокеру: **P1** (целевой UX ET-013 на z9 для hillshade +> недостижим без данных). Это данные/инфра, не код. +> +> --- + > **v14 (2026-06-07).** Независимый перепрогон (tester re-run, свежий > экземпляр). Состояние кода ET-013 неизменно (фича в `main`: `5be81f9` > feat, `099669d` fix-whitelist; ветка `feature/ET-013-z9-z11-z8`,