Розслідування та виправлення

Автовиправлення

Написані агентом виправлення надходять як pull request у ваш репозиторій. Ви переглядаєте і зливаєте; Polylane нагадує вам і прибирає те, чого ніхто не торкається.

Автовиправлення: це pull request, який Polylane відкриває, щоб вирішити щось знайдене. Агент спершу розслідує, потім пише зміну в гілці та відкриває pull request на GitHub; злиття залишається за вами.

Що це дає

Автовиправлення починаються з трьох місць. Ви просите про нього в треді, наприклад «відкрий pull request, який це виправляє». Запуск виправлення знаходить підтверджену причину в підключеному репозиторії і відкриває виправлення в тому самому треді. Або Polylane пропонує його самостійно, як-от покращення спостережуваності, які він готує, коли репозиторій уперше підключено.

Як це працює

  1. Розслідування: агент збирає контекст із топології, телеметрії та ураженого репозиторію.
  2. Гілка: він створює гілку від базової гілки репозиторію.
  3. Виправлення: виконавець пише зміну і надсилає коміти.
  4. Pull request: він відкриває pull request з описом того, що було не так і що змінилося, зі зв'язком із тредом або проблемою, що стоять за ним.
  5. Ваш перегляд: ваш звичайний code review та безперервна інтеграція вирішують долю злиття. Закриття: це прийнятний результат, і Polylane його фіксує.

Статуси

СтатусОпис
startedЗапуск триває.
branch_pushedКоміти в гілці, і pull request ось-ось відкриється.
approval_requiredРобочий простір запитує дозвіл перед початком автоматичних виправлень, тому цей запуск чекає, доки хтось не почне його з треду.
pr_openedPull request відкрито, і він чекає на ваш перегляд.
mergedВи злили pull request.
closedPull request закрито без злиття, вами або Polylane.
failedВиконавець не зміг створити виправлення.
no_fix_neededАгент дійшов висновку, що змінювати нічого.
already_in_flightІнший запуск або відкритий pull request уже покриває те саме виправлення.
quota_exhaustedРобочий простір не може почати ще один запуск зараз.
disabledАвтовиправлення вимкнено для робочого простору.
plan_rejectedЗапит відхилено до початку запуску.
unreachablePolylane більше не може читати репозиторій, наприклад після видалення або призупинення 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: підключення хостингу коду, через яке пишуть автовиправлення.