Files
clickstream-ch-kafka-supers…/.scratch/feature-data-generator/issues/06-state-v2-and-restart.md
T
Dmitry Dementiev d7c5a56675 docs(generator): зафиксирован процесс эксперимента с субагентами
- Зачем:
  - перед запуском задачи 05 нужно отделить координационные договорённости от будущих изменений генератора.
- Что:
  - добавлен handoff с правилами эксперимента координатора и субагентов.
  - уточнён порядок возврата к задаче состояния версии 2 после калибровки потока.
- Проверка:
  - git diff -- .scratch/feature-data-generator/issues/06-state-v2-and-restart.md .scratch/handoffs/2026-06-11-subagent-coordinator-experiment.md.
2026-06-11 16:34:45 +03:00

43 lines
3.1 KiB
Markdown

Status: ready-for-agent
# Состояние версии 2 и рестарт
## What to build
Расширить состояние генератора до версии 2: кроме тика и состояния генератора
случайных чисел сохранять популяцию пользователей и активные визиты. После
рестарта генератор должен продолжать коротко прерванные визиты и закрывать
сильно просроченные, не теряя популяцию пользователей.
Задача проверяет поведение состояния через публичные методы сохранения и
восстановления, без реального Kafka-брокера там, где достаточно сериализации.
Источник решений: `docs/specs/2026-06-10-generator-math-model.md`, раздел
«Персистентность через рестарты».
## Acceptance criteria
- [ ] Состояние версии 2 сериализуется в JSON и восстанавливает тик, ГПСЧ,
популяцию пользователей и активные визиты.
- [ ] Старое состояние версии 1 или битое состояние не валит генератор:
фиксируется предупреждение, генератор начинает с чистого листа.
- [ ] После простоя не больше 30 минут активный визит продолжается, а созревшие
события досылаются со своими исходными запланированными метками времени.
- [ ] После долгого простоя просроченный активный визит закрывается без досылки
остатка.
- [ ] Популяция пользователей переживает простой любой длины.
- [ ] `GEN_STATE_RESET=true` явно сбрасывает состояние, как и раньше.
## Blocked by
- `.scratch/feature-data-generator/issues/05-intensity-and-flow-calibration.md`
## Comments
2026-06-11: задачу нельзя считать самостоятельной к реализации, пока не закрыты
предыдущие срезы генератора: 02 (путь визита и монотонное время), 03 (тики и
активные визиты), 04 (популяция и возвраты), 05 (интенсивность и калибровка).
Преждевременный кодовый задел state v2 был откатан, чтобы он не попал в коммиты
следующих задач. Возвращаться к этой задаче нужно после реализации зависимостей
и заново проверять все acceptance criteria на актуальной модели генератора.