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>
This commit is contained in:
2026-07-23 12:57:57 +03:00
co-authored by Claude Opus 4.8
parent 48ca1c4f72
commit b57a4e2292
2 changed files with 269 additions and 0 deletions
@@ -0,0 +1,50 @@
# Handoff: редизайн лаб курса (issue #7)
Дата: 2026-07-23. Ветка: `feature/course-labs-redesign` (создана, коммитов нет).
Одноразовый документ для продолжения работы в новой сессии (ADR-0003).
## Состояние
Работа идёт по плейбуку `/claude-subagent-playbook` (оркестратор Claude,
исполнитель Codex, слепые ревью). Пройдено:
1. **Аудит курса против стенда** — субагентом; отчёт (EN):
`/tmp/claude-1000/-home-dementev-sources-clickstream-ch-kafka-superset-demo/28f16040-6abd-4d92-a5b1-71ffd4ebcb99/scratchpad/audit-course-vs-stand.md`
(при потере scratchpad не критично: главное перенесено в спеку).
2. **Штурм педагогики лаб** с пользователем (`/brainstorm-with-docs`);
конспект решений (EN): тот же каталог, `brainstorm-labs-design.md`.
3. **Спека написана**`docs/specs/2026-07-23-course-labs-redesign.md`
(источник истины: маршрут, ядра лаб 07/08, вердикты по урокам 0–6 и
метадокам, границы, проверка). Ещё НЕ закоммичена.
## Ключевые решения (детали — в спеке)
- Один PR на всю работу; дочерних issues нет, #7 — единственный.
- Урок 6 (Superset) становится обязательным; лабы 07 (next-day) и
08 (continue) — обязательные, после урока 6.
- Сброс для лаб и всего курса: чистый стенд + повторный `import`.
- Цифры уроков сверяются на живом стенде после `import` (финальный шаг).
## Следующие шаги (конвейер плейбука)
1.**Адверсарное ревью спеки** — Claude-субагент (deep-reasoner, без
контекста оркестратора), проверка спеки против кода/доков; вердикт
файлом в scratchpad. Этап «постановка» — самый дорогой для тихой
ошибки.
2. Триаж находок → правки спеки → коммит спеки в ветку
(`/conventional-commits`, docs(course)).
3. Обновить issue #7: ссылка на спеку + чек-лист шагов.
4. Самодостаточный файл-задача для Codex (EN, в scratchpad) → реализация
`codex exec` фоном → саморевью → два слепых ревью кода → триаж →
сверка цифр на живом стенде → один PR.
## Подсказки для агента
- Скиллы: `/claude-subagent-playbook` (рабочий конвейер),
`/conventional-commits` (коммит), `/ai-text-lint` (тексты уроков перед
финалом — требование LESSON_STANDARD §2).
- Память проекта: субагентам модель/effort задавать явно; фоновым
запускам — ScheduleWakeup-подстраховка; о каждом запуске сообщать
пользователю (этап + чего ждём).
- Пользователь планирует `/compact` после ревью спеки — вся фактура
должна жить в файлах, не в контексте.