Skip to content

feat(slack): Add a React team link page - #130560

Open
sentry-junior[bot] wants to merge 3 commits into
feat/slack-organization-link-team-apifrom
feat/slack-link-team-page
Open

sentry-junior[bot] wants to merge 3 commits into
feat/slack-organization-link-team-apifrom
feat/slack-link-team-page

Conversation

@sentry-junior

@sentry-junior sentry-junior Bot commented Nov 10, 2026

Copy link
Copy Markdown
Contributor

/sentry link team currently opens a Django page that only lists organizations from one cell, and it renders unstyled on cell locality domains. This adds the React replacement at /extensions/slack/link-team/:signedParams/, built on the APIs from #130554 and #130556.

  • Reads the channel and the user's organizations from the control context API, and shows the server's message for an invalid or expired link.
  • If only one organization has the workspace, it's preselected. If none do, the page says so.
  • Lists linkable teams from the selected organization's own cell using links.regionUrl, the same approach setupWizard uses, and explains when the user has no team they're allowed to link.

Submitting comes in the next PR. Nothing links to this route until the option-gated cutover at the end of the stack.

Stacked on #130557.

via evan.purkhiser.

--

View Session [Sentry]

@sentry-junior
sentry-junior Bot requested a review from a team as a code owner November 10, 2026 00:28
@sentry-junior
sentry-junior Bot added this pull request to stack #130555 November 10, 2026 00:28
@github-actions github-actions Bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Nov 10, 2026

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit e5795e2. Configure here.

@github-actions

github-actions Bot commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

📊 Type Coverage Diff

✅ no issues found

sentry-junior Bot and others added 2 commits November 10, 2026 00:44
`/sentry link team` sends users to a Django page that only lists the
organizations in one cell and renders unstyled on cell locality domains.
Add a React route at `/extensions/slack/link-team/:signedParams/` that
reads the channel and the user's organizations from the control silo, then
lists linkable teams from the selected organization's cell using its
region URL.

Submitting the link follows, and the Slack command keeps pointing at the
Django page until the cutover.

Co-Authored-By: Evan Purkhiser <evan.purkhiser@sentry.io>
Co-Authored-By: Michi Hoffmann <michael.hoffmann@sentry.io>
The linkable teams endpoint returns 100 teams per page, so the team
select left out the rest for larger organizations. Fetch every page
before listing them.

Co-Authored-By: Evan Purkhiser <evan.purkhiser@sentry.io>
A failed team list request left an empty, enabled Team select with no
explanation. Show the error and keep the select disabled.

Also show a spinner instead of disabling the select during background
refetches, reword the no teams warning to match get_linkable_teams,
which only returns teams the user is on, drop the "Choose a team" intro
when no organization has the workspace, and type organizations as the
fields the control endpoint actually returns.

Co-Authored-By: Evan Purkhiser <evan.purkhiser@sentry.io>
@sentry

sentry Bot commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

Sentry Snapshot Testing

Name Added Removed Changed Renamed Unchanged Skipped Status
sentry-frontend
sentry-frontend
0 0 0 0 804 0 ✅ Unchanged

⚙️ sentry-frontend Snapshot Settings

This branch was successfully deployed

1 active deployment
Preview — c86ea4e3 Deployed Nov 10, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Frontend Automatically applied to PRs that change frontend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants