---
title: "Handling an External Contributor Pull Request"
url: https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr/
---

# Handling an External Contributor Pull Request

This document uses key words such as "MUST", "SHOULD", and "MAY" as defined in

<!-- -->

[RFC 2119](https://www.ietf.org/rfc/rfc2119.txt) to indicate requirement levels.

Statuscandidate

Version`1.0.0`[(changelog)](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#changelog)

## [Overview](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#overview)

This playbook guides SDK maintainers through triaging and reviewing pull requests from external contributors. It covers timely triage, linked issue requirements, CI checks, saved replies for common patterns, and review processes for viable PRs. By following these steps, external contributors receive respectful, timely feedback that respects everyone's time.

Related resources:

* [Review and CI Standards](https://develop.sentry.dev/sdk/getting-started/standards/review-ci.md) — review SLAs and feedback conventions
* [Code Submission Standards](https://develop.sentry.dev/sdk/getting-started/standards/code-submission.md) — PR description requirements
* [Saved Replies](https://develop.sentry.dev/sdk/getting-started/templates/saved-replies.md) — GitHub saved replies for common scenarios
* [Reviewing a PR](https://develop.sentry.dev/sdk/getting-started/playbooks/development/reviewing-a-pr.md) — standard review process
* [Reviewing AI-Generated Code](https://develop.sentry.dev/sdk/getting-started/playbooks/development/reviewing-ai-generated-code.md) — AI-specific checks

***

## [Steps](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#steps)

#### [1. Triage within 2 business days](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#1-triage-within-2-business-days)

([Review SLAs](https://develop.sentry.dev/sdk/getting-started/standards/review-ci.md#code-review)). Every external PR **REQUIRES** a timely, substantive response.

#### [2. Check for a linked issue](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#2-check-for-a-linked-issue)

If the PR is non-trivial and has no linked issue, use the ["Open an issue first" saved reply](https://develop.sentry.dev/sdk/getting-started/templates/saved-replies.md#closing-pull-requests) and close the PR.

#### [3. Check CI status](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#3-check-ci-status)

If checks are failing, comment specifically on what's broken and give the contributor a chance to fix it.

#### [4. Check for speculative refactors](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#4-check-for-speculative-refactors)

If the PR is a style-only change or refactor with no linked issue or problem statement, use the ["Let's discuss the approach first" saved reply](https://develop.sentry.dev/sdk/getting-started/templates/saved-replies.md#closing-pull-requests) and close the PR.

#### [5. If the PR is viable](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#5-if-the-pr-is-viable)

Review it using the standard process ([Reviewing a PR](https://develop.sentry.dev/sdk/getting-started/playbooks/development/reviewing-a-pr.md)). If it appears AI-generated, also apply [AI-specific checks](https://develop.sentry.dev/sdk/getting-started/playbooks/development/reviewing-ai-generated-code.md).

#### [6. When requesting changes](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#6-when-requesting-changes)

You **MUST** be specific, use LOGAF prefixes ([Review feedback conventions](https://develop.sentry.dev/sdk/getting-started/standards/review-ci.md#code-review)), and explain *why* — so the contributor (or their AI tool) can address the feedback effectively.

#### [7. Closing fast is kind](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#7-closing-fast-is-kind)

A 30-second close with a clear, respectful reason is better than a PR that sits open for weeks with no response. That respects everyone's time.

## [Referenced Standards](https://develop.sentry.dev/sdk/getting-started/playbooks/development/handling-external-contributor-pr.md#referenced-standards)

* [Review SLAs](https://develop.sentry.dev/sdk/getting-started/standards/review-ci.md#code-review) — timely response requirements
* [Review feedback conventions](https://develop.sentry.dev/sdk/getting-started/standards/review-ci.md#code-review) — LOGAF scale for feedback
* [PR description quality](https://develop.sentry.dev/sdk/getting-started/standards/code-submission.md#pr-description-quality) — linked issue requirement

***

| Version | Date       | Summary                                                                              |
| ------- | ---------- | ------------------------------------------------------------------------------------ |
| `1.0.0` | 2026-02-21 | Initial playbook — external PR triage workflow with saved replies and review process |
