ref(integrations): Remove the unused setupDialog from the integration type#117370
Conversation
… type The integration setup popup that consumed `provider.setupDialog` (window URL/dimensions) was removed when integrations moved to the API-driven pipeline modal, and the backend no longer serializes the field. Drop the `setupDialog` type, along with the fixtures, stories, and spec that set it. Part of [VDY-32](https://linear.app/getsentry/issue/VDY-32/migrate-integration-setup-pipelines-to-api-driven-flows).
| noun: string; | ||
| source_url: string; | ||
| }; | ||
| setupDialog: {height: number; url: string; width: number}; | ||
| } | ||
|
|
||
| interface OrganizationIntegrationProvider extends BaseIntegrationProvider { |
There was a problem hiding this comment.
Bug: The setupDialog property was removed from the IntegrationProvider type, but runtime code still accesses it, which will cause a crash for non-migrated integrations after a backend change.
Severity: CRITICAL
Suggested Fix
Either restore the setupDialog property to the IntegrationProvider type until all integrations are migrated, or add a check in useAddIntegration.tsx to ensure provider.setupDialog exists before destructuring it. This will prevent the runtime TypeError for integrations still using the legacy setup flow.
Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent. Verify if this is a real issue. If it is, propose a fix; if not, explain why it's
not valid.
Location: static/app/types/integrations.tsx#L383-L388
Potential issue: The PR removes the `setupDialog` property from the
`IntegrationProvider` TypeScript type, but the runtime code in `useAddIntegration.tsx`
still accesses it for legacy integration installation flows. A planned companion backend
change will stop serializing the `setupDialog` field. Once that backend change is
deployed, any user attempting to install an integration that has not been migrated to
the new API pipeline will encounter a `TypeError`, as the code will attempt to
destructure `provider.setupDialog` which will be `undefined`. This will break the
installation flow for numerous integrations.
Also affects:
static/app/utils/integrations/useAddIntegration.tsx:235
Did we get this right? 👍 / 👎 to inform future reviews.
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 a683563. Configure here.

The integration setup popup that consumed
provider.setupDialog(window URL and dimensions) was removed when integrations moved to the API-driven pipeline modal, and the backend no longer serializes the field. This drops the now-unusedsetupDialogfrom theIntegrationProvidertype, along with the fixtures, stories, and spec that set it.Backend removal of the field is in #117362.
Part of VDY-32.