- Зачем:
- дашборд-эталон показывал две одинаковые KPI-плитки; нужен честный состав метрик
на полных данных, зафиксированный до реализации.
- Что:
- docs/specs/2026-06-06-...: KPI Events/Users/Avg per Visit/Conversion, Top Pages → Funnel, триаж чартов.
- .scratch/handoffs/2026-06-06-...: handoff для реализации в новой сессии.
- Проверка:
- числа спеки сверены с прямым запросом в ClickHouse на полном датасете.
4.3 KiB
4.3 KiB
Handoff: реализация редизайна Superset-дашборда
Дата: 2026-06-06 · Язык сессии: русский · Понять-режим был включён (можно не продолжать)
Источник истины
Сначала прочитать спеку: docs/specs/2026-06-06-superset-dashboard-redesign.md
— там весь дизайн (проблема, числа данных, триаж чартов, состав KPI, решения, риски,
критерии проверки). Этот handoff — только «как возобновить», не дублирует дизайн.
Доменные термины — CONTEXT.md.
Решение одной строкой
KPI-полоса = Total Events · Unique Users · Avg Events/Visit · Conversion to /confirmation
(дубль «Unique Sessions» убрать); Top Pages → Funnel-чарт по страницам; различие
user/session — текстом, не двумя одинаковыми цифрами; мёртвые колонки purchases — выкинуть.
Сделать ПЕРВЫМ делом
- Снять open questions из спеки (без них реализация буксует):
- точная формула Conversion (доля визитов с ≥1 pageview
/confirmation?); - поддерживает ли Superset 4.1.2
viz_typeворонки (иначе — упорядоченный bar); - судьба
Events by Hour(проверить, не пустой ли на полных данных).
- точная формула Conversion (доля визитов с ≥1 pageview
- Перегрузить стенд на ПОЛНЫЕ данные — сейчас в ClickHouse отладочный срез
(50 событий). Нужно:
make data(безLIMIT) +make transform. На полных данных: 1000 событий, 99 визитов, 99 пользователей.
Где править и как прогонять
- Единственный файл реализации:
superset/create_dashboard.py(CHARTS_CONFIG/DASHBOARD_ROWS/ROW_HEIGHTS). - Прогон:
make superset-dashboard— идемпотентно (чарты поslice_name, дашборд поslug, обновляются на месте). При переименовании чартов следить, чтобы не плодились дубли.
Проверка
GET /api/v1/dashboard/<id>/datasets→ 200; DQ Summary безColumns missing in datasource.- Визуально:
playwright-cli— логин формойadmin/adminнаhttp://localhost:8088/login/, затемgoto .../superset/dashboard/ecommerce-analytics/,screenshot --filename=/tmp/x.png(читать через Read). Скриншоты — в/tmp..playwright-cli/НЕ коммитить. - Сверка чисел с ClickHouse: креды в
configs/default_user.xml(default /123456),docker exec clickstream-ch-kafka-superset-demo-clickhouse-1 clickhouse-client --password 123456 -q "...". (Черезdocker exec printenvкреды НЕ дёргать — классификатор блокирует.)
Синхронизировать доки ПРИ реализации
docs/SUPERSET_DASHBOARD.md— раздел «Структура дашборда» (новый состав чартов/KPI).docs/course/lessons/06_superset_bi.md— убратьLIMIT=50 make data, синхронизировать состав/скриншоты.
Git-гигиена
- Ветка
docs/advanced-clickstream-course, на ней параллельно пишет Codex — git строго аддитивно, не amend/rebase/reset чужих коммитов.git addтолько своих файлов. - Артефакты этой сессии (если ещё не закоммичены):
CONTEXT.md,docs/adr/0001(правка),docs/adr/0002,docs/adr/0003,docs/specs/2026-06-06-...,AGENTS.md(правка), этот handoff.
Suggested skills
conventional-commits (любой коммит) · playwright-cli (визуальная проверка) ·
diagnose (если чарт/датасет отвалится).