- Зачем: - генератор должен создавать учебно полезный визит с общим click_id, правдоподобным путём и честным тиковым бюджетом событий. - Что: - добавлена марковская цепочка страниц, запланированные метки времени и потолок GEN_MAX_SESSION_EVENTS. - добавлен набор тикового батча из нескольких визитов до рассчитанного бюджета событий. - обновлены тесты, README, KNOWN_ISSUES и статусы задач 01/02. - Проверка: - uv run --with pytest --with-requirements generator/requirements.txt pytest generator/tests -q
38 lines
2.3 KiB
Markdown
38 lines
2.3 KiB
Markdown
Status: ready-for-human
|
|
|
|
# Путь визита по страницам и монотонное время
|
|
|
|
## What to build
|
|
|
|
Расширить минимальный визит до правдоподобного пути по страницам. Визит должен
|
|
начинаться со страницы, выбранной по стартовому распределению, дальше идти по
|
|
марковской цепочке и назначать событиям запланированные метки времени, которые
|
|
строго растут внутри `click_id`.
|
|
|
|
Задача остаётся без Kafka и без популяции пользователей: она проверяет качество
|
|
одного визита как учебного объекта и как основы будущей воронки.
|
|
|
|
Источник решений: `docs/specs/2026-06-10-generator-math-model.md`, раздел
|
|
«События и путь по страницам».
|
|
|
|
## Acceptance criteria
|
|
|
|
- [x] Тест через публичный интерфейс генератора показывает, что
|
|
`event_timestamp` внутри одного `click_id` строго возрастает.
|
|
- [x] Метки времени событий являются запланированными моментами визита, а не
|
|
одинаковым `now()` для всего набора событий.
|
|
- [x] Паузы внутри визита меньше 30 минут; 95-й перцентиль на симуляции лежит в
|
|
масштабе единиц минут.
|
|
- [x] Визит не может зациклиться бесконечно: длина ограничена потолком
|
|
`GEN_MAX_SESSION_EVENTS` или его новым эквивалентом.
|
|
- [x] Доля визитов, дошедших до `/confirmation`, на симуляции сопоставима с
|
|
ориентиром сида около 25%.
|
|
- [x] Визит может продолжаться после `/confirmation`; `/confirmation` не
|
|
считается обязательным последним событием визита.
|
|
|
|
## Blocked by
|
|
|
|
- `.scratch/feature-data-generator/issues/01-minimal-connected-visit.md`
|
|
|
|
## Comments
|