PR Channels

Get started

PR Channels bring your code review conversations directly into Slack, one ephemeral channel per pull request, so your team can collaborate where they already communicate. By moving the discussion out of the Git provider and into Slack, PR Channels reduce response times, leading to faster reviews and shorter cycle time.

Beyond speed, PR Channels improve the review experience with some developer-focused features:

  • ✨ AI summaries and suggestions give reviewers a quick, high-level overview, cutting down on context-switching when joining a review mid-way.
  • πŸ” Real-time alerts for key events like new comments, approvals, or CI results keep everyone in the loop.
  • ⏰ Smart reminders nudge the right people when a PR is at risk of going stale.
  • πŸ“Œ Bookmarks provide quick access to key links like the PR discussion, CI status, and code changes page.
  • ⚑ Git actions in Slack let you approve or add reviewers without leaving the channel.

Note: AI Analysis can make mistakes. Consider verifying important information and don't apply suggestions blindly.


Preparation

To use PR Channels, you need to have Pullpo integrated with both your Git provider and your Slack workspace. If you haven’t completed these steps yet, please follow these detailed instructions to get set up.


PR Channel lifecycle

Opening

PR channels are created automatically when:

  • A new pull request is opened (or a draft PR is marked ready for review) if at least one of: the author, the assignees or the reviewers; has its Git user linked to a Slack user (as described in the setup).
  • A new reviewer or assignee with a Git ↔ Slack association is added to an open pull request, if the channel has not been previously created.

A PR channel can be created when a new draft pull request is opened (instead of when it becomes ready for review) by toggling the setting "Draft PRs" in the settings page, which is disabled by default.

Closing

By default, PR channels are archived automatically when:

  • Its associated pull request gets merged.
  • Its associated pull request gets closed.

Automatic archiving can be disabled in the settings page.

Re-opening

When a closed pull request is reopened, if its corresponding Slack channel has been archived, Pullpo cannot unarchive it automatically. However, it will send a notification prompting the user to unarchive the channel manually, and will resume the conversation once the channel is active again.


PR Channel components

Title

You can configure a naming template that PR channel titles will follow.
By default: _pr_$REPONAME$_$PRTITLE$.

The following are the available template variables:

VariableValue
$REPONAME$Name of the repository of the pull request.
$PRTITLE$Title of the pull request.
$PRNUMBER$Pull request number within its repository.
$SOURCEBRANCH$Source branch (or HEAD) of the pull request.
$TARGETBRANCH$Target branch (or BASE) of the pull request.
$AUTHORNAME$Name of the author of the pull request.
$DATE$The date at the moment the channel is created. Format: YYYY-MM-DD.
$TIME$The time at the moment the channel is created. Format: HH-MM.

Ideally, the template should generate unique and recognizable names so that you can easily find the PR channel of a pull request.

The default '_pr_' prefix us used so that all PR channels appear grouped in the navigation bar (which is specially helpful for teams that do not have Slack's paid plan).

Best set-up practices (Slack Premium only)

Pullpo's bot is limited to creating PR channels under the 'Channels' section. Keep your own channels under a dedicated section, so that new channels get automatically grouped and don't interfere with your own.

Topic

The topic contains the Slack handle of the author of the pull request, as well as its title and repository. In the case where the author's Git ↔ Slack association is not configured, the topic will contain the author's Git handle instead of their Slack handle.

Bookmarks

  1. πŸ”— PR #1 - Link to the pull request's conversation page.
  2. πŸ”— Workflows 🟒 - Link and state of the workflows associated to the pull request.
  3. πŸ”— Mergeability 🟒 - Link and state of the mergeability check (pull request conflicts).
  4. πŸ”— Commits: 3 - Link to the full list of commits that are part of the pull request.
  5. πŸ”— Files changed: 2 - Number of files changed, linked to the changes page.
  6. πŸ”— LOC: +183 -45 - Lines of code added and deleted, linked to changes page.

Information retrieval

Since channels are archived, they can later be consulted by going to "Channels" > "Manage" > "Browse channels". The title format you define can help you look for old channels in a certain repository or branch.

Using the searchbar (or with the Ctrl+K shortcut) you can search for any file or function name and Slack will show you all code review threads that contain that name. We include the file path in these types of code comments for your convinience when searching for any information found in old discussions about the desired file.

For further information on messages and alerts that Pullpo sends through a PR channel, read the Messaging and Alerts & Reminders pages.

Previous
Setup
PRODUCT
COMPANY
LEGAL
Terms
Privacy policy
PULLPO
Β© All rights reserved.