Skip to content

feat(cmdk): surface Client Keys (DSN) when searching "SENTRY_DSN"#116883

Merged
JoshFerge merged 2 commits into
masterfrom
claude/gracious-dirac-4fncb
Jun 4, 2026
Merged

feat(cmdk): surface Client Keys (DSN) when searching "SENTRY_DSN"#116883
JoshFerge merged 2 commits into
masterfrom
claude/gracious-dirac-4fncb

Conversation

@JoshFerge

Copy link
Copy Markdown
Contributor

Summary

Typing SENTRY_DSN (or Sentry DSN) into the CMD-K command palette now surfaces Client Keys (DSN), just like typing dsn already does.

SENTRY_DSN is the SDK environment variable developers set to configure their DSN, so it's a natural thing to search for when looking for that page — but it returned nothing before.

Why it didn't work

The palette scores each action by fuzzy-matching the query against its label, details, and keywords via fzf (commandPalette.tsx). fzf is a strict subsequence matcher: every character of the query must appear, in order, in a candidate string. Plain dsn worked because dsn is a keyword on the Client Keys actions. SENTRY_DSN failed because none of those keywords contained an underscore, so the _ alone broke the match.

Change

Add SENTRY_DSN and the spaced Sentry DSN form as keywords in the two places that surface Client Keys (DSN):

  • navigationConfiguration.tsx — the canonical "Client Keys (DSN)" project-settings nav item. This feeds both the CMD-K project-settings group and the regular settings search, so both now respond.
  • commandPaletteGlobalActions.tsx — the current-project quick shortcut ("Client Keys (DSN) - "), so on a project page you get the same parity with dsn.

The two keyword forms together cover the env-var (sentry_dsn), spaced (sentry dsn), and no-separator (sentrydsn) inputs. The tokens are left unwrapped (not t()) since they're fixed config/product strings, not translatable prose — matching how project.slug is already used in those arrays.

Test plan

  • Added SENTRY_DSN and sentry dsn cases to the existing search-recall it.each in commandPaletteGlobalActions.spec.tsx.
  • commandPaletteGlobalActions.spec.tsx → 17/17 pass.
  • lint:js on all changed files → clean.

https://claude.ai/code/session_01PMrmgRxmMfZF3J7XyhF5yG


Generated by Claude Code

claude added 2 commits June 4, 2026 17:29
The command palette matches queries against an action's label, details, and
keywords using fzf, which requires every query character to appear as a
subsequence of a candidate. Typing the SDK env var name SENTRY_DSN failed to
surface Client Keys (DSN) because no keyword contained an underscore, so the
'_' broke the match — even though plain 'dsn' worked.

Add SENTRY_DSN as a keyword on both the project-settings nav item and the
current-project quick shortcut so it behaves like 'dsn'.
Add a 'Sentry DSN' keyword alongside 'SENTRY_DSN' so the natural
space-separated phrasing surfaces Client Keys (DSN) too, since fzf's
subsequence matching treats the space and underscore as distinct characters.
@JoshFerge JoshFerge requested a review from a team as a code owner June 4, 2026 18:21
@github-actions github-actions Bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Jun 4, 2026
@JoshFerge JoshFerge enabled auto-merge (squash) June 4, 2026 18:26
@JoshFerge JoshFerge merged commit 5825232 into master Jun 4, 2026
71 checks passed
@JoshFerge JoshFerge deleted the claude/gracious-dirac-4fncb branch June 4, 2026 18:28
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.

3 participants