#DeksdenFlow - 6, Protocol, Этап Review and Merge
⚪️ Выполнение содержательной части нашего протокола закончено, агент реализовал все запланированные шаги, изменения закоммичены и лежат в worktree.
▶️ Далее наша задача - влить эти изменения в основную ветку main. Сложности тут могут быть стандартные: за время, пока отрабатывал протокол, вы могли внести другие изменения в ветку main, и синхронизация требует типового процесса merge.
🟢 Более того: вся эта свистопляска с git и была затеяна ради возможности параллельно вести много доработок! Пока выполняется реализация какого то протокола, вы можете стартовать с другими протоколами, и также параллельно их вести!
Например, 1-2 протокола идут у вас в режиме "продолжай работу по плану протокола!", а вы третью доработку обсуждаете с агентом в режиме планирования. Это штатная возможность системы, даже её основная задача - обеспечивать параллельную доработку.
▶️ Для проведения merge мы берен новый контекст, берём промпт "review and merge", проставляем в нем номер протокола, и запускаем этим промптом в агента.
‼️ Важно: CWD этапа merge - это обычная папка вашего проекта, ничего менять не надо, берём стоковый контекст.
Получив промпт, агент будет действовать:
* загрузит файлы протокола, ознакомится с ними:
- сделает файлы для лога этапа merge
▶️ Этап merge работает на верхнем уровне так:
- шаг 1-m: сначала прогоняет "облачные" проверки, которые настроены в вашем ci/cd на github (те самые checks) - если их нет, то ок, этап пройден
- **шаг 2-m:**потом прогоняем внимательно все локальные проверки
- обязательно typecheck / lint
- текущие тесты
- сборку build проекта (это не делается после каждого шага, потому что частично реализованные доработки могут мешать сборке системы)
- если что то не проходит, скажите агенту исправлять.
- шаг 3-m: далее делаем ревью полноты: сверяем реализацию с планом
- шаг 4-m: далее - делаем merge, при необходимости решая конфликты.
- ‼️ архив протоколов может помочь агенту грамотно провести сложный merge - он прочитает последние протоколы, и поймёт какие исправления были внесены, как их корректно слить с нашими
- шаг 5-m: финиш: чистим систему, удаляем рабочее дерево и ветки из git.
▶️ Как правило, мне хватало одного контекста чтобы провести merge. Допускаю, что при большом объёме правок в связи с решением merge-конфликтов может потребоваться новый контекст для продолжения работы - тогда есть промпт "review-merge resume"
🏁 Поздравляю! Если вы читаете это - вы закончили работу с протоколом, успешно влив изменения из рабочего дерева обратно в main
Post #207
510
- 🔥 4