feat(integrations): accept GitHub issue and pull request URLs - #124305
Merged
Merged
Conversation
Contributor
Sentry Snapshot Testing
Base commit |
betegon
added a commit
that referenced
this pull request
Sep 14, 2026
…24067) The issue-linking PUT now accepts a full Jira or Jira Server URL in `externalIssue`, using the selected installation to resolve it before running the existing linking flow. This lets API callers submit the same URLs users paste into the issue selector. Reuses `parse_jira_issue_key()` from #123389, which previously handled search/autocomplete. The origin calculation is shared with URL validation while the existing search parser keeps its accepted inputs and full-text fallback. Direct linking rejects invalid URLs and URLs from another installation. This PR contains the shared PUT support and Jira/Jira Server only. Other providers are split into separate PRs based on this branch. Existing identifier payloads and neutral reference semantics are preserved; linking does not resolve the Sentry issue. Provider follow-ups: GitHub/GitHub Enterprise #124305, GitLab #124306, Bitbucket #124307, and Azure DevOps #124308. Validation: 50 shared issue integration and linking endpoint tests passed, covering identifiers, URLs, malformed URL rejection, and positive URL parsing cases. Targeted mypy, prek, and diff checks passed.
betegon
force-pushed
the
bt/issue-link-github-urls
branch
from
September 14, 2026 19:41
c3eac25 to
0f4ded1
Compare
betegon
marked this pull request as ready for review
September 14, 2026 19:49
Contributor
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 67318ff. Configure here.
cvxluo
approved these changes
Sep 14, 2026
cvxluo
left a comment
Contributor
There was a problem hiding this comment.
will we also want this for github enterprise?
Member
Author
|
@cvxluo we already support GHE from this PR, both use |
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Accept GitHub issue and pull request URLs in the existing issue-linking PUT, including GitHub Enterprise. Supports canonical issue and PR URLs and the
/files,/changes,/commits, and/checksPR tabs. Resolve the URL to the repository and issue number using the selected installation, and verify that the repository is active and belongs to that installation and organization.Links remain neutral references; a pull request URL does not resolve the Sentry issue.
Uses the shared URL-linking support merged in #124067. This diff contains only the GitHub/GitHub Enterprise implementation and tests.
Validation: 51 tests passed across the issue-integration endpoint and GitHub/GitHub Enterprise issue integrations, including successful PUTs for an issue, a PR changes-tab URL, and an Enterprise PR. Targeted mypy, prek, and diff checks passed.