Commit Graph
81 Commits
Author SHA1 Message Date
ddadminandClaude Opus 4.8 b2ca38a1d2 chore(scratch): handoff закрыт — прогон #7 завершён, PR #25
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 18:18:19 +03:00
ddadminandClaude Opus 4.8 cbf8b2d770 fix(course): правки по итогам слепого ревью лаб 07/08 (#22)
Зачем: два слепых ревью (Codex CODE-1..9, Claude TASK-1..2) и
перепроверки нашли дефекты в лабах и метадоках; финал лабы 08
переделан по решению пользователя.

Что:
- канонический сброс в README курса теперь снимает DAG'и с паузы
  (все создаются на паузе);
- имя дашборда исправлено на «E-commerce Analytics Dashboard»;
- финал лабы 08: вместо мифа «users == sessions на статике» —
  вернувшийся пользователь через границу заморозки и измеренное
  обещание свежести; §2 велит записать границы и время (§6 их требует);
- CONTEXT.md: эталонный мир — замороженный живой,
  4 056 пользователей / 26 083 визита, возвраты уже есть;
- уроки 5–6 ведут в обязательный маршрут, живое упражнение
  урока 5 требует канонический сброс;
- контрактные тесты: убран якорь на удалённую команду; добавленные
  на триаже тесты-цитаты срезаны до устойчивых инвариантов
  (прозаический легаси-жанр — issue #24);
- handoff обновлён до текущего состояния.

Проверка: make test (219 generator + 31 contract) и make lint зелёные;
SQL вернувшегося пользователя проверен на эфемерном ClickHouse 25.1
(на полном наборе — в #23).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 14:48:02 +03:00
ddadminandClaude Opus 4.8 b57a4e2292 docs(course): спека редизайна лаб курса под три режима менти
- Зачем:
  - курс целиком сидит на старом пути backfill и после редизайна
    пути менти (issue #9) не заработает; issue #7 требует постановки
- Что:
  - спека docs/specs/2026-07-23-course-labs-redesign.md: урок 6
    становится обязательным, две обязательные лабы 07 (next-day:
    инкремент и границы дня) и 08 (continue: живой поток и свежесть),
    канонический сброс через import, вердикты по урокам 0-6 и метадокам
  - handoff для продолжения работы в новой сессии
- Проверка:
  - адверсарное ревью спеки против кода и доков: 8 находок внесены
    решениями, повторная проверка ревьюером — все закрыты

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 12:57:57 +03:00
ddadmin 897dfc67bd chore(scratch): убраны обменные файлы прогона #5 и отработавший handoff
- Зачем:
  - фича mentee-path завершена (#9 закрыт), одноразовые артефакты
    конвейера своё отслужили; в дифф PR им попадать незачем.
- Что:
  - удалён каталог .scratch/issue5-run (отчёты ревью и приёмки прогона);
  - удалён handoff 20260722-2222-mentee-path-issue5-midflight.md.
- Проверка:
  - git log: содержимое остаётся в истории (f4971e9, ceb30a9).
2026-07-22 23:52:50 +03:00
ddadmin f4971e94ca docs(scratch): handoff — триаж #5 закрыт, ревью APPROVED, идёт приёмка
- Зачем:
  - зафиксировать состояние конвейера #5 перед долгой живой приёмкой,
    чтобы новая сессия продолжила без потери контекста.
- Что:
  - в handoff добавлена дельта 23:10: обе находки FIXED (фрагменты ID
    с SHA-256-цепочкой), перепроверка линией B — APPROVED;
  - обновлено состояние стенда: им владеет сценарий приёмки;
  - в .scratch/issue5-run добавлены свежие отчёты, перепроверка и
    сценарий приёмки acceptance-issue5.sh.
- Проверка:
  - git show --stat; лог приёмки — до строки SCRIPT_EXIT_CODE=.
2026-07-22 23:11:44 +03:00
ddadminandClaude Fable 5 ceb30a95c0 docs(scratch): handoff дополнен дельтой — триаж #5 в полёте, владелец задачи
- Зачем:
  - пользователь делает compaction прямо сейчас; свежие детали конвейера
    ещё нигде не были записаны.
- Что:
  - дельта: вердикт линии A, запуск триаж-раунда, владелец дерева —
    задача Codex mrwhhml9, остановленный дубль и как проверить дерево.
- Проверка:
  - чтение раздела «Дельта 23:45» свежим взглядом.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:39:21 +03:00
ddadminandClaude Fable 5 1252f4a2c0 docs(scratch): handoff — #5 в середине конвейера, известные находки ревью
- Зачем:
  - подстраховать продолжение работы в новой сессии: #5 реализован,
    но не закоммичен, два ревью в полёте.
- Что:
  - новый handoff с состоянием конвейера #5 (CODE-1 High про лимит
    Kafka, порядок триажа) и уроками приёмки этой сессии;
  - отработанный handoff от 20:29 удалён по ADR-0003;
  - обменные файлы прогона #5 скопированы в .scratch/issue5-run/
    (без коммита — локальная копия на случай потери /tmp).
- Проверка:
  - git show --stat HEAD; чтение handoff свежим взглядом.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:23:07 +03:00
ddadmin 76ff669cf7 docs(scratch): handoff обновлён — фокус на добивание mentee-path (#4, #5)
- Зачем:
  - следующая сессия после compaction продолжает конвейерное
    исполнение фичи; нужен свежий вход без потери уроков приёмки #3.
- Что:
  - новый handoff 20260722-2029: порядок #4#5, уроки приёмки,
    сводная карта работ (карта #10 и бэклог ждут решения #18).
  - удалены два отработанных handoff'а (одноразовые по ADR-0003).
- Проверка:
  - cat .scratch/handoffs/20260722-2029-finish-mentee-path.md
2026-07-22 20:29:48 +03:00
ddadminandClaude Fable 5 65cb88fa4f docs(scratch): handoff — issues 6 и 3 закрыты, карта боевого реализма
- Зачем:
  - зафиксировать точку продолжения: фронтир фичи (#4, #5) и фронтир
    карты (#18 «Модель данных») для следующей сессии.
- Что:
  - handoff 20260722-1913: итоги по issues #6/#3, эталонный мир в git,
    карта wayfinder #10 с тремя закрытыми тикетами, состояние стенда,
    грабли WSL.
- Проверка:
  - не требуется (одноразовый документ по ADR-0003).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 19:14:35 +03:00
ddadmin 5791d42db8 docs(scratch): handoff — багфиксы F5/F4 заведены как issues #1 и #2
- Зачем:
  - handoff должен отражать, что уже в трекере, а что осталось завести.
- Что:
  - список «не забыть» сокращён: #1 и #2 созданы, остались лабы и
    инкрементальный ETL.
- Проверка:
  - gh issue list — два открытых issue.
2026-07-19 23:25:11 +03:00
ddadmin 1f7ed5e932 docs(scratch): в handoff добавлен техдолг инкрементального ETL
- Зачем:
  - full_refresh на каждый world_next_day пересчитывает весь мир —
    с ростом мира это следующее узкое место после счётчиков manifest.
- Что:
  - в список issues «не забыть» добавлен инкрементальный ETL со ссылкой
    на legacy-план plans/incremental-etl-v2.md.
- Проверка:
  - вычитка handoff.
2026-07-19 23:23:40 +03:00
ddadmin 7bc7a128be docs(scratch): handoff обновлён — спека готова, дальше issues
- Зачем:
  - следующая сессия должна стартовать от актуальной точки.
- Что:
  - раздел «Что дальше» переписан: спека и контракт трекера сделаны,
    остались issues и конвейер задач.
- Проверка:
  - вычитка handoff.
2026-07-19 23:21:11 +03:00
ddadmin d6e7a03032 docs(specs): спека редизайна пути менти — мир из артефакта и две ветки
- Зачем:
  - находки ручного HITL 2026-07-19 требовали проектного решения: путь
    менти через backfill медленный, бедный и путаный; нужна база import
    эталонного мира и две ветки роста.
- Что:
  - спека docs/specs/2026-07-19-mentee-path-redesign.md: целевая модель
    (import + next-day + continue), эталонный 3-дневный мир в git (xz),
    переименование пульта в world_init с дефолтом import, отдельный
    world_next_day, инкрементальные счётчики manifest, один учебный
    профиль; форма работ — 4 дочерних issue.
  - CONTEXT.md: термины «мир (стенда)», «эталонный мир», «три режима
    менти».
  - .scratch/hitl-findings.md восстановлен из среза 0e312b3 как рабочий
    материал фичи (до разбора в issues).
- Проверка:
  - вычитка против hitl-findings и решений обсуждения 2026-07-19.
2026-07-19 23:18:17 +03:00
ddadmin de7f62cbab chore(scratch): уборка одноразовых материалов и handoff новой фичи
- Зачем:
  - после слияния feature/data-generator одноразовые материалы .scratch
    (задачи 01-21, PRD, журналы, старые handoff'ы) больше не нужны:
    долговечное живёт в docs/, история — в git (срез 0e312b3).
- Что:
  - удалено всё содержимое .scratch (50 файлов).
  - добавлен handoff 20260719-2229-mentee-path-start.md: направление
    редизайна пути менти (4 задачи) и пилот GitHub Issues.
- Проверка:
  - git show --stat; в .scratch остался только новый handoff.
2026-07-19 22:29:44 +03:00
ddadmin bec56da1c3 fix(airflow): необязательные поля формы generator_control стали необязательными
- Зачем:
  - форма Trigger DAG требовала заполнить все поля: канонический запуск
    «выбрать профиль, остальное пусто» через UI был невозможен (находка F1
    ручного HITL); артефакты backfill (data/*.json, 49 МБ) рисковали
    попасть в коммит.
- Что:
  - пять необязательных Param переведены на Param(None, type=["null",
    "string"]) — идиома необязательного поля, проверено по Context7
    (Airflow 2.10.5); все места чтения уже None-безопасны (or "").
  - контрактный тест дополнен: у необязательных Param есть "null" в type,
    у operation/profile — нет.
  - .gitignore: правило data/*.json (сиды data/*.jsonl остаются под git);
    задача 21 закрыта в .scratch.
- Проверка:
  - make test (205 + 31 passed) и make lint — зелёные.
2026-07-19 22:17:50 +03:00
ddadminandClaude Opus 4.8 91d15e60a0 docs(generator): находки ручного HITL пути менти и handoff
- Зачем:
  - долг ручной HITL-проверки пути менти переносился пятый handoff подряд;
    проверка вскрыла набор находок и наметила редизайн пути менти.
- Что:
  - добавлены находки HITL (F1-F9) с рамочной моделью трёх режимов менти:
    import-база, ветки next-day и continue, под каждую — свой урок/лаба.
  - зафиксированы решения: 3-дневный артефакт на daily-wave, сжатие xz,
    один учебный профиль, беспараметрный next-day, инкрементальные счётчики.
  - добавлен handoff по ADR-0003 с планом раскладки находок в постановки.
- Проверка:
  - чтение .scratch/generator-model-time-startup-history/hitl-findings.md
    и .scratch/handoffs/20260719-2144-hitl-mentee-path-redesign.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-19 21:52:12 +03:00
ddadminandClaude Fable 5 842c1be98c docs(generator): handoff сессии — задача 13 закрыта, дальше расписание
- Зачем:
  - передать контекст новой сессии: конвейер задачи 13 завершён, следующие
    шаги — задача про расписание, HITL-проверка пути менти, уроки плейбука.
- Что:
  - добавлен handoff 20260712-2359 (итоги конвейера, состояние стенда,
    план и отклонения процесса).
  - убран отработанный handoff 20260712-2015 (одноразовый по ADR-0003).
- Проверка:
  - вычитка handoff'а; ссылки на задачу 13 и коммиты f5dee26/540989d.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 00:00:40 +03:00
ddadminandClaude Fable 5 f5dee26eda feat(generator): глагол next-day — следующий модельный день от слепка
- Зачем:
  - режим кормления стенда порциями: менти триггерит «следующий день»,
    видит полный цикл DWH за один шаг (задача 13, вариант 2 — генерация
    от слепка T_end).
- Что:
  - новый ограниченный режим next-day: восстановление мира из state,
    генерация ровно [T_end, T_end+24h), публикация данные -> state ->
    манифест (манифест — точка фиксации, автоотката нет).
  - операция next-day в DAG generator_control: своя предпроверка границы
    вместо clean-guard, идемпотентность через параметр expected_t_end.
  - цепочка границ — накопительное поле boundaries в манифесте, старый
    формат читается как [T0, T_end]; импорт не изменён.
  - новая проверка цепочки (make generated-history-chain-check): непарные
    счётчики и однородность по каждой границе, явный статус нулевого
    стыка, хвост за границей по всем четырём топикам, литералы в UTC
    с микросекундами.
  - документация OPERATIONS.md: глагол, предпроверка, восстановление
    после сбоя, ограничение retention; в задаче 13 — решения двух слепых
    ревью постановки и кода с аргументами отклонений.
- Проверка:
  - make test: 204 теста генератора + 31 контракт корня, зелёные.
  - make generated-history-chain-check: зелёный, 2 внутренние границы,
    непарные счётчики нулевые; учебный цикл: DM 322 -> 10026 -> 19196
    за два next-day подряд.
  - make generated-history-runtime-check (регрессия задачи 20): зелёный.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 23:53:48 +03:00
ddadminandClaude Fable 5 540989d358 docs(generator): постановка задачи 13 доработана после двойного ревью
- Зачем:
  - два слепых ревью постановки (Codex и Claude) вернули CHANGES_REQUIRED:
    guard чистого стенда противоречил доливке, не были заданы механизм
    идемпотентности, точка фиксации, формат цепочки границ и проверки.
- Что:
  - добавлен раздел «Решения по ревью постановки»: next-day как новый
    ограниченный режим, день = [T_end, T_end+24h), предпроверка границы,
    параметр expected_t_end, манифест как точка фиксации, поле boundaries,
    батчевый режим проверки цепочки, расписание вынесено в отдельную задачу.
  - критерии приёмки финализированы (были черновыми), добавлен раздел
    «Границы (что не трогать)», исправлены ссылки на строки кода.
- Проверка:
  - вычитка задачи; факты сверены обоими ревьюерами по коду ветки
    (индексы находок — в обменном каталоге сессии).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 22:30:56 +03:00
ddadmin b475958c99 docs(generator): handoff сессии — задача 20 закрыта, дальше задача 13
- Зачем:
  - зафиксировать состояние для продолжения в новой сессии (ADR-0003).
- Что:
  - handoff: итог конвейера по задаче 20, разблокированная задача 13,
    план рефлексии по расходу контекста в subagent-playbook.
- Проверка:
  - чтение handoff: ссылки на задачу и коммиты корректны, дерево чистое.
2026-07-12 19:40:15 +03:00
ddadmin dab120a07e fix(generator): устранён флаки runtime-гейта стыка backfill/live
- Зачем:
  - гейт generated-history-runtime-check падал через раз: docker compose
    stop убивал генератор SIGKILL'ом посреди batch (SIGTERM не ловился),
    непарные строки маскировались под «смену фактуры» (задача 20).
- Что:
  - генератор грациозно завершается по SIGTERM: текущий batch дописывается
    во все топики с flush и записью history; compose даёт минуту grace.
  - runtime-check ждёт пересекающий визит в STG (предусловие проверки),
    seam-check получил precheck непарных live-строк; в STG-запросах
    закреплён 'UTC' против сдвига наивных меток в поясе сервера.
  - контрактные тесты усилены, задача 20 закрыта, блокер задачи 13 снят.
- Проверка:
  - тесты: 192 passed (generator), 21 passed (контракты);
  - стенд: 3 подряд зелёных make generated-history-runtime-check;
    красный сценарий (искажение referer_url пересекающего визита) валит
    гейт прежним сообщением при нулевых непарных счётчиках.
2026-07-12 19:33:28 +03:00
ddadmin 55a3feb63d docs(generator): развилка фикса задачи 20 решена после ревью постановки
- Зачем:
  - адверсарное ревью показало: генератор не обрабатывает SIGTERM
    (python — PID 1, docker compose stop ведёт к SIGKILL посреди batch),
    а вариант «ждать записи generator_batch_history» гонку не закрывает.
- Что:
  - направление фикса: минимальный SIGTERM-хендлер с дозаписью batch,
    альтернативы отклонены с доводами, bounded live mode вне скоупа.
  - критерии дополнены: красный сценарий обязан ловиться, стабильность
    обосновывается структурно, запрещены вероятностные смягчения.
  - в диагноз внесены механизм обрыва и различие device/geo vs location.
- Проверка:
  - чтение постановки: все находки ревью закрыты решением или доводом.
2026-07-12 18:28:17 +03:00
ddadminandClaude Fable 5 515d5ef73b docs(generator): решена развилка задачи 13, handoff сессии
- Зачем:
  - диагноз задачи 20 снял страх швов (генератор на стыке не ломает),
    и пользователь выбрал вариант реализации next-day;
  - сессия завершается - нужен handoff для продолжения.
- Что:
  - задача 13: выбран вариант 2 (генерация следующего дня от слепка),
    вариант нарезки артефакта отклонён с обоснованием; статус
    ready-for-agent, blocked by задача 20;
  - handoff сессии в .scratch/handoffs/ - итоги проверки пути менти,
    состояние трекера, план (фикс 20 -> задача 13 -> HITL).
- Проверка:
  - чтение задачи 13 и handoff; git status чистый после коммита.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 22:40:29 +03:00
ddadminandClaude Fable 5 98be722808 docs(generator): диагноз флаки-гейта в задаче 20, задача 13 разблокирована
- Зачем:
  - Codex-диагноз нашёл корень нестабильности runtime-гейта: гонка
    остановки live-генератора, batch публикуется по топикам без
    атомарности, seam-SQL маскирует непарные строки под смену фактуры;
  - попутно закрыт второй открытый вопрос задачи 13 - запасная ветка
    рождения визита уже хранит донора (фикс задачи 09).
- Что:
  - задача 20: диагноз с судьбой трёх гипотез, направление фикса
    (управляемая остановка live + precheck непарных строк), статус
    ready-for-agent;
  - задача 13: вопрос про fallback-ветку закрыт, статус ready-for-human
    (осталось решение по развилке реализации).
- Проверка:
  - утверждение про донора перепроверено по generation.py:194-209;
    эмпирика диагноза - в логах прогонов, пути в задаче 20.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 22:29:42 +03:00
ddadminandClaude Fable 5 a3ac4b4c46 docs(generator): переписана задача 13 и заведён баг флаки-гейта
- Зачем:
  - рамка задачи 13 пересмотрена: ценность доливки — кормление стенда
    дневными батчами (урок и имитация жизни), а не удлинение истории;
  - прогон пути менти 2026-07-07 показал, что runtime-гейт стыка
    backfill->live нестабилен — красный/зелёный через раз.
- Что:
  - задача 13 переписана под глагол next-day в generator_control:
    сценарии, развилка реализации (срез артефакта против доливки от
    слепка), закрыт вопрос про импорт частями (сейчас всё или ничего);
  - добавлена задача 20 про нестабильную runtime-проверку стыка с
    эмпирикой двух прогонов и гипотезами для диагноза.
- Проверка:
  - два прогона make generated-history-runtime-check (красный 8/19,
    затем зелёный) — зафиксированы в задаче 20.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-07 21:57:38 +03:00
ddadmin 59b3e106dd docs(generator): расширен handoff после issue 19
- Зачем:
  - следующей сессии нужен актуальный handoff после закрытия issue 19 и внешнего approve.
- Что:
  - добавлены итоги коммита 9b0b063, проверки make test и make lint.
  - зафиксированы ручные HITL-проверки, suggested skills и обновлённые открытые риски.
- Проверка:
  - git diff --check.
2026-07-05 22:53:37 +03:00
ddadmin 9b0b063fed fix(generator): усилены проверки startup-history
- Зачем:
  - коммит-гейт не запускал корневые контрактные тесты, а часть подтверждённых обходов могла снова смешать разные миры генератора.
- Что:
  - добавлены цели make test, make lint и contract-test с тихим pytest-выводом через Docker.
  - закрыты обходы через generator-reset, неизвестную версию state и fail-open проверку DM-витрин.
  - усилены поведенческие контракты CHECK_LIVE_SEAM, профиля manifest и pause-check etl_pipeline; обновлены документы и issue 19.
- Проверка:
  - make test; make lint; git diff --check.
2026-07-05 22:46:53 +03:00
ddadmin 0faa5cc219 docs(generator): добавлен handoff после цепочки 15-18
- Зачем:
  - coordinator-loop требует handoff для внешнего кросс-линейного ревью.
- Что:
  - добавлена записка с индексом изменений, ревью и открытыми рисками.
  - журнал фиксирует завершение финального review и handoff.
- Проверка:
  - staged-состав содержит только handoff и журнал.
2026-07-05 22:13:31 +03:00
ddadmin 8e1c7330e1 docs(generator): уточнены проверки startup-history после review
- Зачем:
  - backfill-only сценарии не должны советовать проверку, которая требует live seam.
- Что:
  - для backfill/import-only путей указан CHECK_LIVE_SEAM=0.
  - live-проверка вынесена в generated-history-runtime-check или явно описанный live-путь.
  - журнал дополнен финальным review и rerun.
- Проверка:
  - финальный chain review rerun APPROVED; git diff --check.
2026-07-05 22:12:09 +03:00
ddadmin 2778eae9f0 docs(generator): добавлена задача на test и lint цели
- Зачем:
  - коммит-гейт coordinator-loop требует единых быстрых команд проверки.
- Что:
  - добавлен issue 19 для make test и make lint.
  - PRD обновлён после закрытия задач 15-18.
  - журнал фиксирует follow-up перед финальным review.
- Проверка:
  - staged-состав содержит только PRD, журнал и issue 19.
2026-07-05 22:03:34 +03:00
ddadmin 6d64f3909a docs(generator): закрыта задача 18 в трекере
- Зачем:
  - coordinator-loop отделяет рабочие изменения от статусов и журнала.
- Что:
  - задача 18 переведена в done с закрытыми критериями.
  - журнал дополнен ревью, проверками чистого маршрута и коммитом.
- Проверка:
  - staged-состав содержит только issue 18 и журнал.
2026-07-05 22:01:44 +03:00
ddadmin 67313494d9 docs(generator): закрыта задача 17 в трекере
- Зачем:
  - coordinator-loop отделяет рабочий срез от статусов и журнала.
- Что:
  - задача 17 переведена в done с закрытыми критериями.
  - журнал дополнен ревью, bounded runtime gate и коммитом.
- Проверка:
  - staged-состав содержит только issue 17 и журнал.
2026-07-05 21:33:35 +03:00
ddadmin 9804d0beae docs(generator): закрыта задача 16 в трекере
- Зачем:
  - coordinator-loop отделяет рабочие изменения от статусов и журнала.
- Что:
  - задача 16 переведена в done с закрытыми критериями.
  - журнал дополнен ревью, стендовым gate и коммитами.
- Проверка:
  - staged-состав содержит только issue 16 и журнал.
2026-07-05 20:47:41 +03:00
ddadmin 108053bfc2 docs(generator): закрыта задача 15 в трекере
- Зачем:
  - coordinator-loop требует отделять рабочий срез от статусов и журнала.
- Что:
  - задача 15 переведена в done с закрытыми критериями.
  - журнал дополнен происхождением ревью и коммит-гейтом.
- Проверка:
  - git status --short и staged-состав перед коммитом.
2026-07-05 20:21:55 +03:00
ddadmin 525bd8cabf docs(issues): оформлены задачи кросс-ревью генератора
- Зачем:
  - нужен готовый набор задач для закрытия находок кросс-линейного ревью.
- Что:
  - добавлены issue 15-18 по границе миров, свежему стенду, проверкам и курсу.
  - обновлены навигация PRD и блокировка будущей доливки истории.
  - уточнены риски fallback, Superset sync и простоя daily-wave.
- Проверка:
  - git diff --cached --check.
2026-07-05 01:00:39 +03:00
ddadminandClaude Fable 5 749ae91a07 docs(handoff): кросс-линейное ревью цепочки генератора
- Зачем:
  - зафиксировать результат кросс-прохода другой родословной по
    c672ed0..ec815ce для передачи в багфикс-цепочку.
- Что:
  - отчёт: 1 critical, 5 high, 10 medium, 4 low; четыре сквозных семейства
    (смешение миров, стенд без live, ложнозелёные проверки, чистый клон).
  - маршрутизация находок и предложение порядка багфикс-цепочки.
- Проверка:
  - находки доказаны исполнением: мутационные тесты, compose-эксперимент,
    зонды на сиде, Context7 по Airflow 2.10.5.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-05 00:03:44 +03:00
ddadmin 549ce0c00d docs(handoff): добавлен независимый ревью-проход в handoff цепочки
- Зачем:
  - следующий шаг handoff — независимый ревью диапазона c672ed0..HEAD;
    результат нужно зафиксировать для продолжения в новой сессии.
- Что:
  - добавлен раздел «Независимый ревью-проход» (свежий взгляд, без субагентов):
    вердикт, прогнанные тесты 172+5, находки по задачам, косметические мелочи.
  - обновлены «Открытые риски» и «Следующий шаг»: остаётся HITL-приёмка и
    решение по задаче 13.
- Проверка:
  - git show --stat HEAD; ревью-раздел читается в handoff.
2026-07-04 23:58:09 +03:00
ddadmin ec815cea82 docs(handoff): добавлен handoff цепочки генератора
- Зачем:
  - нужен обязательный handoff перед выходом из coordinator-loop.
- Что:
  - зафиксированы коммиты, происхождение ревью и отклонения процесса.
  - перечислены открытые риски, ручная приёмка и следующий шаг по issue 13.
- Проверка:
  - git diff --cached --check.
2026-07-04 23:13:17 +03:00
ddadmin f8b419d84d docs(generator): закрыты находки финального ревью цепочки
- Зачем:
  - финальный review должен видеть согласованные PRD, issue, курс, Superset и архитектурные документы.
- Что:
  - обновлены PRD, чекбоксы закрытых issue и журнал coordinator-loop.
  - синхронизированы архитектура, карта репозитория, CONTEXT и курс со startup-history-путём.
  - убраны старые маркеры Superset-геокарты после перехода на Top Countries.
- Проверка:
  - rg-проверки финального review по PRD, issue и Superset-маркерам.
  - git diff --cached --check.
2026-07-04 23:09:15 +03:00
ddadmin 3d4e13c541 docs(issues): закрыта задача 08 по миграции курса
- Зачем:
  - нужно зафиксировать состояние трекера после рабочего коммита issue 08.
- Что:
  - задача 08 переведена в done.
  - журнал coordinator-loop дополнен ревью-гейтом и коммит-гейтом.
- Проверка:
  - git diff --cached --check.
2026-07-04 22:23:15 +03:00
ddadmin de938edb06 docs(issues): закрыта задача 10 по гео-графику
- Зачем:
  - нужно зафиксировать состояние трекера после рабочего коммита issue 10.
- Что:
  - задача 10 переведена в done.
  - журнал coordinator-loop дополнен ревью-гейтом и коммит-гейтом.
- Проверка:
  - git diff --cached --check.
2026-07-04 22:06:36 +03:00
ddadmin 0f435d70fd docs(issues): закрыта задача 09 по фактуре визита
- Зачем:
  - нужно зафиксировать состояние трекера после рабочего коммита issue 09.
- Что:
  - задача 09 переведена в done.
  - журнал coordinator-loop дополнен двумя кругами гейтового ревью и коммит-гейтом.
- Проверка:
  - git diff --cached --check.
2026-07-04 21:47:00 +03:00
ddadmin 0cbfe9b32e docs(issues): закрыта задача 14 по быстрому профилю
- Зачем:
  - нужно зафиксировать состояние трекера после рабочего коммита issue 14.
- Что:
  - задача 14 переведена в done.
  - журнал coordinator-loop дополнен ревью-гейтом и коммит-гейтом.
- Проверка:
  - git diff --cached --check.
2026-07-04 21:18:30 +03:00
ddadmin 200bb82890 docs(issues): закрыта задача 12 по пульту генератора
- Зачем:
  - нужно зафиксировать состояние трекера после рабочего коммита issue 12.
- Что:
  - задача 12 переведена в done.
  - журнал coordinator-loop дополнен ревью-гейтом и коммит-гейтом.
- Проверка:
  - git diff --cached --check.
2026-07-04 21:07:13 +03:00
ddadminandClaude Fable 5 c672ed0329 docs(issues): дооформлены задачи 12 и 14, обновлён граф бэклога генератора
- Зачем:
  - подготовить цепочку 12 -> 14 -> 09 -> 10 -> 08 к передаче в coordinator-loop:
    задаче 12 не хватало решений после 07 и 11, задача 14 родилась из обсуждения
    учебного UX (суточная волна вживую).
- Что:
  - issue 12 (DAG-пульт): решения 2026-07-04 — без Docker-доступа из Airflow,
    операции как Python-код генератора в тасках, генератор без автостарта,
    границы пульта, предпроверки чистоты (топики + STG), ожидание ETL перед
    check; учтены находки адверсарного ревью и ревью Codex.
  - issue 14 (новая): профиль daily-wave переводится на speed=60 при тике 1 с —
    модельный час за настенную минуту без изменения фактуры мира.
  - issue 08: мягкие зависимости от 14 и 09 (артефакт курса рождается после
    них), режим ревью; PRD: задача 14 в списке и графе, 12 помечена дооформленной.
- Проверка:
  - вычитка: статусы задач ready-for-agent, порядок в PRD и Blocked by
    согласованы; mermaid-граф рендерится.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-04 20:42:46 +03:00
ddadmin 0a240e3077 docs(agents): закрыта цепочка генератора
- Зачем:
  - нужно зафиксировать итог coordinator-loop и обновить порядок оставшихся задач.
- Что:
  - PRD обновлен после завершения issue 07 и 11.
  - журнал дополнен финальным review и диагностикой nested reviewer tools.
- Проверка:
  - git diff --cached --check.
2026-07-04 19:01:14 +03:00
ddadmin 5081319651 docs(agents): обновлен журнал coordinator-loop
- Зачем:
  - нужен след ревью и коммит-гейта по issue 11.
- Что:
  - добавлены записи о worker-е, code review и коммите issue 11.
- Проверка:
  - git diff --cached --check.
2026-07-04 18:51:41 +03:00
ddadmin 4f8f992363 feat(generator): добавлены профили запуска
- Зачем:
  - запуск генератора должен быть понятным перед будущим DAG-пультом.
- Что:
  - добавлены глаголы запуска backfill, continue и reset.
  - добавлены профили ci и daily-wave с расчётом длительности истории.
  - обновлены runbook и документы запуска под профильный интерфейс.
- Проверка:
  - uv run --with-requirements generator/requirements.txt pytest generator/tests -q.
  - bash -n scripts/run_generator.sh scripts/export_startup_history_artifact.sh scripts/import_startup_history_artifact.sh scripts/run_generated_history_analytics.sh.
  - PROFILE=daily-wave COMPOSE_BIN=true bash scripts/run_generator.sh backfill.
2026-07-04 18:51:10 +03:00
ddadmin d2899e9ee3 docs(agents): добавлен журнал coordinator-loop
- Зачем:
  - нужен воспроизводимый след review gate и коммит-гейта по цепочке 07 -> 11.
- Что:
  - добавлен журнал coordinator-loop для generator-model-time-startup-history.
- Проверка:
  - git diff --cached --check.
2026-07-04 18:24:27 +03:00
ddadmin 3c38465d89 feat(generator): добавлен артефакт стартовой истории
- Зачем:
  - чистый стенд должен восстанавливать стартовую историю без повторной генерации.
- Что:
  - добавлены export/import артефакта через Kafka и compact-топики.
  - добавлена manifest-aware сверка ClickHouse и защита от смешения state.
  - добавлен runbook использования стартовой истории.
- Проверка:
  - uv run --with-requirements generator/requirements.txt pytest generator/tests -q.
  - bash -n scripts/check_startup_history_manifest.sh scripts/export_startup_history_artifact.sh scripts/import_startup_history_artifact.sh.
  - git diff --check.
2026-07-04 18:23:54 +03:00