Files
clickstream-ch-kafka-supers…/.scratch/handoffs/20260719-2229-mentee-path-start.md
T
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

7.5 KiB
Raw Blame History

Handoff: старт редизайна пути менти — спека и пилот GitHub Issues

Дата: 2026-07-19 22:29. Жанр: handoff по ADR-0003 — точка входа в новую фичу на чистой ветке.

Контекст

  • feature/data-generator (146 коммитов) влита в main (0e312b3) и запушена. Перед слиянием закрыта задача 21: баг F1 (необязательные поля формы generator_control требовались как обязательные) починен через Param(None, type=["null", "string"]), .gitignore покрыл артефакты data/*.json, доки (ARCHITECTURE.md, REPO_MAP.md) догнали код. make test (205 + 31) и make lint зелёные.
  • .scratch очищен целиком (решение пользователя 2026-07-19): задачи 0121, PRD, журналы и старые handoff'ы — одноразовые материалы, всё долговечное перенесено в docs/ (ADR 00040006, спеки, runbook startup-history). История доступна в git: см. состояние на 0e312b3, ключевой файл находок — .scratch/generator-model-time-startup-history/hitl-findings.md@0e312b3.

Направление работ: редизайн пути менти

Рамочная модель (из ручного HITL 2026-07-19, подтверждена по launch.py): основной режим менти — import готового артефакта (база), от одного восстановленного состояния две ветки-лабы: next-day (пакетно добавить сутки) и continue (живой поток, оправдывает скорость ×60). backfill в целевой модели — инструмент мейнтейнера для сборки артефакта, не первый шаг менти.

Ориентировочно 4 задачи:

  1. Ядро: эталонный 3-дневный артефакт на профиле daily-wave как база менти через import. Факты: артефакт 6h = 49 МБ raw; xz -9e жмёт 48× (1,1 МБ за 13,5 с); 3 дня ≈ 13 МБ сжатого — кладётся в обычный git. Паттерн-образец: airflow-greenplum-solution (bookings/seed/demo.sql.xz). Открыто: нужен ли артефакту raw_topics или хватит компактного state.
  2. Один учебный профиль: daily-wave (волна, ×60) — учебный, ci (×1, плоский) — служебный для тестов; форма не должна подсовывать ci первым. Перед слиянием проверить, не зависит ли runtime-seam-тест от скорости ×1.
  3. Расписание + инкремент: беспараметрный DAG next-day (удобство менти и пригодность к schedule) + инкрементальные счётчики manifest: сейчас next-day перечитывает всю Kafka-историю с нуля — O(N²) по дням и рост RAM (риск OOM); замер: день 2 = 638 с, узкое место — генерация+пересчёт, не ETL (30 с). Параллелить нельзя (детерминизм), правильный рычаг — накопленное состояние счётчиков в manifest/state.
  4. Баг-фиксы: F5 — быстрый разлогин Airflow и Superset (ротация секрета исключена; копать время жизни сессии/cookie); F4 — JS-ошибка авто-refresh в Airflow Grid (косметика, низкий приоритет).

Отдельная линия (после инфраструктуры): три режима → свои лабы в docs/course/ (import — общая база; next-day — пакетная инкрементальная обработка; continue — потоковый приём).

Пилот GitHub Issues (решение пользователя 2026-07-19)

Новый процесс для этой фичи:

  • Спека редизайна — файлом в репозитории (материал — hitl-findings из истории git, см. выше).
  • Тонкий корневой issue на GitHub со ссылкой на спеку и чекбоксами на дочерние issues; дочерние — полноценные самодостаточные постановки.
  • Triage-метки — пять канонических ролей из docs/agents/triage-labels.md как настоящие метки GitHub.
  • В том же заходе поправить контракт: AGENTS.md и docs/agents/issue-tracker.md сейчас говорят «GitHub Issues не используются» — заменить на правила пилота. Старые задачи не мигрировать (архив в истории git).

Что дальше (порядок; обновлено 2026-07-19 23:0x)

Сделано в тот же вечер: контракт трекера переведён на GitHub Issues (метки созданы), спека написана и проверена свежим взглядом — docs/specs/2026-07-19-mentee-path-redesign.md (источник истины: путь менти, world_init, world_next_day, эталонный мир, 4 дочерних issue). hitl-findings.md восстановлен в .scratch/ как рабочий материал. Термины «мир», «эталонный мир», «три режима менти» — в CONTEXT.md.

Осталось:

  1. Корневой issue + 4 дочерних на GitHub по спеке (раздел «Форма работ»). Багфиксы уже в трекере: #1 (F5, разлогин), #2 (F4, JS Grid). Осталось завести два issue «не забыть»: редизайн лаб курса (отстали от реальности, не заработают) и инкрементальный ETL (техдолг: full_refresh пересчитывает весь мир на каждый world_next_day; растёт с миром; исторический контекст — plans/incremental-etl-v2.md; кандидат в материал лабы про инкрементальную обработку).
  2. Работа по задачам конвейером claude-subagent-playbook.
  3. Решить судьбу локальной ветки feature/data-generator-kimi (пользователь ещё не ответил).

Состояние стенда

Стенд поднят: мир 1,25 суток на профиле ci, model_t_end = 2026-01-02 06:00, live-генератор не запущен, дашборд — Superset id 1. Для новой работы, скорее всего, понадобится чистый прогон (make clean).

Suggested skills

  • claude-subagent-playbook — конвейер задач.
  • conventional-commits — коммиты.
  • research / Context7 — фактура для спеки (формат артефакта, Airflow schedule).