-
Notifications
You must be signed in to change notification settings - Fork 8.5k
Improve rolling appender test logic #242095
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
gsoldevila
merged 2 commits into
elastic:main
from
gsoldevila:kbn-232893-improve-rolling-appender
Nov 7, 2025
Merged
Improve rolling appender test logic #242095
gsoldevila
merged 2 commits into
elastic:main
from
gsoldevila:kbn-232893-improve-rolling-appender
Nov 7, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contributor
|
Pinging @elastic/kibana-core (Team:Core) |
Contributor
💚 Build Succeeded
Metrics [docs]
cc @gsoldevila |
Bamieh
approved these changes
Nov 7, 2025
Contributor
|
Starting backport for target branches: 8.19, 9.1, 9.2 |
kibanamachine
pushed a commit
to kibanamachine/kibana
that referenced
this pull request
Nov 7, 2025
## Summary Closes elastic#232893 The previous improvements were not enough, [latest failure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012) shows that we can't guarantee how many times the rolling logic has run: <img width="846" height="272" alt="image" src="https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9" /> The PR makes the test even more resilient by not assuming that the rolling logid has run exactly twice, and instead it just makes assertions that are valid for the 2 scenarios: * Assert there are multiple log files (rollover has happened). * Assert that the rolled files are not empty * Assert that when concatenating all log files in an ordered fashion, no log entries are lost. (cherry picked from commit 11a9589)
kibanamachine
pushed a commit
to kibanamachine/kibana
that referenced
this pull request
Nov 7, 2025
## Summary Closes elastic#232893 The previous improvements were not enough, [latest failure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012) shows that we can't guarantee how many times the rolling logic has run: <img width="846" height="272" alt="image" src="https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9" /> The PR makes the test even more resilient by not assuming that the rolling logid has run exactly twice, and instead it just makes assertions that are valid for the 2 scenarios: * Assert there are multiple log files (rollover has happened). * Assert that the rolled files are not empty * Assert that when concatenating all log files in an ordered fashion, no log entries are lost. (cherry picked from commit 11a9589)
kibanamachine
pushed a commit
to kibanamachine/kibana
that referenced
this pull request
Nov 7, 2025
## Summary Closes elastic#232893 The previous improvements were not enough, [latest failure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012) shows that we can't guarantee how many times the rolling logic has run: <img width="846" height="272" alt="image" src="https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9" /> The PR makes the test even more resilient by not assuming that the rolling logid has run exactly twice, and instead it just makes assertions that are valid for the 2 scenarios: * Assert there are multiple log files (rollover has happened). * Assert that the rolled files are not empty * Assert that when concatenating all log files in an ordered fashion, no log entries are lost. (cherry picked from commit 11a9589)
Contributor
💚 All backports created successfully
Note: Successful backport PRs will be merged automatically after passing CI. Questions ?Please refer to the Backport tool documentation |
kibanamachine
added a commit
that referenced
this pull request
Nov 7, 2025
# Backport This will backport the following commits from `main` to `9.1`: - [Improve rolling appender test logic (#242095)](#242095) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Gerard Soldevila","email":"[email protected]"},"sourceCommit":{"committedDate":"2025-11-07T13:27:52Z","message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2","branchLabelMapping":{"^v9.3.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Core","release_note:skip","test-failure-flaky","backport:all-open","v9.3.0"],"title":"Improve rolling appender test logic","number":242095,"url":"https://github.com/elastic/kibana/pull/242095","mergeCommit":{"message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.3.0","branchLabelMappingKey":"^v9.3.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/242095","number":242095,"mergeCommit":{"message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2"}}]}] BACKPORT--> Co-authored-by: Gerard Soldevila <[email protected]>
kibanamachine
added a commit
that referenced
this pull request
Nov 7, 2025
# Backport This will backport the following commits from `main` to `9.2`: - [Improve rolling appender test logic (#242095)](#242095) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Gerard Soldevila","email":"[email protected]"},"sourceCommit":{"committedDate":"2025-11-07T13:27:52Z","message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2","branchLabelMapping":{"^v9.3.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Core","release_note:skip","test-failure-flaky","backport:all-open","v9.3.0"],"title":"Improve rolling appender test logic","number":242095,"url":"https://github.com/elastic/kibana/pull/242095","mergeCommit":{"message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.3.0","branchLabelMappingKey":"^v9.3.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/242095","number":242095,"mergeCommit":{"message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2"}}]}] BACKPORT--> Co-authored-by: Gerard Soldevila <[email protected]>
kibanamachine
added a commit
that referenced
this pull request
Nov 7, 2025
# Backport This will backport the following commits from `main` to `8.19`: - [Improve rolling appender test logic (#242095)](#242095) <!--- Backport version: 9.6.6 --> ### Questions ? Please refer to the [Backport tool documentation](https://github.com/sorenlouv/backport) <!--BACKPORT [{"author":{"name":"Gerard Soldevila","email":"[email protected]"},"sourceCommit":{"committedDate":"2025-11-07T13:27:52Z","message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2","branchLabelMapping":{"^v9.3.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Core","release_note:skip","test-failure-flaky","backport:all-open","v9.3.0"],"title":"Improve rolling appender test logic","number":242095,"url":"https://github.com/elastic/kibana/pull/242095","mergeCommit":{"message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.3.0","branchLabelMappingKey":"^v9.3.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/242095","number":242095,"mergeCommit":{"message":"Improve rolling appender test logic (#242095)\n\n## Summary\n\nCloses https://github.com/elastic/kibana/issues/232893\n\nThe previous improvements were not enough, [latest\nfailure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012)\nshows that we can't guarantee how many times the rolling logic has run:\n\n<img width=\"846\" height=\"272\" alt=\"image\"\nsrc=\"https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9\"\n/>\n\nThe PR makes the test even more resilient by not assuming that the\nrolling logid has run exactly twice, and instead it just makes\nassertions that are valid for the 2 scenarios:\n* Assert there are multiple log files (rollover has happened).\n* Assert that the rolled files are not empty\n* Assert that when concatenating all log files in an ordered fashion, no\nlog entries are lost.","sha":"11a9589ea8068a734dcd0eb9845d462ab73330e2"}}]}] BACKPORT--> Co-authored-by: Gerard Soldevila <[email protected]>
dennis-tismenko
added a commit
to mattnowzari/kibana
that referenced
this pull request
Nov 10, 2025
* [Discover][Traces] Revert back to Overview trace tab title (#242143) ## Summary Quick fix for reverting the Trace Document overview tab title to be just "Overview". ## How to test - Go to Discover whilst on an Observability space, select a traces index in either Classic or ES|QL mode. - Open a trace document, ensure the initial tab is titled "Overview" and not "Trace Overview" * [Security Solution] Fix top n popover overlapping new case flyout (#242045) ## Summary Ref: - https://github.com/elastic/kibana/issues/222534 - https://github.com/elastic/kibana/issues/157732 - https://github.com/elastic/kibana/issues/209752 - https://github.com/elastic/kibana/issues/181231 The bug: when top n is opened via hover actions, clicking more options (3 dots) opens another popover. When user clicks open new case action, the second popover is closed, but the top n popover remains open. This PR updated the new case action to always close the top n popover when the flyout is open. https://github.com/user-attachments/assets/424b0c59-c129-43c4-b2f4-5fed41cdc2bc ### Checklist - [ ] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [ ] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. * [One Workflow] Move store from widgets to entities (#242003) ## Summary This is just a refactor, moving files around. No behavior change has been introduced. Redux store: - previous location: `public/widgets/workflow_yaml_editor/lib/store` - new location: `public/entities/workflows/store` * [Infra] Fix flaky test by waiting for search term to clear before proceeding (#242109) ## Summary The `clearSearchTerm` method was not waiting for the input value to be cleared before submitting, causing flakiness - Added retry logic to `clearSearchTerm` helper method to wait for the input value to be empty before submitting - Added call to `clearSearchTerm` at the start of the `change color palette` test to ensure clean state - Added call to `clearSearchTerm` at the start of every retry in `filter nodes by search term` test - Run into issue where test would retry and add `host.name: "host-1"` on top of the previous search, due to no cleanup Fixes #241734 * [Agent Builder] Refactor flyout to use EUI elements (#242121) * Vertically align star button favorite (#242149) ## Summary This PR resolves [[SharedUX] Fix vertical align of star button for favourite dashboards](https://github.com/elastic/kibana/issues/242139) issue. Before <img width="1728" height="415" alt="Screenshot 2025-11-06 at 15 49 33" src="https://github.com/user-attachments/assets/fbac0312-d2e2-4572-8c2e-3a2bf57f3f6e" /> After <img width="1728" height="501" alt="Screenshot 2025-11-06 at 15 46 48" src="https://github.com/user-attachments/assets/34d089a0-1cb6-40b7-8b3a-c16799808ff2" /> <img width="1728" height="485" alt="Screenshot 2025-11-06 at 15 48 51" src="https://github.com/user-attachments/assets/f2d3ef90-ea77-4128-a52d-a2c793c4bccf" /> --------- Co-authored-by: Robert Jaszczurek <[email protected]> * [Dashboard] Unskip saved query functional tests (#241512) ## Summary Closes [189023](https://github.com/elastic/kibana/issues/189023). This unskips the saved query dashboard functional test suite and skips the individual test which is failing due to a regression tracked here https://github.com/elastic/kibana/issues/242039. Flaky test runner: https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/9751 ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [ ] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [ ] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [ ] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [ ] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [ ] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ### Identify risks Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss. Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging. - [ ] [See some risk examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) - [ ] ... --------- Co-authored-by: Elastic Machine <[email protected]> * [ResponseOps][Connector] Nicer formatting for zod validation error messages (#240507) Resolves https://github.com/elastic/kibana-team/issues/2149 ## Summary Followup to https://github.com/elastic/kibana/pull/238309 Formats zod errors to be easier to read. I considered using the existing `stringifyZodErrors` [function](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-zod-helpers/src/stringify_zod_error.ts) but wanted to use the built in error formatting available in Zod: https://v3.zod.dev/ERROR_HANDLING?id=a-working-example --------- Co-authored-by: Elastic Machine <[email protected]> * [Discover Tabs] Show data view name instead of "empty query" in the tab preview (#237667) - Closes https://github.com/elastic/kibana/issues/229759 ## Summary This PR adds the current data view name to a tab preview. ### Before <img width="719" height="297" alt="Screenshot 2025-10-06 at 16 38 20" src="https://github.com/user-attachments/assets/e9c44931-8b94-4015-bb18-d094eb10c2dd" /> ### After <img width="371" height="186" alt="Screenshot 2025-10-06 at 16 17 46" src="https://github.com/user-attachments/assets/94d485aa-3626-41b0-bb20-6e4ddd8eca4f" /> ### Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [x] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. --------- Co-authored-by: kibanamachine <[email protected]> Co-authored-by: Davis McPhee <[email protected]> * skip flaky suite (#241757) * [Security solution][Alerts] Fix threshold source event (#238707) ## Summary #234305 ## 🛑 Problem As described in the liked issue, when an alert is generated by a "threshold" rule, its source event link won't work. ### How to reproduce 1. Go to the SIEM rules page 2. Create a new "threshold" rule and configure it as follows: <details><summary>Screenshot 📷 </summary> <img width="847" height="847" alt="Screenshot 2025-10-24 at 19 33 32" src="https://github.com/user-attachments/assets/09989ccb-46c9-4ce1-a6de-69e7034d130b" /> </details> 3. Save the rule and go back to the alerts page 4. Open an alert generated by the threshold rule 5. Notice that in the highlights table, the "source event" field contains a clickable ID 6. Try to click that ID, you should get an error. <details><summary>Screenshot 📷 </summary> <img width="1275" height="996" alt="Screenshot 2025-10-24 at 19 33 51" src="https://github.com/user-attachments/assets/dce86181-274f-47cb-9ab9-d960b5a6dd6f" /> </details> ## 🔍 Investigation result After some investigation and alignment with the detection-engine team, it turns out that the threshold rule create a fake event to represent the aggregation bucket of events they are analysing, and then use these fake info to populate the ancestor's fields. ## 💡 Solution After discussing a few possible solutions with my team, we landed on adding some logic in the highlights table in order to remove the `Source event` field in case the alert has originated from a threshold rule * skip flaky suite (#241077) * Update reporting dependencies (main) (#235590) Renovate updates for `pdfmake`, `@types/pdfmake`, `@types/extract-zip` | package | version | |---|---| | `@types/extract-zip` | `^1.6.2` -> `^2.0.3` | | `@types/pdfmake` | `^0.2.2` -> `^0.2.12` | | `pdfmake` | `^0.2.15` -> `^0.2.20` | * skip flaky suite (#223652) * [Fleet] Disable standalone installation for Fleet Server policies (#241699) Users could access standalone installation mode for Fleet Server policies from the Installed Integrations tab, despite this being operationally invalid. The Agent Policy tab correctly prevented this. ## Changes - **AgentEnrollmentFlyout**: Disable standalone tab when `isFleetServerPolicySelected` is true - **Tests**: Added coverage for Fleet Server policy standalone tab behavior ## Implementation ```typescript <EuiTab data-test-subj="standaloneTab" disabled={!authz.fleet.readAgentPolicies || isFleetServerPolicySelected} > Run standalone </EuiTab> ``` The fix reuses existing Fleet Server detection logic already present in the component. Standalone mode remains available for regular policies. ## Fixes https://github.com/elastic/kibana/issues/[issue-number] > [!WARNING] > > <details> > <summary>Firewall rules blocked me from connecting to one or more addresses (expand for details)</summary> > > #### I tried to connect to the following addresses, but was blocked by firewall rules: > > - `ci-stats.kibana.dev` > - Triggering command: `/home/REDACTED/.nvm/versions/node/v22.17.1/bin/node --no-experimental-require-module scripts/kbn bootstrap --quiet` (dns block) > - Triggering command: `/home/REDACTED/.nvm/versions/node/v22.17.1/bin/node --no-experimental-require-module scripts/kbn clean` (dns block) > - Triggering command: `/home/REDACTED/.nvm/versions/node/v22.17.1/bin/node --no-experimental-require-module scripts/kbn bootstrap --force-install` (dns block) > - `download.cypress.io` > - `googlechromelabs.github.io` > - Triggering command: `/home/REDACTED/.nvm/versions/node/v22.17.1/bin/node install.js` (dns block) > - `iojs.org` > - Triggering command: `curl -q --fail --compressed -L -s REDACTED -o -` (dns block) > > If you need me to access, download, or install something from one of these locations, you can either: > > - Configure [Actions setup steps](https://gh.io/copilot/actions-setup-steps) to set up my environment, which run before the firewall is enabled > - Add the appropriate URLs or hosts to the custom allowlist in this repository's [Copilot coding agent settings](https://github.com/elastic/kibana/settings/copilot/coding_agent) (admins only) > > </details> <!-- START COPILOT CODING AGENT SUFFIX --> <details> <summary>Original prompt</summary> > > ---- > > *This section details on the original issue you should resolve* > > <issue_title>[Fleet]: User is able to open Standalone installation flyout for Agent policy with Fleet Server integration.</issue_title> > <issue_description>**Kibana version:** > ``` > VERSION: 9.2.0-SNAPSHOT > BUILD: 91136 > COMMIT: 8d4b0956586284c35db97de2baea49b58476ee2a > ``` > > **Preconditions:** > 1. 9.2.0-SNAPSHOT Kibana cloud environment should be available. > > **Steps to reproduce:** > 1. Add Fleet Server integration to any Agent policy. > 2. Observe user is not able to open Standalone mode of installation for Fleet Server agent policy under Agents/Agent policy tab. > 3. Now navigate to Installed integrations tab. > 4. Click Add agent for Agent policy with Fleet Server integration. > 5. Observe user is able to open Standalone installation flyout for Agent policy with Fleet Server integration. > > **Expected behavior:** > User should not be able to open Standalone installation flyout for Agent policy with Fleet Server integration. > > **Screen Capture:** > > > https://github.com/user-attachments/assets/b36a2f9d-2a15-4342-bbae-c01332364c6b</issue_description> > > ## Comments on the Issue (you are @copilot in this section) > > <comments> > <comment_new><author>@elasticmachine</author><body> > Pinging @elastic/fleet (Team:Fleet)</body></comment_new> > <comment_new><author>@amolnater-qasource</author><body> > @muskangulati-qasource Please review.</body></comment_new> > <comment_new><author>@amolnater-qasource</author><body> > **Suggestion to address the issue:** > **Version:** Copilot- GPT-4.1 > > **Root Cause:** > - The UI logic that determines whether to show/enable the Standalone installation flyout for a given Agent policy is not correctly checking if the policy includes a Fleet Server integration. > - The check seems to be present in the Agents/Agent policy tab but missing in the Installed integrations tab. > > **Steps to Fix:** > > 1. **Locate Policy Restriction Logic:** > - Identify the code that controls the visibility/enabling of the Standalone installation flyout button in both the Agent policy and Installed integrations tabs. > - Typically, this logic will exist in components like: > - `x-pack/plugins/fleet/public/sections/agent_policy/` > - `x-pack/plugins/fleet/public/sections/agent_policy/components/` > - `x-pack/plugins/fleet/public/sections/agents/components/` > - `x-pack/plugins/fleet/public/applications/fleet/sections/installed_integrations/` > > 2. **Find the Standalone Installation Trigger:** > - The flyout is usually triggered by an "Add agent" button. Locate where this button is rendered and what conditions are used to enable/disable it. > - Example files: > - `x-pack/plugins/fleet/public/sections/agent_policy/components/agent_policy_add_agent_button.tsx` > - `x-pack/plugins/fleet/public/sections/agents/components/add_agent_flyout.tsx` > - `x-pack/plugins/fleet/public/sections/installed_integrations/view/agent_policy_selection_table.tsx` > > 3. **Unify the Check:** > - Ensure that before rendering or enabling the Standalone installation flyout, you check if the selected Agent policy contains a Fleet Server integration. > - The check is often like: > ```ts > const hasFleetServer = agentPolicy?.package_policies?.some( > (pkg) => pkg.package?.name === 'fleet_server' > ); > ``` > - If `hasFleetServer` is true, disable or hide the Standalone installation option. > > 4. **Update UI in Installed Integrations Tab:** > - In the Installed integrations tab, locate where the "Add agent" button or flyout is triggered. > - Apply the same check as in the Agent policy tab to prevent the flyout from opening if the policy has Fleet Server. > > **Key Filenames to Modify:** > - `x-pack/plugins/fleet/public/sections/installed_integrations/view/agent_policy_selection_table.tsx` > (or similar, depending on where the "Add agent" button is handled for installed integrations) > - `x-pack/plugins/fleet/public/sections/agent_policy/components/agent_policy_add_agent_button.tsx` > (ensure logic is consistent) > </body></comment_new> > <comment_new><author>@muskangulati-qasource</author><body> > Secondary review is Done for this ticket!</body></comment_new> > </comments> > </details> - Fixes elastic/kibana#236875 <!-- START COPILOT CODING AGENT TIPS --> --- 💬 We'd love your input! Share your thoughts on Copilot coding agent in our [2 minute survey](https://gh.io/copilot-coding-agent-survey). --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: jen-huang <[email protected]> Co-authored-by: Jen Huang <[email protected]> * [Agent Builder] Basic Telemetry (#241756) ## Summary partially resolves https://github.com/elastic/search-team/issues/11104 - [x] basic telemetry infrastructure - [x] number of custom tools - [x] number of custom agents - [x] number of rounds per conversation - [x] query to result time - [x] total number of tool calls example payload: ``` {"telemetry":{"custom_tools":{"total":12,"by_type":[{"type":"esql","count":12}]},"custom_agents":{"total":1},"conversations":{"total":33,"total_rounds":104,"avg_rounds_per_conversation":3.15,"rounds_distribution":[{"bucket":"1-5","count":32},{"bucket":"6-10","count":1}]},"query_to_result_time":{"p50":10000,"p75":20000,"p90":26000,"p95":28000,"p99":29600,"mean":13750},"tool_calls":{"total":2,"by_source":{"default_agent":0,"custom_agent":0,"mcp":0,"api":2,"a2a":0}}}} ``` --------- Co-authored-by: kibanamachine <[email protected]> * dependency: update `yaml` package to 2.8.1 (#242178) This pull request updates the `yaml` dependency in the `package.json` file to a newer version. This is a minor change that ensures the project uses the latest features and bug fixes from the `yaml` package. * skip flaky suite (#241403) * skip flaky suite (#240055) * skip flaky suite (#241729) * skip flaky suite (#241728) * skip flaky suite (#241727) * skip flaky suite (#241490) * skip flaky suite (#223654) * skip flaky suite (#222865) * Scaffold data connectors plugin (#241160) ## Summary Scaffolding out the Data Connectors plugin, which will initially be leveraged by the Workplace AI serverless solution. <img width="1515" height="931" alt="Screenshot 2025-11-04 at 4 36 41 PM" src="https://github.com/user-attachments/assets/a7949a9c-d57f-480b-8225-b2e688e22345" /> ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [x] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [x] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [x] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [x] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [x] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. --------- Co-authored-by: kibanamachine <[email protected]> * Update docker.elastic.co/wolfi/chainguard-base:latest Docker digest to 4d7c143 (main) (#242079) This PR contains the following updates: | Package | Update | Change | |---|---|---| | docker.elastic.co/wolfi/chainguard-base | digest | `401d868` -> `4d7c143` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJUZWFtOk9wZXJhdGlvbnMiLCJiYWNrcG9ydDpza2lwIiwicmVsZWFzZV9ub3RlOnNraXAiXX0=--> Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com> * [api-docs] 2025-11-07 Daily api_docs build (#242218) Generated by https://buildkite.com/elastic/kibana-api-docs-daily/builds/1249 * [Background search] Don't cancel backgrounded searches on search:timeout (#241570) ## Summary Closes https://github.com/elastic/kibana/issues/240513 Before this PR we are cancelling searches after the search:timeout even if they are backgrounded, that shouldn't be the case - with this changes we still cancel the foreground execution, the user will see partial results, but the backgrounded query remains running. Before https://github.com/user-attachments/assets/f598f384-4723-4311-88c7-dde44b519543 After https://github.com/user-attachments/assets/3a04ace3-888b-4e1a-af5c-5d2890fc6285 ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. * [ES|QL] Move cursor outside function autocomplete if it has no args (#242140) Closes https://github.com/elastic/kibana/issues/240766 ## Summary If a function has no arguments, don't place the cursor inside the parentheses in the autocomplete. ## Before `WHERE NOW(/cursor)` ## After `WHERE NOW()/cursor` * [Metrics][Discover] Change the fields count loading indicator (#241920) closes [#240939](https://github.com/elastic/kibana/issues/240939) ## Summary This PR updates the loading indicator for the field count. Instead of displaying the count only after all requests have completed, it now shows the count as soon as any data becomes available.  >[!NOTE] > When **reloading** the grid, the field count may take a few seconds to update from the previously known value to the new one. This happens because the grid preserves the currently loaded data while new requests are still in progress. ### How to test - Start a local Kibana instance and point it to an oblt cluster - the bug is more likely to occur when the performance is worse ```yml feature_flags.overrides: metricsExperienceEnabled: true ``` - Navigate to Discover and Switch to ESQL mode - Click on refresh Co-authored-by: Elastic Machine <[email protected]> * [Cases] Only take tags-changes into account when connector supports them (#241944) ## Summary Addresses https://github.com/elastic/kibana/issues/180902 The `tags` of a cases are currently only sent to the cases connector and the `the hive` connector. For all other connectors, changes of `tags` should not show the `Push to XYZ` button. * Provide useful feedback to understand `scroll_count` test failures (#226725) ## Summary Work towards understanding failures like the one below: https://elastic.slack.com/archives/C0574PUV998/p1751621814280109 <img width="583" alt="image" src="https://github.com/user-attachments/assets/1a14e4f6-dd7a-45b6-9eec-04634bd3a55b" /> The [archive](https://github.com/elastic/kibana/blob/355a834659b74333162008d54d44be0f2a14fb6b/src/platform/test/api_integration/fixtures/kbn_archiver/saved_objects/scroll_count.json#L1-L15) used for the test only defines 1 single `index-pattern`. However, the API that does the count `/api/kibana/management/saved_objects/scroll/counts` is returning 2. The PR aims at printing the `index-patterns` to try and shed some light: * Either someone is adding a second index-pattern. * Or the API is not counting correctly. * [Kibana Dev MCP] Add `find_dependency_references` tool (#241639) * [AgentBuilder] [Flyout] passing "hidden" app level atttachments (#241260) ## Summary Allows passing attachments to Agent Builder flyout - only sends the attachments that changed since previous conversation round to the next conversation round - rebuilds internal attachmentsMap from conversation history resolves https://github.com/elastic/search-team/issues/11711 --------- Co-authored-by: kibanamachine <[email protected]> * [Discover][APM] Fix message warning not appearing from context (#242173) ## Summary Fixes the warning messages not appearing in the Unified Trace Waterfall, as it wasn't getting passed into the context correctly. <img width="475" height="193" alt="image" src="https://github.com/user-attachments/assets/f35d4a99-2b74-4f54-9cf0-16902d95bbe0" /> ## How to test - Go to Discover whilst on Observability space, select an OTEL traces index in either classic or ES|QL mode - Open a trace document and view the overview, find until you get a trace with partial/incomplete data. - The warning should show in full on the focused trace waterfall, and on the full trace waterfall * Clean-up Graph grouping after release (#238395) ## Summary Address feedback from merged PRs and fix issues that were not part of v9.2.0 release. ### Changes Polishing - [x] Replace string literals with `DOCUMENT_TYPE_{ENTITY|EVENT|ALERT}` constants - [x] Address Alex's comments in merged PRs Fixes - [x] Only allow to expand details for single/grouped nodes when possible - [x] i18n issues in `PaginationControls.tsx` Enhancements - [x] Navigate to event/alert preview panel from group preview panel (not possible for entities so link remains bogus for them) Testing - [x] Clean-up helper function in API FTR test - [x] Write preview panel unit tests - [x] Re-enable skipped GraphVisualization tests - [x] Extend GraphVisualization tests to have coverage for grouped nodes - [x] Re-enable skipped GraphInvestigation stories tests - had to skip because of bug expanding details for single/grouped nodes - [x] Write e2e tests that test opening/closing preview panel and loading paginated document details ### How to test 1. Run Elasticsearch with `yarn es snapshot --license trial -E reindex.remote.whitelist=keep-long-live-env-ess.es.us-west2.gcp.elastic-cloud.com:443` 2. Run Kibana locally with `yarn start --no-base-path` 3. Install Cloud Asset Discovery (skip agent installation) 4. Re-index Asset Inventory data with this query ``` POST _reindex?wait_for_completion=true { "conflicts": "proceed", "source": { "remote": { "host": "${ES_REMOTE_HOST}", # <-- Set var in Config tab to https://keep-long-live-env-ess.es.us-west2.gcp.elastic-cloud.com:443 "username": "${ES_REMOTE_USER}", # <-- Set var in Config tab to your user in https://keep-long-live-env-ess.kb.us-west2.gcp.elastic-cloud.com/app/management/security/users i.e. alberto "password": "${ES_REMOTE_PASS}" # <-- Set var in Config tab to your password in the same cloud env }, "index": "logs-cloud_asset_inventory*", "query": { "bool": { "must": [ { "range": { "@timestamp": { "gte": "now-1d" } } } ] } } }, "dest": { "op_type": "create", "index": "logs-cloud_asset_inventory.asset_inventory-default" } } ``` 5. Reindex AWS Cloudtrail logs with this query ``` POST _reindex?wait_for_completion=false { "conflicts": "proceed", "source": { "remote": { "host": "${ES_REMOTE_HOST}", "username": "${ES_REMOTE_USER}", "password": "${ES_REMOTE_PASS}" }, "index": "logs-aws.cloudtrail-*", "query": { "bool": { "must": [], "filter": [ { "range": { "@timestamp": { "gte": "now-3h", "lte": "now" } } } ] } } }, "dest": { "op_type": "create", "index": "logs-aws.cloudtrail-reindexed" } } ``` 6. Create a new Data View that matches this index pattern `logs-aws.cloudtrail-*`. Give it the exact same name 7. Create a new rule associated with the Data View created in the previous step. Set the query to existing `@timestamp: * and target.entity.id: *`. Enable the rule. 8. Go to Alerts page. Set the date range from several days ago until now. Wait for alerts to show. 9. Open one alert flyout and check you can expand the Graph Visualization tab. 10. Click on all options to show related events, related entities, show actions on this entity, etc.... try to show as many nodes as possible and check they're grouped. ### Checklist - [x] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [x] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ### Identify risks No risks for customers with feature hidden behind advanced setting. * Update docker.elastic.co/wolfi/chainguard-base-fips:latest Docker digest to 8de0d35 (main) (#242078) This PR contains the following updates: | Package | Update | Change | |---|---|---| | docker.elastic.co/wolfi/chainguard-base-fips | digest | `dea9b73` -> `8de0d35` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://redirect.github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJUZWFtOk9wZXJhdGlvbnMiLCJiYWNrcG9ydDpza2lwIiwiY2k6YnVpbGQtZG9ja2VyLWZpcHMiLCJyZWxlYXNlX25vdGU6c2tpcCJdfQ==--> Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com> Co-authored-by: Brad White <[email protected]> * [Streams] Refine Suggestions Before Save (#241439) ## Summary This PR allows user to edit a given partition suggestion before saving it. Cell actions can also be used when editing an AI suggestions same as for the manually created ones. ## 🎥 Demo https://github.com/user-attachments/assets/9b65a095-d1cc-478e-b0e1-6584945b7e74 * 🌊 Streams: Decouple streams AI features from observability ai assistant (#242019) Fixes https://github.com/elastic/kibana/issues/241450 Right now, streams AI features are coupled to the observability AI assistant. This means that in a security space, these features don't show up, even if an AI connector is available. This PR changes the logic: * Instead of checking for the observability ai assistant, check whether the current user has read permission for the connectors * Fork the logic of the observability assistant for managing the list of connectors and implement it specifically for streams * Picks the default connector that was used in the observability assistant, but then maintains streams-specific local state for which connector to use This is a temporary workaround - once agent builder is integrated with security and observability, it can be removed and we can integrate with agent builder to manage access to AI features. This also fixes an unrelated issue I stumbled over - we weren't handling aggregate errors very well (toast wouldn't have a message), now it shows the underlying error: <img width="298" height="234" alt="Screenshot 2025-11-06 at 09 50 15" src="https://github.com/user-attachments/assets/802ca8ca-9325-40c0-8162-088613492268" /> --------- Co-authored-by: kibanamachine <[email protected]> * [ES|QL] [Lens] Hide ES|QL editor when flyout toolbar is open (#241952) ## Summary For ES|QL panel config panel, it hides the ES|QL editor when the flyout toolbar is open. Additionally, it makes the visualization toolbar buttons appear on the right instead of on the left. Closes https://github.com/elastic/kibana/issues/241913 **Problem** Because of the order of the stacking context, the dialog (secondary flyout) was getting overlayed by the editor. **Proposed solution** We need to add a z-index in the flyout toolbar, higher than the editor one, to fix the problem. **Explanation** ES|QL editor z-index is defined here: https://github.com/elastic/kibana/blob/496455cd33d3e799b47da77b808fef3ec9bbbfac/src/platform/packages/private/kbn-esql-editor/src/esql_editor.tsx#L963 As the ES|QL editor has the same z-index as the dialog, it shares the stacking context with the flyout toolbar and it is **rendered later**, it appears on top of the dialog. ### Screenshots #### Before <img width="743" height="831" alt="Screenshot 2025-11-05 at 13 51 38" src="https://github.com/user-attachments/assets/38d893cf-2659-4ebe-b6f8-27e1fef4371f" /> #### After https://github.com/user-attachments/assets/d7d851bf-f78b-4f9a-984c-db6b2e569e09 ### Checklist - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. * [Background search] Add telemetry (#238388) ## Summary Closes https://github.com/elastic/kibana/issues/235482 With this PR telemetry for background search is added in multiple places, we have the following evets: - `bg_search_start` when a background search saved object is created. - `bg_search_cancel` when a search session is cancelled - right now this isn't used anywhere - `bg_search_open` when a search session is restored - `bg_search_list_view` when the management table is showed There are some limitations/difficulties in this so not all the props are implemented: - When doing `bg_search_complete` we have 2 legacy sources, TSVB and Timelion which don't provide all the information regarding runtime and results size or is more complex to get. - Timelion doesn't provide the information - TSVB can have multiple data sources so we can measure many things here - When doing `bg_search_open` we just follow a URL so it's kind of tricky to get from where it was opened. ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. * [One Workflow] Workflow List Page - UI/UX Design Alignment (#241793) closes: https://github.com/elastic/security-team/issues/14324 ## Design Issues to Address ### 1. Header Spacing Issues - [x] **Fix header top padding** - Reduce top padding from 8px to match design specifications - Reference: [Figma - Item 1](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765189) <img width="448" height="233" alt="image" src="https://github.com/user-attachments/assets/03f27a92-9407-4066-b870-c3caa683fb6b" /> ### 2. Title Section Spacing - [x] **Adjust "Workflows" title bottom padding** - Reduce bottom padding from 32px to match design specifications - Reference: [Figma - Item 2](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765233) <img width="455" height="238" alt="image" src="https://github.com/user-attachments/assets/387ee3c9-8a53-4d14-9780-a5f3dcf5a417" /> ### 4. Search and Refresh Elements - [x] **Update "Workflow name/description" search placeholder font** - Change font size from 16px to 14px - [x] **Reposition Refresh button** - Adjust alignment relative to search bar for better visual hierarchy - Reference: [Figma - Item 4](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765302) <img width="453" height="252" alt="image" src="https://github.com/user-attachments/assets/32f126ea-0c2c-4b1d-943f-541132c50af6" /> ### 5. Workflow Count Display - [x] **Fix "Showing 1-10 of 35 workflows" text positioning** - Number of showing workflows needs to be bold and positioned at 12px from search/table - Reference: [Figma - Item 4](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765302) <img width="453" height="252" alt="image" src="https://github.com/user-attachments/assets/32f126ea-0c2c-4b1d-943f-541132c50af6" /> ### 6. Table Row Spacing - [x] **Correct "showing 1-8" line spacing** - Move text closer to the search bar than to the table for proper visual grouping - Reference: [Figma - Item 5](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765336) <img width="455" height="252" alt="image" src="https://github.com/user-attachments/assets/508a1264-bc4b-4480-8b7e-9d99832bc972" /> ### 7. Table Content Spacing - [x] **Adjust showing numbers proximity** - Showing numbers should be 6px to table and 20px to search for better spacing hierarchy - Reference: [Figma - Item 5](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765336) <img width="455" height="252" alt="image" src="https://github.com/user-attachments/assets/508a1264-bc4b-4480-8b7e-9d99832bc972" /> ### 8. Workflow Description Font Size - [x] **Update workflow name font size** - Change from 14px to 12px for improved readability and consistency - Reference: [Figma - Item 6](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765382) <img width="469" height="261" alt="image" src="https://github.com/user-attachments/assets/3fb9ea93-d234-48fd-8bc7-df956c8f1356" /> ### 9. Row Height and Padding - [x] **Fix row height dimensions** - Adjust from current 57px to 68px with top and bottom padding of 10px each - Reference: [Figma - Item 7](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765422) <img width="458" height="249" alt="image" src="https://github.com/user-attachments/assets/41615949-a32e-45c3-aa28-da5f9fbfbe8e" /> ### 11. Tags Display - [x] **Fix tags behavior and spacing** - Address layout issues with tag display and arrangement - Reference: [Figma - Item 9](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765630) https://github.com/user-attachments/assets/adbd7f81-1f85-4380-bc49-357c28c629f2 ### 12. Dropdown Component - [x] **Refine dropdown styling** - Update dropdown component appearance and behavior - Reference: [Figma - Item 10](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765659) <img width="354" height="129" alt="image" src="https://github.com/user-attachments/assets/c638a6b5-5195-4a04-813a-27ca0f38cb42" /> ### 13. Trigger Column Spacing - [x] **Reduce excessive spacing in trigger column** - Too much white space present, compress for better table density - Reference: [Figma - Item 11](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG?node-id=4394-14#1486765659) <img width="330" height="227" alt="image" src="https://github.com/user-attachments/assets/58329742-e146-47bf-a5c7-60cc95daf0d8" /> --- ## Notes - All measurements are in pixels unless otherwise specified - Design references link to Figma file sections showing before/after states ## Design - [Figma File](https://www.figma.com/design/8fTMPWhL033B5YdSyfgSVG/One-Workflow?node-id=4394-14&p=f&t=vntyuRff66iLrlPQ-0) - Reach out to @r4zr32d3k1l for any questions --------- Co-authored-by: kibanamachine <[email protected]> * [ESQL] Subquery Autocomplete Support With Context Awareness And Nesting Restrictions (#241912) ## Summary There are many ways to implement autocomplete, but I’ve prioritized clean structure, clear separation of responsibilities, and reuse (even if limited in our case) over combining everything into few large, logic-heavy blocks. It is a personal choice. On the other hand, the logic is more spread out but it is still easy to remove for temporary cases (for example hiding forks and inlinestats or removing the block on the subquery limit) #### Parser (`cst_to_ast_converter.ts`) - Modified `fromSubquery()` to create FROM commands even with incomplete METADATA, marking them as `incomplete: true` - This ensures consistent AST structure between top-level and subquery contexts #### Autocomplete (`from/autocomplete.ts`) - Added check for incomplete sources to prevent nested subquery suggestions, after the comma - Added subquery complete item suggestion #### Context Detection (`context.ts`) - Enhanced `getAstContext()` to detect innermost subquery containing cursor - Added `isCursorInSubquery` flag to command context - Improved cursor position detection at subquery boundaries #### Command Registry (`registry.ts`) - Added subquery restrictions support (`allowedInside`/`allowedOutside`) - FORK: disallowed inside subqueries - INLINESTATS: only allowed inside subqueries <img width="501" height="172" alt="p0" src="https://github.com/user-attachments/assets/b958f90d-7bb8-41b7-82ff-4ff2a2058cef" /> <img width="743" height="173" alt="p1" src="https://github.com/user-attachments/assets/e0ee73e0-37a3-4bcf-8ec3-8201ca6747f8" /> No nested subqueries <img width="879" height="192" alt="p2" src="https://github.com/user-attachments/assets/3f6dee70-c8ed-4325-9e05-2f360b34796b" /> **Notes:** The only case I don’t handle is skipping the suggestion of FROM inside a nested subquery when I manually open a parenthesis. If we think it is useful we can also add this additional check. eg `FROM a, (FROM b, (` --------- Co-authored-by: Stratou <[email protected]> * [ResponseOps][Reporting] Fix reports page title and links inconsistency (#242132) Closes https://github.com/elastic/kibana/issues/241247 ## Summary - changed the page header from `Reports` to `Reporting` * Package generator update and fixes (#241841) ## Summary Suggestions: - Replace --web with --type="common|server|browser", use it in kibana.jsonc - Remove "types" override from the tsconfig. the base is better! - Add "sideEffects:false" by default to reduce bundles for shared packages from the get go **(WDYT? I think this makes sense to start every package with false)** * 🌊 [Streams] Adding/Hiding icon in suggestion values (#241958) Related to https://github.com/elastic/kibana/pull/241119 --------- Co-authored-by: kibanamachine <[email protected]> * [Lens as Code] Fix legacy metric color schema (#241773) ## Summary Fixes the legacy metric color schema in order to use the absolute color by value schema. ### Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios * [ES|QL] Add support for subqueries in FROM clauses across tools (#242166) ## Summary Subqueries support: - Mutation apis: find, remove * [ML] Fixing public update space APIs (#242136) Follow up for https://github.com/elastic/kibana/pull/241109 The previous PR had a problem where the APIs were not callable from external REST clients. To test with an external REST, ensure you do not have the header `x-elastic-internal-origin: kibana` set, as it will think the call is internal to kibana. * [One Workflow] refactor: align `createWorkflow` and `updateWorkflow` behavior (#242153) ## Before https://github.com/user-attachments/assets/1874d482-a85f-400b-88cb-16480d7b542e ## After https://github.com/user-attachments/assets/cb3effc9-72d3-46f8-b446-811f07ab3541 * 🌊 Streams: Detect namespaced ECS (#241790) Closes https://github.com/elastic/kibana/issues/238403 Showing description in discover for prefixed ECS field: <img width="512" height="247" alt="Screenshot 2025-11-04 at 12 17 11" src="https://github.com/user-attachments/assets/f3194f74-2144-4114-b750-5b7dee994a36" /> Auto-mapping prefixed ECS field in Streams: <img width="848" height="377" alt="Screenshot 2025-11-04 at 12 17 38" src="https://github.com/user-attachments/assets/64508cf6-22fa-4140-84b7-9dc8c53d8513" /> An important callout is that this will also "detect" the namespaced ECS for non-wired streams - our field lookup is just looking at field names. However, I don't think this is a problem, since the field lookup for otel and ECS also might be "wrong" given the index context. So we aren't making anything worse here, simply show metadata for namespaced ECS fields, which is something that is explicitly supported in some places (wired streams). * [Discover][Log] Improve log overview for errors/exceptions (#241342) closes: https://github.com/elastic/kibana/issues/236003 ### Summary We could have the following errors as logs 1. APM error log 2. Otel exception as APM error log (trace processor) 3. Otel native exception/error (without any processing) 4. Log error Enhance the flyout to display the appropriate log level, using the event type as a fallback for APM and Otel errors and exceptions. Additionally, extend the message component to include exception messages from both APM and Otel logs ``` NOTE: In this PR I'm not updating the summary fields. There is a separate discussion about this ``` For APM, show the culprit | | After | Before | |----------|----------|----------| | Unprocessed otel | <img width="2768" height="1373" alt="Screenshot 2025-10-31 at 2 07 50 PM" src="https://github.com/user-attachments/assets/4407ed55-7ab9-4764-90df-2d8e3ff5d5b6" /> | <img width="1725" height="960" alt="Screenshot 2025-10-31 at 2 48 56 PM" src="https://github.com/user-attachments/assets/a9424511-e360-4de3-8c17-fb926b6cb724" /> | | Otel exception with traceprocessor | <img width="2768" height="1373" alt="Screenshot 2025-10-31 at 2 08 55 PM" src="https://github.com/user-attachments/assets/668a138f-9ff5-4bcf-b133-d1f1989b61c8" /> |<img width="1725" height="960" alt="Screenshot 2025-10-31 at 2 49 35 PM" src="https://github.com/user-attachments/assets/6a587678-6698-4b1f-9562-6c16aec67f47" /> | | APM error | <img width="2768" height="1373" alt="Screenshot 2025-10-31 at 2 09 22 PM" src="https://github.com/user-attachments/assets/04cb4c69-17cd-4929-8ce1-b6118b953f8a" /> | <img width="1725" height="960" alt="Screenshot 2025-10-31 at 2 50 11 PM" src="https://github.com/user-attachments/assets/c899db44-3e20-4fa8-b21e-927aa75890a6" /> | | APM error with culprit | <img width="2768" height="1373" alt="Screenshot 2025-10-31 at 2 09 56 PM" src="https://github.com/user-attachments/assets/43f1b37f-457e-472b-88b5-be90e6b761b7" /> | <img width="1725" height="960" alt="Screenshot 2025-10-31 at 2 50 11 PM" src="https://github.com/user-attachments/assets/1c013d47-da15-44c0-85bf-7ea944a66c3c" /> | ### How to test - Run `yarn storybook unified_doc_viewer` and check the Log overview for the errors - any data --------- Co-authored-by: Achyut Jhunjhunwala <[email protected]> * [Streams] Hide document match filter controls for users without manage privileges (#242119) Closes #238047 ## Summary This PR adds permission-based visibility control for the `DocumentMatchFilterControls `component in the stream routing preview panel. The filter controls are now only visible to users who have manage privileges for the stream. ### Changes - Added permission check using `definition.privileges.manage` in `SamplePreviewPanel` component - Conditionally render `DocumentMatchFilterControls` based on user's manage privileges - Added empty `EuiFlexItem` to maintain consistent layout spacing when controls are hidden ### Steps to Reproduce 1. Prepare Stream logs with partitioning capabilities, you can run this script locally: `node scripts/synthtrace.js sample_logs --live --kibana=http://elastic:changeme@localhost:5601 --target=http://elastic:changeme@localhost:9200` 2. With a secondary user, go to Streams 3. Choose the _logs_ parent stream 4. Click the Partitioning tab 5. Under the "Data Preview" panel you should see (or not) the filter. Try playing with the secondary user's permissions to see the filter appear/disappear ### Expected Results **User with permissions** <img width="1549" height="469" alt="Screenshot 2025-11-06 114846" src="https://github.com/user-attachments/assets/adca3eec-3c36-41cd-863c-7dae77fc1046" /> **User without permissions** <img width="1660" height="456" alt="Screenshot 2025-11-06 114929" src="https://github.com/user-attachments/assets/c6712437-4d0a-4719-897a-270cee879a76" /> * [SecuritySolution] Fix Entity Highlight undefined Identifier bug (#242237) ## Summary When clicking on "Generate Entity Highlight" for an entity that only has risk score data, we submitted the "Entity Identifier" as undefined. This could result in lower accuracy, and some models may even refuse to generate the summary. <img width="500" height="588" alt="Image" src="https://github.com/user-attachments/assets/a93b7699-071d-44c2-bd42-d729f285c431" /> To fix it, I forced the "replacements" to always have the entity identifier. ## How to reproduce it? * Enable 'entityDetailsHighlightsEnabled' experimental flag * Add user events * Create Alerts * Enable risk engine * Open the flyout for a user and generate the highlight * Check the network tab of your browser for the AI prompt ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [x] Any text added follows [EUI's writing guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses sentence case text and includes [i18n support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md) - [ ] [Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html) was added for features that require explanation or tutorials - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [ ] If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the [docker list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker) - [ ] This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The `release_note:breaking` label should be applied in these situations. - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [ ] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [ ] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. ### Identify risks Does this PR introduce any risks? For example, consider risks like hard to test bugs, performance regression, potential of data loss. Describe the risk, its severity, and mitigation for each identified risk. Invite stakeholders and evaluate how to proceed before merging. - [ ] [See some risk examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) - [ ] ... * [Automated Rollback Tests] Enforce users to provide fixtures for updated SO types (#242006) ## Summary Closes https://github.com/elastic/kibana-team/issues/1872 This PR leverages the newly introduced _Saved Objects_ check, adding an extra step to make sure users provide sample SO fixtures when defining new model versions. --------- Co-authored-by: kibanamachine <[email protected]> * Rename obs-ux-logs-team to obs-onboarding-team (#242236) Rename obs-ux-logs-team to obs-onboarding-team * Improve rolling appender test logic (#242095) ## Summary Closes https://github.com/elastic/kibana/issues/232893 The previous improvements were not enough, [latest failure](https://buildkite.com/elastic/kibana-on-merge/builds/81112/steps/canvas?jid=019a4a9c-77de-450f-a4e8-70d4efc34012) shows that we can't guarantee how many times the rolling logic has run: <img width="846" height="272" alt="image" src="https://github.com/user-attachments/assets/9ccaac11-92bb-42cf-8b5a-60fd258c23d9" /> The PR makes the test even more resilient by not assuming that the rolling logid has run exactly twice, and instead it just makes assertions that are valid for the 2 scenarios: * Assert there are multiple log files (rollover has happened). * Assert that the rolled files are not empty * Assert that when concatenating all log files in an ordered fashion, no log entries are lost. * [ML] [Inference UI] Improve layout for custom inference endpoint (#241779) ## Summary Implements #240797 This PR improves the layout for custom inference endpoints, making them more consistent with the rest of the recognized services. The custom endpoint has an 'empty' icon to ensure future-proofing and maintain consistency, even if the icon sizes change in the future. Before <img width="2508" height="1342" alt="image" src="https://github.com/user-attachments/assets/c7ad8ea3-2e2b-48bd-9168-47ad685df267" /> After <img width="1500" height="961" alt="Screenshot 2025-11-05 at 11 27 06" src="https://github.com/user-attachments/assets/7cf48267-ea8d-48b0-b7de-c8c157195ca4" /> ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. * [ResponseOps][Connectors] Unable to change header type when editing webhook connector (#241141) Closes https://github.com/elastic/kibana/issues/239505 ## Summary - this pr fixes a bug where changing an existing header from `config` to `secret` would reset its key and value and revert the type back to `config` **Issue**: - when a user edits an existing header and changes its type from `config` -> `secret`: - `currentHeaders` in the form state correctly updates the type to secret, however, `useSecretHeaders` fetches only **persisted secret headers** from the backend. The `useEffect` that merges the headers overwrites the temporary secret headers with the fetched list, which did not include the newly converted header -> the header disappears or resets to default **Fix**: preserve any secret headers in the form that aren't yet saved when merging with secret headers from the backend * [Chrome Grid] Fix Dashboard unable to scroll to newly added section (#241980) ## Summary fix https://github.com/elastic/kibana/issues/241710 https://github.com/user-attachments/assets/1ff93c7a-8206-4c83-9f2e-2f1c9f6c7186 --------- Co-authored-by: kibanamachine <[email protected]> * [Security Solution][Bug] Timeline: ESQL query editor showing on fullScreen mode (#242027) ## Summary Fixes UI breaking when displaying **ESQL queries** in **Timeline full screen mode**. Closes https://github.com/elastic/kibana/issues/225998 ## 🛑 Problem When opening **Timeline** in full screen mode with an **ESQL query** (for example, one added from the **AI Assistant**), the UI layout breaks — some embedded **Discover** components (like `dscPageBody` or the **ESQL editor**) interfere visually with Timeline elements. ## 💡 Solution Added styling to correctly handle Discover’s full screen mode class (`UNIFIED_DATA_TABLE_FULL_SCREEN_CLASS`). Updated the TimelineESQLGlobalStyles to: Hide the `.ESQLEditor` when the unified data table is full screen This prevents layout conflicts between the embedded Discover components and Timeline’s own full screen mode. <details> <summary>Code change summary 🧩</summary> - Imported `UNIFIED_DATA_TABLE_FULL_SCREEN_CLASS` from `@kbn/unified-data-table/src/hooks/use_full_screen_watcher` - Replaced hard-coded class selector `.unifiedDataTable__fullScreen` with the imported constant - Added visibility rules for `.ESQLEditor` </details> <details> <summary>Screen recording / screenshot of fix ✅</summary> [Paste your video or screenshot here](https://github.com/user-attachments/assets/35fd54c8-3743-4a5d-9491-71b55e173c1a) </details> * [agent builder] [API docs] Add event types to streaming chat description (#242112) closes https://github.com/elastic/search-team/issues/11608 * [Response Ops][Connectors] Moving connector schemas to package - part 3 (#240186) Towards https://github.com/elastic/kibana-team/issues/2148 ## Summary Part 3 of 4 PRs to move the connector schemas to a more common package location so they can be reused more easily. This PR moves the schemas for the following connector types to the `@kbn/connector-schemas` package: - `resilient` - `swimlane` - `tines` - `torq` - `xmatters` - `xsoar` There will be followup PRs for the final set of connector types. * [Profiling] Migrate profiling differential functions tests (#242030) Closes #225942 Closes #225943 Closes #225944 ## Summary This PR migrates the differential functions tests and splits them between the e2e tests (differential_functions.spec.ts) and the component/unit tests (frames_summary.test.tsx), covering some more checks ## Testing - frames_summary.test.tsx: - `node scripts/jest x-pack/solutions/observability/plugins/profiling/public/components/frames_summary/frames_summary.test.tsx` - differential_functions.spec.ts : - First run the scout server: -`node scripts/scout.js start-server --stateful` - Make sure **all** profiling tests pass: - `npx playwright test --config x-pack/solutions/observability/plugins/profiling/test/scout/ui/parallel.playwright.config.ts --project=local --grep @ess` ### Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios - [x] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed - [x] The PR description includes the appropriate Release Notes section, and the correct `release_note:*` label is applied per the [guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process) - [x] Review the [backport guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing) and apply applicable `backport:*` labels. * [Lens as code] Gauge chart transformations (#241860) ## Summary Resolves #234609 - Dashboard with multiple gauge chart configurations used for testing: [gauge_dashboard.ndjson.txt](https://github.com/user-attachments/files/23390307/gauge_dashboard.ndjson.txt) ### Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios * [CI] Add Jest Bench step (#241543) ## Summary - Closes #239647 - Adds a step to run `@kbn/jest-benchmarks` between the PR and it's merge base - Step triggered by `doChangesMatch` or GH label - Label added to specific dep upgrade groups via Renovate (`babel`, `jest`, `@testing-library`) - Soft fail step to not block merging - Adds `activateWorktreeOrUseSourceRepo` to `@kbn/workspaces` - Allows `--right cwd` in `@kbn/bench` without creating an unnecessary worktree - Makes the profile output less confusing. Previously, to avoid extra worktree setup, `cwd` was left and `merge-base` right. When the PR (`cwd`) is faster, [the results](https://buildkite.com/elastic/kibana-pull-request/builds/358385#019a51d8-2f01-4467-b495-0f97c4a5c9ae/239-566) say +x% and are red. - Reverts https://github.com/elastic/kibana/commit/b1f44cfd0e1f1c3071d84ce2367455339163e08c ## Machine Type Testing - [Standard Build Test](https://buildkite.com/elastic/kibana-pull-request/builds/358093) - [High Mem Build Test](https://buildkite.com/elastic/kibana-pull-request/builds/358369) - Pricing is for spot instance hour in `us-east1` and doesn't reflect discounts. - `n2-highmem-16` offers the best balance of time reduction and cost. It also gives a bit of breathing room for a 60m CI target time so the step doesn't block completion. | Machine | Time | ∆ | $ | $∆/∆…
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
backport:all-open
Backport to all branches that could still receive a release
release_note:skip
Skip the PR/issue when compiling release notes
Team:Core
Platform Core services: plugins, logging, config, saved objects, http, ES client, i18n, etc t//
test-failure-flaky
v8.19.8
v9.1.8
v9.2.2
v9.3.0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Closes #232893
The previous improvements were not enough, latest failure shows that we can't guarantee how many times the rolling logic has run:
The PR makes the test even more resilient by not assuming that the rolling logid has run exactly twice, and instead it just makes assertions that are valid for the 2 scenarios: