Skip to main content
| A review that needs other people usually needs them somewhere other than the pull request. Change Stack can start a discussion in a connected Slack or Discord destination, keep that thread fed with pull-request events as the change moves, and let you run a small set of CodeRabbit actions from the thread itself. A discussion starts from the snapshot you are displaying, so what you send is what you were reading. See snapshots for what that pins and what it does not.

Start a discussion

You can start and update a Change Stack discussion through supported provider-connected destinations. Which destinations you get depends on the connected Slack or Discord provider and the channel access it resolves — a destination you cannot see is a connection or channel-permission question, not a Change Stack setting. Updating an existing discussion is part of the same capability: a discussion is a living thread you can push back into, not a one-shot post.
This is about Slack and Discord destinations specifically. Native provider discussion threads outside GitHub are not surfaced as a Change Stack discussion capability — a GitLab, Azure DevOps, or Bitbucket discussion thread on the provider itself is not something Change Stack starts or updates.

Subscribe the pull request to events

You can subscribe the pull request to Change Stack event delivery, or unsubscribe it, so the thread keeps up with the change without anyone re-checking the provider. The choice available to you is all or none. There is no per-event selection: you take the whole set or none of it.
A subscription change can fail after it has partly applied — the destination is updated but CodeRabbit’s own record of it is not, or the reverse. CodeRabbit reports the failure rather than dropping it silently, but the thread and the subscription control can briefly disagree. Re-apply the change if they do.

What gets delivered

A subscription delivers thirteen pull-request events, in four groups:
  • Lifecycle — opened, reopened, ready for review, merged, closed.
  • Change — new commits or state updates, and edits to the pull request’s own metadata or labels.
  • Conversation — a pull-request comment, an inline review comment, or a resolved review thread.
  • CodeRabbit and CI — a CodeRabbit comment updated, and CI failing.

Act from the thread

Eight actions run from a Slack thread. This is the complete set — anything else belongs in Change Stack itself or on the provider. These actions and the event subscription are Slack features; a Discord destination receives the discussion, not this action set.

Choose how autofixes land

You can choose whether supported pull-request events trigger an autofix as a commit or as a stacked pull request. The difference is where the fix lands. For what these automated fixes contain, see Finishing Touches.

The close checklist

When work on a pull request is about to be wrapped up, CodeRabbit checks five conditions and reports each as pass, fail, or unknown. A fail is a reason to look before closing; an unknown means the condition could not be determined, which is not the same as a pass.
A Slack unsubscribe link expires after 30 days. An old thread’s unsubscribe link stops working, and unsubscribing then means using the subscription control again rather than the stale link.

What’s next

Review and merge

Act on the pull request directly instead of from the thread.

Snapshots

See what a discussion pins to and why a thread can fall behind the live pull request.