Ревью pull request'ов
Большинство инцидентов начинается с изменения. Polylane проверяет каждый pull request в подключённом репозитории на фоне production-ресурсов, в которые он деплоится, и публикует один комментарий, который говорит «pass» или «fail».
Что это даёт
Агент читает diff и живые метрики, логи и открытые проблемы ресурсов, в которые деплоится репозиторий, затем решает, может ли изменение навредить production. Вы получаете один комментарий к pull request, необязательную проверку Polylane production impact и тред в консоли с полным анализом.
Как это работает
- Открытие pull request в ветку по умолчанию, push в него или пометка «ready for review» запускает ревью его head-коммита. Черновики не проверяются.
- Следующий push заменяет ревью в процессе, так что оценивается только последний коммит.
- Изменения, затрагивающие только документацию, тесты или файлы CI, проходят без расследования.
- Polylane идёт по рёбрам деплоя репозитория к его production-ресурсам или, когда их нет, проверяет на фоне облачных аккаунтов рабочего пространства в целом.
- Агент расследует в треде и записывает вердикт
passилиfail. - Один комментарий на pull request редактируется при каждом ревью. Вердикт «fail» читается как Hold this merge с уровнем влияния и находкой; «pass» читается как Production impact unlikely или сообщает, ожидается ли, что исправление обнаруженной проблемы её закроет. Когда следующий push устраняет риск, комментарий возвращается к «pass» и говорит об этом.
Агент также может предложить улучшения наблюдаемости: одним пакетным ревью с комментариями-предложениями или стековым pull request. На вердикт они никогда не влияют.
Действия по ревью
Упомяните @polylane в комментарии к pull request, и Polylane ответит в том же разговоре; не участники вместо этого получают заметку о доступе.
| Вы просите | Что происходит |
|---|---|
| Ответить на вопрос | Агент отвечает из треда ревью, имея перед собой доказательства. |
| Посмотреть ещё раз | Агент снова проверяет последний push и пересматривает вердикт. |
| Исправить | Polylane запускает прогон исправления и открывает стековый pull request в ветку этого pull request со ссылкой из комментария. |
Вкладка Changes репозитория в консоли перечисляет каждое ревью. При «fail» доступны Fix with Polylane, которая запускает тот же прогон исправления, и Dismiss, когда риск не применим: pull request продолжает проверяться, но больше не получает комментариев, пока вы не нажмёте Restore.
| Статус | Описание |
|---|---|
| In review | Polylane проверяет последний push. |
| Flagged | Ревью нашло риск для production. |
| Passed | Рисков для production не найдено. |
| Resolved | Следующий push устранил риски. |
| Dismissed | Участник отклонил ревью; pull request больше не получает комментариев. |
Настройка
Ревью включены для каждого подключённого репозитория. Settings > Pull request reviews выключает их для всего рабочего пространства и задаёт, доступны ли треды ревью тем, кто смотрит pull request. В разделе Settings > Repositories вкладка Settings репозитория добавляет три поля.
| Поле | Описание |
|---|---|
| Review pull requests for production impact | Выключает ревью только для этого репозитория. |
| Pull request review instructions | Свободный текст, который агент читает при каждом ревью: критичные для деплоя пути или вопросы, которые уже закрывают другие проверки. |
| Block merging on production concerns | Публикует проверку Polylane production impact на каждом проверенном pull request; при риске она падает. Включено по умолчанию. Сделайте её обязательной в branch protection, чтобы блокировать слияние. |
Проверка также завершается на коммитах merge queue, поскольку pull request был проверен до попадания в очередь. Вердикт «fail» может отправить письмо Production Concern Found, выключенное по умолчанию в разделе Уведомления.
Замечания по планам
Каждый план включает месячное число ревью pull request'ов; квота плана Free указана на странице Биллинг и использование, а участники получают письмо, когда она подходит к концу. Сверх квоты консоль записывает pull request как Production impact not verified, и в GitHub ничего не публикуется.
См. также
- Репозитории: подключение репозитория и привязка его ресурсов.
- Прогоны исправления: как тред ревью выносит вердикт.
- Autofix: pull request'ы, которые открывает прогон исправления.
- Уведомления: письмо, которое может отправить неудачное ревью.
Проблемы
Каждая неполадка, которую Polylane обнаруживает или получает из вашего алертинга, становится одной проблемой, которую ведёт один прогон исправления, а его тред рассказывает всю историю.
Advisories
Рекомендации по отдельным ресурсам о неверной конфигурации, рисках для устойчивости и пробелах в наблюдаемости, каждая с исправлением, которое можно передать агенту.