feat(generator): добавлена модель связанного визита

- Зачем:
  - генератор должен создавать учебно полезный визит с общим click_id, правдоподобным путём и честным тиковым бюджетом событий.
- Что:
  - добавлена марковская цепочка страниц, запланированные метки времени и потолок GEN_MAX_SESSION_EVENTS.
  - добавлен набор тикового батча из нескольких визитов до рассчитанного бюджета событий.
  - обновлены тесты, README, KNOWN_ISSUES и статусы задач 01/02.
- Проверка:
  - uv run --with pytest --with-requirements generator/requirements.txt pytest generator/tests -q
This commit is contained in:
Dmitry Dementiev
2026-06-11 12:52:48 +03:00
parent d38124263a
commit 32f4fee41c
7 changed files with 354 additions and 47 deletions
@@ -1,4 +1,4 @@
Status: ready-for-agent
Status: ready-for-human
# Путь визита по страницам и монотонное время
@@ -17,17 +17,17 @@ Status: ready-for-agent
## Acceptance criteria
- [ ] Тест через публичный интерфейс генератора показывает, что
- [x] Тест через публичный интерфейс генератора показывает, что
`event_timestamp` внутри одного `click_id` строго возрастает.
- [ ] Метки времени событий являются запланированными моментами визита, а не
- [x] Метки времени событий являются запланированными моментами визита, а не
одинаковым `now()` для всего набора событий.
- [ ] Паузы внутри визита меньше 30 минут; 95-й перцентиль на симуляции лежит в
- [x] Паузы внутри визита меньше 30 минут; 95-й перцентиль на симуляции лежит в
масштабе единиц минут.
- [ ] Визит не может зациклиться бесконечно: длина ограничена потолком
- [x] Визит не может зациклиться бесконечно: длина ограничена потолком
`GEN_MAX_SESSION_EVENTS` или его новым эквивалентом.
- [ ] Доля визитов, дошедших до `/confirmation`, на симуляции сопоставима с
- [x] Доля визитов, дошедших до `/confirmation`, на симуляции сопоставима с
ориентиром сида около 25%.
- [ ] Визит может продолжаться после `/confirmation`; `/confirmation` не
- [x] Визит может продолжаться после `/confirmation`; `/confirmation` не
считается обязательным последним событием визита.
## Blocked by
@@ -35,4 +35,3 @@ Status: ready-for-agent
- `.scratch/feature-data-generator/issues/01-minimal-connected-visit.md`
## Comments