From c8d8c15847a5a82e300461a8407699bae267f19d Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Mon, 6 Jul 2026 13:07:41 +0000 Subject: [PATCH 1/2] feat(cmdk): Add search keywords to reduce no-result queries Co-authored-by: Nicholas Meisenheimer --- .../ui/commandPaletteGlobalActions.tsx | 1 + .../organization/userOrgNavigationConfiguration.tsx | 12 ++++++++++++ .../settings/project/navigationConfiguration.tsx | 5 +++++ 3 files changed, 18 insertions(+) diff --git a/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx b/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx index 9f9b3945625f..f3e6dfda2703 100644 --- a/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx +++ b/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx @@ -963,6 +963,7 @@ export function GlobalCommandPaletteActions() { t('switch project'), t('go to project'), t('subproject'), + t('project slug'), ]} prompt={t('Search for a project...')} limit={4} diff --git a/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx b/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx index 7ead46d4568f..6018d8dc5a32 100644 --- a/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx +++ b/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx @@ -308,7 +308,13 @@ export function getUserOrgNavigationConfiguration(): NavigationSection[] { t('token'), t('credentials'), t('user auth tokens'), + t('create token'), + t('create new token'), + t('create auth token'), + t('new token'), 'SENTRY_AUTH_TOKEN', + 'SENTRY_ORG', + 'SENTRY_PROJECT', ], description: t('Manage organization tokens'), id: 'auth-tokens', @@ -326,7 +332,13 @@ export function getUserOrgNavigationConfiguration(): NavigationSection[] { t('token'), t('credentials'), t('user auth tokens'), + t('create token'), + t('create new token'), + t('create auth token'), + t('new token'), 'SENTRY_AUTH_TOKEN', + 'SENTRY_ORG', + 'SENTRY_PROJECT', ], description: t( "Personal tokens allow you to perform actions against the Sentry API on behalf of your account. They're the easiest way to get started using the API." diff --git a/static/app/views/settings/project/navigationConfiguration.tsx b/static/app/views/settings/project/navigationConfiguration.tsx index d58a3192ed22..f57e97830288 100644 --- a/static/app/views/settings/project/navigationConfiguration.tsx +++ b/static/app/views/settings/project/navigationConfiguration.tsx @@ -189,6 +189,11 @@ export function getNavigationConfiguration({ t('client key'), t('dsn key'), t('allowed domains'), + t('sdk setup'), + t('sdk'), + t('setup'), + t('install'), + t('installation'), ], }, { From b1fd2ad2bbbbcb4451a0d39a7d013187c013a97e Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Mon, 6 Jul 2026 13:15:40 +0000 Subject: [PATCH 2/2] test(cmdk): Cover token-creation and sdk-setup keyword recall Drop project slug / SENTRY_ORG / SENTRY_PROJECT keywords that overlap with open PR #118642, keeping this change focused on the net-new token-creation and SDK-setup query clusters. Co-authored-by: Nicholas Meisenheimer --- .../ui/commandPaletteGlobalActions.spec.tsx | 9 +++++++++ .../commandPalette/ui/commandPaletteGlobalActions.tsx | 1 - .../organization/userOrgNavigationConfiguration.tsx | 4 ---- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/static/app/components/commandPalette/ui/commandPaletteGlobalActions.spec.tsx b/static/app/components/commandPalette/ui/commandPaletteGlobalActions.spec.tsx index 4361ba9bbf7e..99de28014868 100644 --- a/static/app/components/commandPalette/ui/commandPaletteGlobalActions.spec.tsx +++ b/static/app/components/commandPalette/ui/commandPaletteGlobalActions.spec.tsx @@ -355,6 +355,15 @@ describe('GlobalCommandPaletteActions - search recall', () => { ['SENTRY_DSN', /Project Settings.*Client Keys \(DSN\)/], ['sentry dsn', /Project Settings.*Client Keys \(DSN\)/], ['NEXT_PUBLIC_SENTRY_DSN', /Project Settings.*Client Keys \(DSN\)/], + // Users searching to create a token should land on the token pages. + [ + 'create new token', + /Settings.*Organization Tokens/, + /Settings.*Personal Tokens/, + ], + ['create token', /Settings.*Organization Tokens/, /Settings.*Personal Tokens/], + // "SDK setup" (the section name, not a page) should surface Client Keys (DSN). + ['sdk setup', /Project Settings.*Client Keys \(DSN\)/], ])('finds expected actions for %s', async (query, ...expectedOptions) => { renderPalette(); diff --git a/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx b/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx index f3e6dfda2703..9f9b3945625f 100644 --- a/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx +++ b/static/app/components/commandPalette/ui/commandPaletteGlobalActions.tsx @@ -963,7 +963,6 @@ export function GlobalCommandPaletteActions() { t('switch project'), t('go to project'), t('subproject'), - t('project slug'), ]} prompt={t('Search for a project...')} limit={4} diff --git a/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx b/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx index 6018d8dc5a32..50d82d55eaec 100644 --- a/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx +++ b/static/app/views/settings/organization/userOrgNavigationConfiguration.tsx @@ -313,8 +313,6 @@ export function getUserOrgNavigationConfiguration(): NavigationSection[] { t('create auth token'), t('new token'), 'SENTRY_AUTH_TOKEN', - 'SENTRY_ORG', - 'SENTRY_PROJECT', ], description: t('Manage organization tokens'), id: 'auth-tokens', @@ -337,8 +335,6 @@ export function getUserOrgNavigationConfiguration(): NavigationSection[] { t('create auth token'), t('new token'), 'SENTRY_AUTH_TOKEN', - 'SENTRY_ORG', - 'SENTRY_PROJECT', ], description: t( "Personal tokens allow you to perform actions against the Sentry API on behalf of your account. They're the easiest way to get started using the API."