Модуль 10 — Капстоун
Время: 10 часов · Артефакт: labs/10-capstone/
Цель
Пройти полный цикл на реальной задаче: спека → план → шаги → тесты → ревью → мерж → ретро.
Это единственный модуль, где оценивается не отдельный навык, а весь процесс целиком.
Что такое «капстоун»
Capstone (англ., буквально «замковый камень») — верхний клин в арке или своде. Он держит всю конструкцию: пока его не поставили, арка стоит только на временной опалубке. Образование забрало метафору себе.
В академической традиции, прежде всего американской, capstone course или capstone project — финальный курс или проект программы, который делают на выпускном году. Смысл не в новой теме, а в том, чтобы собрать в одно целое всё изученное раньше и показать, что вы доводите работу до результата.
Капстоун этого курса устроен так же: единственная новая тема здесь — весь процесс целиком. Каждую практику по отдельности вы уже прошли в модулях 00–09; здесь вы проходите их подряд на одной реальной задаче, без подсказок и без права перескочить шаг.
Выбор задачи
Подходит задача, которая:
- меняет 3–10 файлов;
- имеет проверяемый результат (тесты/запуск);
- не критична для продакшена (вы работаете в ветке);
- требует хотя бы одного архитектурного решения.
Примеры:
- добавить экспорт отчёта в CSV/JSON с CLI-флагом;
- заменить самописный HTTP-клиент на библиотеку;
- добавить кэш для дорогого вычисления;
- вынести модуль в отдельный пакет с тестами;
- добавить end-to-end тест на сценарий регистрации.
Не подходит: «перепиши всё», «сделай красиво», «добавь ИИ».
Этапы и критерии
1. Спека (1 ч)
По шаблону templates/spec.md. Обязательно:
- контекст и границы;
- 5+ проверяемых требований;
- критерии приёмки в виде команд;
- блок «не входит».
Критерий: однокурсник по спеке может сказать, что именно будет сделано.
2. План (1 ч)
- разбивка на 4–8 шагов;
- для каждого: файлы, критерий проверки, риск;
- план утверждён до кода.
Критерий: каждый шаг ≤ 2 файла, каждый заканчивается проверкой.
3. Реализация (4 ч)
- шаг за шагом, коммит после каждого;
./scripts/check.shзелёный на каждом шаге;- не более 2 итераций на шаг (иначе откат и пересмотр).
Критерий: git log показывает осмысленные шаги; репозиторий зелёный.
4. Ревью (2 ч)
- свой чек-лист из модуля 08;
- второе мнение от другой модели;
- все замечания либо исправлены, либо обоснованно отклонены.
Критерий: заполненный чек-лист + список замечаний и решений.
5. Мерж (1 ч)
- PR с описанием: что, почему, как проверено;
- CI зелёный;
- дифф прочитан целиком.
Критерий: PR смержен (или готов к мержу), без skip и TODO в новом коде.
6. Ретро (1 ч)
По шаблону templates/retro.md:
## Метрики
- Время: план / факт
- Стоимость токенов:
- Число итераций на шаг:
- Найденные на ревью проблемы:
- Баги, пойманные после мержа:
## Что сработало
## Что переделал бы
## Правило, которое забираю
Итоговая таблица оценки
| Этап | Вес | Что проверяется |
|---|---|---|
| Спека | 15% | проверяемость, границы |
| План | 10% | декомпозиция |
| Реализация | 30% | зелёные шаги, размер диффов |
| Ревью | 20% | найдены реальные проблемы |
| Мерж | 10% | чистота, CI |
| Ретро | 15% | честность и выводы |
Проходной балл — 70%.
Защита
10 минут: показать спеку, план, git log, найти в диффе место, где вы отклонили
предложение агента и почему. Последнее — обязательный вопрос.