[Background search] Enable the new background search UX#236818
[Background search] Enable the new background search UX#236818kertal merged 21 commits intoelastic:mainfrom
Conversation
- no more duplication of code - introducing a new config backgroundSearchEnabled allowing to disable the new UI for tests
…the new UI for tests
…arch' into search-sessions-to-background-search
…background-search
…arch' into search-sessions-to-background-search
|
/ci |
There was a problem hiding this comment.
Pull Request Overview
This pull request removes the background search feature flag and enables background search functionality by default across the Kibana codebase. The changes involve simplifying logic that previously depended on the feature flag and updating user-facing terminology from "search sessions" to "background search".
Key Changes:
- Feature flag removal: Deleted all references to
BACKGROUND_SEARCH_FEATURE_FLAG_KEYand related conditional logic throughout the search service implementation - Default enablement: Changed the search sessions configuration default from
falsetotrueand removed server arguments that explicitly enabled sessions in test configurations - Terminology updates: Updated labels, messages, and test descriptions to consistently use "background search" instead of "search session"
Reviewed Changes
Copilot reviewed 49 out of 49 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
src/platform/plugins/shared/data/server/config.ts |
Changed search sessions default from disabled to enabled |
src/platform/plugins/shared/data/public/search/session/constants.ts |
Removed background search feature flag constant |
src/platform/plugins/shared/data/public/search/search_service.ts |
Removed feature flag checks and simplified session indicator creation logic |
src/platform/plugins/shared/data/public/search/search_interceptor/search_interceptor.ts |
Simplified toast messaging by removing feature flag conditionals |
src/platform/plugins/shared/data/public/search/session/sessions_mgmt/lib/api.ts |
Removed feature flag checks from notification messages |
| Various test files | Updated test descriptions and expected messages from "search sessions" to "background search" |
| Translation files | Updated i18n strings to use "background search" terminology |
| Configuration files | Removed feature flag server arguments from test configurations |
Comments suppressed due to low confidence (1)
src/platform/plugins/shared/data/public/search/session/sessions_mgmt/components/table/actions/rename_button.tsx:1
- The closing parenthesis and brace placement is incorrect. The
aria-labelassignment should end with just})not})}since it's a template literal interpolation.
/*
...s/shared/data/public/search/session/sessions_mgmt/components/table/actions/rename_button.tsx
Outdated
Show resolved
Hide resolved
...ublic/search/session/session_indicator/search_session_indicator/search_session_indicator.tsx
Outdated
Show resolved
Hide resolved
...arch/session/session_indicator/search_session_indicator/search_session_indicator.stories.tsx
Outdated
Show resolved
Hide resolved
…_indicator/search_session_indicator/search_session_indicator.tsx Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…_indicator/search_session_indicator/search_session_indicator.stories.tsx Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ana into data-background-search-enable
💚 Build Succeeded
Metrics [docs]Module Count
Async chunks
Page load bundle
History
cc @kertal |
| chrome.setBreadcrumbsAppendExtension({ | ||
| content: toMountPoint( | ||
| React.createElement( | ||
| createConnectedSearchSessionIndicator({ |
There was a problem hiding this comment.
should we add a task to clean up this code?
There was a problem hiding this comment.
yes, we should add a task to generally clean up a lot of dead code 🥳
AlexGPlay
left a comment
There was a problem hiding this comment.
lgtm - we should add a task to later on clean up the dead code + fix the skipped tests
|
Pinging @elastic/kibana-data-discovery (Team:DataDiscovery) |
gsoldevila
left a comment
There was a problem hiding this comment.
LGTM! Rebranding "Search Sessions" into "Background Search"
damian-polewski
left a comment
There was a problem hiding this comment.
kibana-management changes LGTM!
Enables sending searches to the background in Discover and Dashboard. Introducing the ability for users to send long-running searches to the background. In both Discover and Dashboard, the query bar’s “Refresh” button now includes a “Send to background” action. Once a search is running, users can offload it to the background, allowing them to continue working without waiting for the query to complete. A new button in the query bar opens a flyout listing all completed background searches, making it easy to revisit and manage them. This feature replaces the deprecated search sessions and removes the background search feature flag. Co-authored-by: Alex Garcia <alex.garcia@elastic.co>
Resolves #229958
The PR enables our user to send to searches to the "background". This is especially useful for long running queries.
CleanShot.2025-09-29.at.21.22.48.mp4
Both in Discover and Dashboard the query bar "Refresh" button is extended with a "Send to background" button
Once the query is running, users can send it to the background.
There's a new button in the applications query bar allowing to open a flyout with background searches.
This button allows users to open completed background searches.
Code changes
Removal of Background Search Feature Flag and Related Logic:
BACKGROUND_SEARCH_FEATURE_FLAG_KEYconstant and all code referencing the background search feature flag, including conditional logic and feature flag checks insearch_interceptor.ts,search_service.ts, and related files. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15]kbn-background-search/README.md.Messaging and Label Updates:
Codebase Cleanup and Simplification:
search_service.ts,connected_search_session_indicator.tsx, and related files. [1] [2] [3] [4] [5] [6]Checklist
release_note:breakinglabel should be applied in these situations.release_note:*label is applied per the guidelinesbackport:*labels.