PR Channels
Notifications
PR channels are designed to keep everyone up to date with any relevant changes that occur to a pull request during its code review process.
Messages
Code review threads and comments posted on GitHub are sent through the corresponding PR channel on Slack.
Code review threads
In the files page of a GitHub pull request, you are able to select a single or multiple lines of code that will get either added, removed or preserved once the pull request gets merged into the target branch.
When a code review comment is posted, Pullpo gets an event with the highlighted lines of code, which makes it possible to show this context directly on Slack as shown bellow:
If some team member responds inside a code review thread on GitHub, that message is sent to the code review thread in Slack. This way, the discussion for every section of the code that needs to be clarified or modified happens in its own self-contained thread.
Comments
Standalone comments can also be left on the pull request's conversation page:
These types of comments are sent to Slack to keep the conversation up to date:
Responses
Pullpo synchronizes thread responses to messages that originated in GitHub so that they appear in the conversation page. Responses to code review comments appear in their respective thread, while reponses to standalone comments appear as a new comment quoting the parent message.
What about new Slack messages?
By default, Slack messages that are not a response to a GitHub comment are not sent back to GitHub. This is a design choice to prevent the GitHub page from containing non-relevant messages like:
"Hey John, let me get some coffe and I'll get right into it!"
If your team still wants to include all messages sent through Slack in the GitHub conversation page, you can enable Full bidirectionality.
Impersonation
Our top priority is ensuring participants don't miss any important messages from their teammates. Since Slack should notify participants of thread responses to their synchronized messages, the Pullpo bot has to mention them on the original message.
This results in members being notified about their own messages sent via GitHub, which can be disruptive.
To address this issue and reduce noise, Pullpo will individually prompt participants to grant impersonation permissions:
Once the user authorizes Pullpo to send messages on their behalf, synchronized comments (like the example previously shown) will look like:
Notice how messages sent via Pullpo will be marked accordingly to avoid confusion.
Similarly, participants who have not yet logged into Pullpo with their Git provider's account, will also get prompted to do so when interacting with synchronized messages. This will prevent them from receiving emails notifying them about their own comments.
Alerts
Whenever some important event or update happens to a pull request, Pullpo notifies the corresponding PR channel.
PR channel creation
When a pull request is opened, Pullpo invites all involved members to the newly created channel and sends two initial messages to get everyone into context.
A "Welcome" message that contains the author, repository, number, title, number of commits, number of files changed and the number of lines of code added and removed:
Followed by the handwritten description of the pull request as it appears on GitHub:
Finally, if you have enabled the AI summarizer in the settings tab Pullpo sends the diff contents of the pull request to an LLM with instructions to summarize the changes in English:
New commits added
When new commits are added to a pull request Pullpo notifies the corresponding PR channel with the following alert:
Workflow runs
Opening a new pull request and pushing new commits to an open one can both trigger GitHub actions. Pullpo will get notified when such worklows finish and will send a message with the results as well as update the corresponding PR channel bookmark:
New approval
When a reviewer determines that a pull request is ready to be merged, we celebrate their approval with you with this alert: