docs(generator): добавлена мат-спека модели и исправлен профиль сида
- Зачем:
- закрыть Open questions спеки формы доработки перед передачей на
реализацию; адверсариальное ревью показало, что прежние ориентиры
(популяция/паузы/интенсивность) взаимно несовместимы, а документы
опираются на неверный факт о сиде («1..7 событий на визит»).
- Что:
- добавлена docs/specs/2026-06-10-generator-math-model.md: марковская
цепочка по страницам, формула связи «популяция-интенсивность-пауза»
(λ по умолчанию 30/мин), кулдаун возврата, правило 30 минут на рестарт,
критерии приёмки.
- в CONTEXT.md добавлен профиль сид-датасета (полный замер: длины визитов
1..27, медиана 10, конверсия 25%, петли и события после /confirmation)
и исправлено ложное «разброс времени внутри click_id <= 1 мин».
- исправлен факт «1..7 событий» в KNOWN_ISSUES.md и ADR-0004; критерии
Validation спеки формы доработки приведены к фактам сида.
- Проверка:
- перекрёстные ссылки между спеками/ADR/CONTEXT.md открываются; цифры
профиля сида воспроизводятся скриптом подсчёта по полным data/*.jsonl.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
bce1ded9c4
commit
6efa031023
@@ -49,9 +49,10 @@
|
||||
общим device/geo), а не штампуется на каждое событие.
|
||||
- **Время событий внутри сессии монотонно растёт** (правдоподобный путь по
|
||||
страницам), а не равно `now()` для всего батча.
|
||||
- **Правдоподобная воронка** по `page_url_path`: затухающая последовательность
|
||||
страниц (`/home → … → /confirmation`), где до терминального шага доходит
|
||||
правдоподобно малая доля — согласованно с дашбордом и сидом.
|
||||
- **Правдоподобная воронка** по `page_url_path`: путь по страницам
|
||||
(`/home → … → /confirmation`), где число визитов затухает от шага к шагу,
|
||||
а до последнего шага воронки доходит меньшинство (в сиде ~25%) —
|
||||
согласованно с дашбордом и сидом.
|
||||
- Сохранена модель интенсивности (жизнеподобные колебания нагрузки).
|
||||
- Встраивается в курс как **урок 7 «Система живёт»**, сосуществует с bootstrap-сидом
|
||||
и уроками 0–6.
|
||||
@@ -98,8 +99,9 @@
|
||||
3. **События сессии.** Сессия порождает 1..M событий, разделяющих `click_id`,
|
||||
**упорядоченных по монотонно растущему времени**, образующих правдоподобный
|
||||
путь по воронке страниц (`page_url_path`: `/home → … → /confirmation`), где до
|
||||
терминального шага доходит малая доля. (Вводить ли разнообразие `event_type`
|
||||
сверх `pageview` — открытый вопрос, см. ниже.)
|
||||
последнего шага воронки доходит меньшинство визитов (~25%, как в сиде).
|
||||
(Вводить ли разнообразие `event_type` сверх `pageview` — открытый вопрос,
|
||||
см. ниже.)
|
||||
4. **Интенсивность.** Поверх иерархии работает сохранённая модель интенсивности —
|
||||
сколько событий и когда (Poisson + дневной коэффициент + jitter).
|
||||
|
||||
@@ -136,11 +138,14 @@
|
||||
|
||||
- `uniqExact(user_domain_id) < uniqExact(click_id) < count(event_id)` —
|
||||
пирамида не вырождена (есть возвраты и мультисобытийные сессии).
|
||||
- Внутри одного `click_id` — несколько событий с **возрастающим** `event_ts`.
|
||||
- У `click_id` с несколькими событиями `event_ts` строго **возрастает**;
|
||||
мультисобытийные визиты составляют заметную долю потока (одностраничные
|
||||
визиты-отказы допустимы и правдоподобны).
|
||||
- Один `click_id` принадлежит ровно одному `user_domain_id`; у пользователя
|
||||
бывает несколько `click_id`.
|
||||
- Воронка по `page_url_path` затухает (доля доходящих до `/confirmation`
|
||||
правдоподобно мала), терминальный шаг — `/confirmation`.
|
||||
- Воронка по `page_url_path` затухает от шага к шагу; доля визитов, доходящих
|
||||
до `/confirmation`, согласована с сидом (~25%). `/confirmation` — последний
|
||||
шаг воронки, но визит может продолжаться и после него (как в сиде).
|
||||
- Поток крутится на слабом железе при дефолтном rate без деградации стенда.
|
||||
- `GEN_SEED` даёт воспроизводимый поток.
|
||||
|
||||
@@ -157,6 +162,12 @@
|
||||
|
||||
## Open questions (→ follow-up-спека по математике)
|
||||
|
||||
> **Закрыто 2026-06-10:** все вопросы ниже решены в
|
||||
> [спеке математической модели](./2026-06-10-generator-math-model.md)
|
||||
> (распределения, ротация популяции, инвариант пауз вместо session-timeout,
|
||||
> активные сессии как состояние, персистентность, воспроизводимость;
|
||||
> `event_type` остаётся 100% `pageview`). Список сохранён для истории.
|
||||
|
||||
- Конкретные распределения: события на сессию, сессии на пользователя за период,
|
||||
межсессионные интервалы.
|
||||
- **Вводить ли разнообразие `event_type`** (purchase/add_to_cart/click) сверх
|
||||
|
||||
Reference in New Issue
Block a user