docs(specs): спека уточнена после проверки свежим взглядом
- Зачем:
- три обещания спеки расходились с фактами кода и замеров HITL.
- Что:
- в путь менти возвращён шаг make superset-init; критерий «терминал
только make up» поправлен честно.
- критерий стоимости world_next_day сужен до генерации+manifest:
ETL full_refresh растёт с миром — явно вынесен в «чего не делаем».
- проверка профиля ×1 уточнена: runtime-seam уже на daily-wave,
проверять надо дефолты launch.py и автотесты.
- Проверка:
- сверка с scripts/run_generated_history_runtime_check.sh, Makefile
и замерами HITL (ETL 30 с на 110k событий).
This commit is contained in:
@@ -50,8 +50,9 @@
|
|||||||
3. Airflow UI: `world_init` — Trigger с пустой формой. Дефолтная операция —
|
3. Airflow UI: `world_init` — Trigger с пустой формой. Дефолтная операция —
|
||||||
`import`, путь к артефакту — дефолтом на эталонный мир. DAG сам заливает
|
`import`, путь к артефакту — дефолтом на эталонный мир. DAG сам заливает
|
||||||
Kafka, запускает ETL и сверяет витрины.
|
Kafka, запускает ETL и сверяет витрины.
|
||||||
4. Superset — готовый трёхдневный мир.
|
4. `make superset-init` — разовая инициализация дашборда (терминал).
|
||||||
5. Дальше по выбору лабы: `world_next_day` (кнопка без параметров) или
|
5. Superset — готовый трёхдневный мир.
|
||||||
|
6. Дальше по выбору лабы: `world_next_day` (кнопка без параметров) или
|
||||||
`make generator-continue` (живой поток).
|
`make generator-continue` (живой поток).
|
||||||
|
|
||||||
### Решения
|
### Решения
|
||||||
@@ -82,8 +83,9 @@
|
|||||||
становится ~постоянной (сейчас день 2 — 638 с и растёт), риск OOM
|
становится ~постоянной (сейчас день 2 — 638 с и растёт), риск OOM
|
||||||
снимается. Разбор по коду — hitl-findings, F9.
|
снимается. Разбор по коду — hitl-findings, F9.
|
||||||
5. **Один учебный профиль**: `daily-wave` (волна, ×60). `ci` (×1, плоско,
|
5. **Один учебный профиль**: `daily-wave` (волна, ×60). `ci` (×1, плоско,
|
||||||
6h) — служебный для автотестов, менти не предлагается. Перед слиянием
|
6h) — служебный для автотестов, менти не предлагается. Runtime-seam-
|
||||||
проверить, что runtime-seam-тест не завязан на скорость ×1.
|
проверка уже идёт на `daily-wave`; перед слиянием проверить остальных
|
||||||
|
потребителей `ci` — дефолты `launch.py` и автотесты, где профиль зашит.
|
||||||
|
|
||||||
## Чего здесь не делаем
|
## Чего здесь не делаем
|
||||||
|
|
||||||
@@ -97,6 +99,10 @@
|
|||||||
(JS-ошибка Grid) — отдельные issues вне фичи.
|
(JS-ошибка Grid) — отдельные issues вне фичи.
|
||||||
- **Не включаем расписание по умолчанию** и не занимаемся retention сверх
|
- **Не включаем расписание по умолчанию** и не занимаемся retention сверх
|
||||||
инкрементальных счётчиков.
|
инкрементальных счётчиков.
|
||||||
|
- **Не делаем инкрементальный ETL**: `world_next_day` по-прежнему зовёт
|
||||||
|
`full_refresh`, его стоимость растёт с миром (на текущих объёмах —
|
||||||
|
десятки секунд). Известная цена; исторический план —
|
||||||
|
`plans/incremental-etl-v2.md` (legacy).
|
||||||
|
|
||||||
## Форма работ
|
## Форма работ
|
||||||
|
|
||||||
@@ -118,13 +124,14 @@
|
|||||||
## Проверка
|
## Проверка
|
||||||
|
|
||||||
- Чистый стенд: путь менти из раздела UX проходится пустыми формами;
|
- Чистый стенд: путь менти из раздела UX проходится пустыми формами;
|
||||||
от `make up` до дашборда — без документации и без терминала (кроме
|
терминал — только `make up` и `make superset-init`.
|
||||||
`make up`).
|
|
||||||
- `import` эталонного мира — секунды-минуты, не десятки минут.
|
- `import` эталонного мира — секунды-минуты, не десятки минут.
|
||||||
- После `import` у любого менти совпадают manifest-числа эталонного мира
|
- После `import` у любого менти совпадают manifest-числа эталонного мира
|
||||||
(события, визиты, пользователи, контрольная сумма).
|
(события, визиты, пользователи, контрольная сумма).
|
||||||
- `world_next_day` на дне N по времени ~равен дню 1;
|
- Задача генерации+manifest в `world_next_day` на дне N по времени
|
||||||
`make generated-history-chain-check` зелёный на стыках.
|
~равна дню 1 (ETL `full_refresh` растёт с миром — это вне скоупа,
|
||||||
|
см. «Чего не делаем»); `make generated-history-chain-check` зелёный
|
||||||
|
на стыках.
|
||||||
- `make test` / `make lint` зелёные; профиль `ci` продолжает обслуживать
|
- `make test` / `make lint` зелёные; профиль `ci` продолжает обслуживать
|
||||||
автотесты.
|
автотесты.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user