Autofix
Автофикс: это pull request, который Polylane открывает, чтобы устранить найденное. Агент сначала расследует, затем пишет изменение в ветке и открывает pull request на GitHub; слияние остаётся за вами.
Что это даёт
Автофиксы начинаются с трёх мест. Вы просите об одном в треде, например «открой pull request, который это исправляет». Прогон исправления находит подтверждённую причину в подключённом репозитории и открывает исправление в том же треде. Или Polylane предлагает его сам, например улучшения наблюдаемости, которые он готовит при первом подключении репозитория.
Как это работает
- Расследование: агент собирает контекст из топологии, телеметрии и затронутого репозитория.
- Ветка: он создаёт ветку от базовой ветки репозитория.
- Исправление: исполнитель пишет изменение и пушит коммиты.
- Pull request: он открывает pull request с описанием того, что было не так и что изменилось, со ссылкой на тред или проблему за ним.
- Ваше ревью: ваше обычное код-ревью и непрерывная интеграция решают судьбу слияния. Закрытие: тоже допустимый исход, и Polylane его записывает.
Статусы
| Статус | Описание |
|---|---|
started | Прогон идёт. |
branch_pushed | Коммиты в ветке, pull request вот-вот откроется. |
approval_required | Рабочее пространство спрашивает перед запуском автоматических исправлений, поэтому этот прогон ждёт, пока кто-то запустит его из его треда. |
pr_opened | Pull request открыт и ждёт вашего ревью. |
merged | Вы слили pull request. |
closed | Pull request закрыт без слияния, вами или Polylane. |
failed | Исполнитель не смог создать исправление. |
no_fix_needed | Агент пришёл к выводу, что менять нечего. |
already_in_flight | Другой прогон или открытый pull request уже покрывает то же исправление. |
quota_exhausted | Рабочее пространство сейчас не может запустить ещё один прогон. |
disabled | Автофикс выключен для рабочего пространства. |
plan_rejected | Запрос отклонён до запуска прогона. |
unreachable | Polylane больше не может читать репозиторий, например после удаления или приостановки GitHub App. |
expired | Прогон застрял дольше своего временного окна и был закрыт. |
Пропущенный прогон можно запустить из его обзора кнопкой Run anyway, истёкший или неудачный кнопкой Run again, а удержанный кнопкой Approve and run. В разделе Settings > Workspace карточка Autofix содержит переключатель Open autofix pull requests для всего рабочего пространства и Fixes Polylane starts on its own, где Ask first удерживает автоматические исправления, пока кто-то их не запустит.
Оставленные открытыми pull request'ы
Pull request, который открывает Polylane, не ждёт вечно. После недели без активности еженедельный обход отправляет одно напоминание по электронной почте и в Slack и оставляет ту же заметку комментарием к pull request; если никого не просили его проверить, просят владельцев кода, который он затрагивает. Pull request, в котором ничего не происходит ещё неделю после напоминания, Polylane закрывает с комментарием, объясняющим причину, а ветка остаётся, так что переоткрытие возвращает изменение как есть.
Pull request'ы, открытые во время подключения репозитория, не попадают под напоминания и закрытия.
Исполнители
Исполнитель: это кодинг-агент, который пишет diff. Собственный исполнитель Polylane не требует настройки; вместо него вы можете направлять автофиксы через кодинг-агент, которым уже пользуетесь:
Подключите Devin, Cursor, Factory или Conductor в разделе Settings > Integrations со своим API-ключом, затем включите Use Devin for all autofixes (или соответствующий переключатель на странице Cursor, Factory или Conductor), чтобы сделать его исполнителем каждого автофикса в рабочем пространстве. Если эта интеграция удалена или выключена, автофиксы возвращаются к исполнителю Polylane.
Где это найти
Читайте автофикс в треде, который его создал. Lineage в боковой панели треда показывает Autofix и его Pull request, а узел автофикса открывает вкладки Overview, Diff, Session, Timeline и Properties. Approve and run, Run again и причина закрытия находятся в его обзоре.
См. также
- Прогоны исправления: прогоны, которые передают подтверждённую причину автофиксу.
- Ревью pull request'ов: проверка, которую получает каждый pull request до слияния.
- Репозитории: подключение кода, в который пишут автофиксы.
- GitHub: подключение хостинга кода, через которое пишут автофиксы.