- Зачем:
- продолжить работу над генератором в новой сессии без потери контекста.
- Что:
- .scratch/handoffs/2026-06-09-generator-rework.md: где остановились,
ссылки на ADR/спеку, следующий шаг, suggested skills, состояние git.
- Проверка:
- прочитать .scratch/handoffs/2026-06-09-generator-rework.md.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
53 lines
3.7 KiB
Markdown
53 lines
3.7 KiB
Markdown
# Handoff: переработка генератора (steady-stream, иерархическая модель)
|
|
|
|
Дата: 2026-06-09
|
|
Ветка: `feature/data-generator`
|
|
Жанр: одноразовые леса́ (ADR-0003) — durable-рассуждение в ADR/спеке, не здесь.
|
|
|
|
> Место: `.scratch/handoffs/` по [ADR-0003](../../docs/adr/0003-handoffs-in-scratch.md)
|
|
> и `AGENTS.md` (перекрывают generic-дефолт скилла «temp dir» — у владельца
|
|
> мультимашинность + worktrees, где `/tmp` не переживает).
|
|
|
|
## Где остановились
|
|
|
|
Брейнсторм-сессия (`brainstorm-with-docs`) завершена **на этапе документов** —
|
|
кода НЕ трогали. Зафиксировано направление переработки генератора и расчищена
|
|
рамка под реализацию. Дальше — отдельная follow-up-спека по математике, затем
|
|
реализация.
|
|
|
|
## Контекст и решения (ссылки, не пересказ)
|
|
|
|
- **Решение «почему» (генератор A, не реплей C):**
|
|
[`docs/adr/0004-steady-stream-synthetic-generator.md`](../../docs/adr/0004-steady-stream-synthetic-generator.md)
|
|
- **Форма доработки «что строим» (требования, без математики), статус Draft:**
|
|
[`docs/specs/2026-06-09-generator-rework-hierarchical.md`](../../docs/specs/2026-06-09-generator-rework-hierarchical.md)
|
|
— там же раздел **Open questions** (список вопросов для мат-спеки) и
|
|
**Validation** (критерии приёмки). Не дублирую сюда.
|
|
- **Глоссарий:** `CONTEXT.md` — добавлены «популяция пользователей» /
|
|
«возвращающийся пользователь».
|
|
- **Диагноз дефекта текущей реализации:** `generator/KNOWN_ISSUES.md`.
|
|
|
|
## Следующий шаг
|
|
|
|
**Написать follow-up-спеку по математике** генеративной модели. Перечень вопросов
|
|
— в разделе *Open questions* спеки доработки (распределения, session-timeout,
|
|
раскладка иерархии по тикам, персистентность популяции, `event_type` diversity).
|
|
|
|
## Ловушки (одной строкой; детали — в спеке)
|
|
|
|
- Воронка живёт в **`page_url_path`**, не в `event_type` (в сиде 100% `pageview`).
|
|
- device/geo — **сессионный** контекст уровня `click`, не «свойство пользователя».
|
|
- Модель интенсивности (`_calculate_events_count`, `_hour_factor`) — **сохраняем**;
|
|
переписываем только модель сущностей (`generate_batch`). Текущую реализацию
|
|
инкрементально не чиним.
|
|
|
|
## Suggested skills (для следующей сессии)
|
|
|
|
- **`conventional-commits`** — закоммитить готовые доки (см. git ниже).
|
|
- **`brainstorm-with-docs`** (или `grill-with-docs`) — для follow-up-спеки по
|
|
математике: продолжает тот же стиль (durable-доки + правка CONTEXT/ADR inline).
|
|
- **`tdd`** — на этапе реализации rewrite (у генератора уже есть pytest-набор
|
|
`generator/tests/`).
|
|
- **`adversarial-review`** / **`code-review`** — ревью переписанной модели
|
|
сущностей перед вливанием ветки.
|