Releases Sourcegraph self-hosted 7.3.0
May 18, 2026

Sourcegraph self-hosted 7.3.0

Highlights

Quantitative answers in Deep Search

Smart hover summaries now in Beta

Search contexts in Deep Search

A new compare page: now in Beta

Search your Git graph in Deep Search

Details

Improvements

  • Deep Search Support search contexts in list-repos

    Support search contexts in the List Repos tool. The tool now uses a search-based implementation, following the same design as other Deep Search tools such as Keyword Search and NLS Search.

  • Deep Search Improve share link UI with standard components
  • Deep Search Improve search context lookup

    Search context lookup now matches by visible name, namespace, and full spec format, making it easier to find contexts using partial queries.

  • Deep Search Make diff search accept array of authors

    Diff search can now filter by multiple authors.

  • Deep Search Add Deep Search scope keyboard shortcut

    Added keyboard shortcut (Cmd/Ctrl+Shift+,) to open the scope picker directly from the Deep Search composer.

  • Deep Search Evaluator tool for code execution

    Added a code execution 'evaluator' tool to Deep Search that allows sandboxed Lua scripts to call keyword, regex, commit or diff searches and process results programmatically.

  • Deep Search Default DS Sonnet 4.6 feature flag to true

    Deep Search now uses Sonnet 4.6 as the main agent model.

  • Deep Search Add list_refs, check_ancestry tools for improved versioning searches

    Deep Search can now more efficiently answer questions about which versions and releases contain a specific commit or fix.

  • Code Search Upgrade zoekt for gitindex perf improvements

    Upgraded zoekt dependency to include a 21% performance improvement in git indexing time

  • Code Nav Replace inline hotkey indicator with tooltip on blame toggle
  • Code Nav Support gherkin highlighting

    Tree-sitter syntax highlighting support for Gherkin/Cucumber .feature files.

  • Code Intel Make maximum ancestors considered in upload detection configurable

    SRC_CODE_INTEL_COMMIT_GRAPH_MAX_ANCESTORS can now be set to alter the default of 100.

  • Batch Changes Add commit signing toggle to OAuth credential flow

    Added commit signing toggle to OAuth credential configuration flow for batch changes. Users can now enable SSH commit signing when configuring credentials via OAuth (GitHub, GitLab), matching the functionality previously available only in the PAT flow.

  • Administration Show last event received date for webhooks
  • Administration SITE_CONFIG, EXTSVC_CONFIG json support

    As an alternative to SITE_CONFIG_FILE and EXTSVC_CONFIG_FILE, the entire contents of advanced configuration and external service configuration can now be provided using SITE_CONFIG and EXTSVC_CONFIG respectively.

  • Authentication Retry oauth2 refresh tokens after transient errors

    Automatically retry OAuth2 refresh tokens after transient errors, improving authentication reliability and reducing the need for manual reconnection.

  • Authentication User notification for expired credentials

    Notify users when their account credentials have expired, prompting them to reconnect.

  • Authentication Show reconnect button when connection expired

    A Reconnect button now appears on the user settings security page when an authentication token has expired, allowing users to easily re-establish their connection.

  • Authentication Customize sign-in page "Contact your site admin" message

    Admins can now customize the sign-in page message when built-in sign-up and access requests are disabled using the new auth.accessRequest.disabledMessage site config field (supports Markdown).

  • Compare Rearrange file tree layout and align with VS Code styling

    Reorganized file tree panel to show reviewed status inline and moved file stats to bottom of page. Updated file tree styling to match VS Code: removed folder icons and aligned file icons with folder toggle buttons.

  • Compare Wrap long lines in unified mode

    Long lines in unified diff mode now wrap instead of extending horizontally

  • Compare Improve focused file recovery after filtering
  • Compare Add labels for file changes and autocollapse deleted files

    Added visual badges to indicate added, removed, and renamed files in the compare view. Deleted files are now automatically collapsed by default.

  • Compare Add level lines and condense tree view

    Added visual level lines to the file tree view to improve readability of deeply nested directory structures. The tree view is now more condensed with slightly smaller item sizes.

  • Executors Add runtime class env to be able to set gvisor on k8s jobs

    Kubernetes jobs launched by the executor service can now be configured with a runtime class via the EXECUTOR_KUBERNETES_RUNTIME_CLASS environment variable.

  • Executors Move secrets under their domain settings
  • GitHub Link webhooks to apps correctly and clean up when app deleted

    When creating a GitHub App from Sourcegraph, the corresponding webhook handler is now linked to the App, and deleting the App in Sourcegraph deletes the webhook handler as well.

  • Inference Add support for Opus 4.7

    Added support for Opus 4.7 model in Cody with adaptive thinking.

  • MCP Expose evaluator tool

    Exposed the evaluator tool on MCP endpoints.

  • RBAC Add observability management admin rbac perms

    Added new OBSERVABILITY#{READ,WRITE} RBAC permissions that gate access to observability and debugging admin endpoints (outbound requests, slow requests, gitserver info, background jobs, search stats, observability test alerts).

  • RBAC Add code host management admin RBAC permission

    Add a dedicated EXTERNAL_SERVICES RBAC namespace gating code host configuration (replacing prior site-admin and REPO_MANAGEMENT checks), grant admin UI access to its holders, and surface a high-trust warning for EXTERNAL_SERVICES#WRITE.

  • RBAC Add executor secret management admin permission

    Added EXECUTOR_SECRETS#READ and EXECUTOR_SECRETS#WRITE RBAC permissions to allow delegated executor secret administration without requiring full site-admin privileges.

  • RBAC Add out of band migration admin rbac permissions

    Added new OOB_MIGRATIONS#{READ,WRITE} RBAC permissions that gate access to the out-of-band migrations admin endpoints.

  • RBAC Add notification read/write RBAC admin permissions

    Added new NOTIFICATIONS#READ and NOTIFICATIONS#WRITE RBAC permissions for controlling access to admin notifications and test email sending

  • RBAC Add access request management to user management admin permission

    Access request management now uses the USER_MANAGEMENT#{READ,WRITE} RBAC permissions instead of the static site-admin check.

  • RBAC Create access tokens auth admin permission

    Access token management and auth provider validation endpoints now use ACCESS_TOKENS#READ and ACCESS_TOKENS#WRITE RBAC permissions instead of requiring site-admin status, allowing delegated access token administration without full site-admin privileges.

  • RBAC Add user management admin permissions

    Non-site-admin users can now manage users, organizations, roles, and permissions when explicitly granted USER_MANAGEMENT#{READ,WRITE} RBAC permissions.

  • RBAC Add integration management admin permissions

    Added INTEGRATION_MANAGEMENT#{READ,WRITE} RBAC permission to allow non-site-admin users to manage Slack, incoming webhook, and outbound webhook integrations

  • RBAC Add entitlement admin permissions

    Non-site-admin users can now manage entitlements when explicitly granted ENTITLEMENT#{READ,WRITE} RBAC permissions.

  • RBAC Implement Batch Changes read-only permission

    Implemented the BATCH_CHANGES#READ permission. This enables administrators to create a role where users can view, but not edit or create Batch Changes.

  • Repositories Add branch compare links

    Added a Compare action to repository branch listings to open the compare view for a branch.

  • Smart hover summaries Enforce and consume entitlements

    Smart hover summaries now support entitlements.

  • UI Upgrade Monaco to 0.55

    Upgrade Monaco editor to 0.55.

  • Cloud Prevent modification of infrastructure-managed advanced configuration fields

    In Sourcegraph Cloud, some site config fields are no longer configurable by customers, such as auth.allowedIpAddress, as they are managed by our infrastructure.

  • Credits Add credit usage notification, replacing Deep-Search-specific notification

    Admin notifications now alert when credit balance is low, with thresholds at 50%, 25%, 10%, 5%, and 0% remaining.

  • Emails Allow adding additional emails to SCIM controlled users

    SCIM-managed users can now add additional non-primary emails

  • Entitlements Support zero-value limits to fully block feature access

    Admins can now set entitlement limits to zero to fully block user access to a feature.

  • Entitlements Add smart hover summary entitlement

    Add entitlements for smart hover summary, enabling site admins to configure usage limits for the feature.

  • Entitlements Add monthly (30-day) window option

    Added monthly (30-day) window option for entitlements

  • Notifications Add user notifications system

    Users are notified when repository permissions are being synced for the first time and when the sync completes.

  • Organizations Allow underscores in organization names

Fixes

  • Deep Search Improve prompting for search context usage
  • Deep Search Render '1-end' fallbacks for partial read_file line range

    Fixed visual bug where the read_file tool in Deep Search showed "undefined" if the line range wasn't explicitly set. Now falls back to "1" for a missing start line and "end" for a missing end line, matching how the backend handles missing bounds.

  • Deep Search Pluralize "more ranges" label in file citations

    Fixed pluralization of "more ranges" label in file citations to correctly show singular form when only one range is present

  • Deep Search Pluralize "files" label in compare-revisions tool
  • Deep Search Fix copy file path button layout in sources sidebar
  • Deep Search Show error when reasoning consumes entire output budget

    Deep Search now displays an error message when reasoning consumes the entire output budget, preventing users from seeing a blank response.

  • Deep Search Include revisions in code search tool results

    Deep Search keyword and NLS search results now include repository revisions in file and repo results.

  • Deep Search Revert automatic application of default search context
  • Deep Search Gate search context selector behind feature flag
  • Deep Search Revert list_repos search context scoping
  • Deep Search Bound fork title prompt size

    Fixed Deep Search title generation failing with "context length exceeded" on deeply forked conversations.

  • Deep Search Scope list_repos by search context id

    Scoped listRepos to the active search context when a repo-defined search context is selected.

  • Deep Search Recover from failed conversation creation
  • Deep Search Drop buggy NEW IS NOT NULL guard in search-queue trigger

    Fixes a bug where some deep search conversations were not indexed for conversation search. This change triggers a full rebuild of the search index for conversation search, which happens in the background.

  • Deep Search Fix conversation search after title changes

    Conversation search now correctly finds conversations after their titles have been changed.

  • Code Search Fix vertical alignment of DisplayPath
  • Code Search Fix search.contextLines user setting
  • Code Search Fix copy button positioning
  • Code Search Fix slash-prefixed fuzzy finder file path searches

    Fixed a bug where "/"-delimited regex patterns were incorrectly detected in the Fuzzy Finder, which especially for path queries could lead to zero search results.

  • Code Search Preserve regex escapes in slash-delimited patterns

    Slash-delimited inline regex queries now preserve regex escapes and behave like patterntype:regexp.

  • Code Search Fix resizable panel behavior and layout distribution
    • Fixed symbol tree panel failing to expand after switching to Deep Search
    • Fixed symbol tree and search preview panels jumping unexpectedly on window resize
    • Fixed layout distribution to prevent unnecessary collapse of fixed-size panels
  • Code Search Prevent dynamic filter items from shifting on selection
  • Code Search Classify canceled searches separately

    Canceled searches are now classified separately from application errors, preventing false-positive SLO burn alerts from normal product behavior.

  • Code Search Fix search page result indicator overflow
  • Code Search Select suggestions by position

    Fixed an issue where multiple suggestion rows could appear selected simultaneously during Query assist refreshes

  • Code Search Intersect identical rev:at.time revisions across repo patterns
  • Code Search Fix inverted logic in commit date filter suggestions

    Fixed incorrect commit date filter suggestions for "Last week" and "Last month" options, which were using before: instead of after:.

  • Batch Changes Reject unsupported pushed-only changesets

    Batch Changes now rejects pushed-only changesets for unsupported code hosts (Bitbucket Cloud) instead of accepting them and failing during reconciliation.

  • Batch Changes Tolerate missing Bitbucket Cloud PR links

    Fixed a batch changes UI error when Bitbucket Cloud pull request metadata is missing its HTML link.

  • Batch Changes Fix null fk constraint

    Fixed foreign key constraint violation when re-running batch specs with previously-applied changesets

  • Batch Changes Wire monaco-yaml worker for batch spec editor
  • Batch Changes Improve select all of changesets on batch changes preview page

    The Select all button now appears consistently and is more responsive while selecting all changesets on the preview page.

  • Batch Changes Improve select all of changesets on batch changes detail page

    Select All on the batch changes changeset details page will now lazy select all changesets.

  • Administration Show 'next sync pending' when next sync is a time in the past

    Fixed the code host connections page displaying confusing text like "Next sync 4 minutes ago" when a sync was overdue or running. It now shows "Next sync pending." instead.

  • Administration Clean up outbound requests page styling
  • Authentication Resolve GitHub OAuth endpoints against base URL

    Fixed incorrect paths used for GitHub OAuth token refreshes

  • Authentication Bcrypt 72-byte password limit by SHA-512 pre-hashing

    Built-in auth now accepts passwords longer than 72 UTF-8 bytes. Existing hashes continue to work and are migrated on next successful login.

  • Authentication Preserve permissions on transient 401 after OAuth refresh

    Preserve user permissions when a 401 error occurs immediately after a successful OAuth token refresh, treating it as a transient error rather than a credential revocation. This prevents unnecessary permission wipes caused by GitLab's token rotation eventual consistency and concurrent refresh race conditions.

  • Authentication Add sign out button to password reset page
  • Authentication DCR ignores ports for loopback redirect URIs

    MCP clients using random ports in redirect URIs no longer require reauthentication when the port changes.

  • Code Insights Prevent sequence overflow on repo_names upserts
  • Code Insights Map RevisionNotFoundError(HEAD) to EmptyRepoErr in GitFirstEverCommit
  • Compare Set document title to include compared revisions
  • Compare Remove header border radius in single file view
  • Compare Fix full file view decoration errors
  • Compare Correctly set scroll indicator position after switching to list view
  • GitLab Update GitLab native integration for compatibility and dark mode
    • Fixed GraphQL API requests by adding required Content-Type header
    • Fixed code intelligence hover popovers by updating permalink selector for modern GitLab versions
    • Added dark mode support for code intelligence hover overlays
    • Updated Sourcegraph logo in hover overlay
  • GraphQL Restore repository createdAt field

    Restored the GraphQL field Repository.createdAt to return the persisted repository timestamp instead of synthetic time.Now() data.

  • Licensing Fix config watcher to write license state to correct Redis key

    Fixed license key changes taking up to an hour to take effect.

  • MCP Guard typed-nil tool telemetry results
  • Permissions Filter user_external_accounts to AUTH kind perms paths
  • RBAC Improve RBAC permission error message formatting

    Improved RBAC permission error message formatting for better readability (e.g. "missing READ permission for REPO_MANAGEMENT" instead of "user is missing permission REPO_MANAGEMENT#READ").

  • Repositories Fix stacking order isolation in repository area pages

    Fixed z-index stacking order issues in repository area pages that caused UI elements to overlap with the header search input suggestions panel.

  • Security Upgrade github.com/go-jose/go-jose

    Upgraded github.com/go-jose/go-jose to address CVE-2026-34986, a potential denial of service vulnerability in JSON Web Encryption decryption.

  • UI Show current repo name in open-in-editor path example

    The "Set your preferred editor" popover now shows the current repository name in the path example instead of a hardcoded placeholder.

  • UI Revert Svelte version to 5.34.3 to fix collapsible panel resizing

    Fixed collapsible panel resizing that was broken with Svelte 5.55.0.

  • UI Incorrect schema validation of Bitbucket Server

    Fixed syntax validation for Bitbucket Server code host connection configuration

  • UI Polish web app UI components
    • Adjusted core navigation popover positioning
    • Fixed button shadows in icon variant
    • Fixed code insights creation UI layout
    • Removed pressed translation CSS rule to prevent layout shifts
    • Fixed resizable panel bug when conditionally rendering panels
    • Simplified search result UI by removing unnecessary headings
  • External Services Relax external service schema validation
  • Frontend Handle /-/logout and guard middleware against nil next
  • Notifications Prevent message hint from breaking popover layout
  • Notifications Automatically clear repository sync failure notification

    Repository sync failure notifications are automatically cleared after a successful sync

  • Otel Collector Bind OTLP receiver to 0.0.0.0 in jaeger.yaml

    Fixed OTLP receiver in bundled jaeger.yaml to accept cluster traffic by binding to 0.0.0.0:4317 (gRPC) and 0.0.0.0:4318 (HTTP). Previously, after otelcol v0.104.0, the receiver defaulted to 127.0.0.1 and silently dropped traces from other pods.

  • Searcher Count content matches when both path and content match

    In non-indexed regex search, when both path and content matching are enabled, searcher now evaluates content even when paths match, ensuring content matches contribute to result counts and aligning counting semantics with indexed search.

  • Webhooks Fix GitHub icon visibility in dark mode

Removed

  • Code Intel Remove squirrel callers from frontend

    Hover tooltips, highlights, and basic code navigation in search-based mode are now powered by Syntactic code navigation.

  • Squirrel Remove squirrel backend

Self-hosted resources