Skip to content

Conversation

@gsoldevila
Copy link
Contributor

@gsoldevila gsoldevila commented Nov 6, 2025

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:

image

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.

@gsoldevila gsoldevila self-assigned this Nov 6, 2025
@gsoldevila gsoldevila requested a review from a team as a code owner November 6, 2025 10:30
@gsoldevila gsoldevila added Team:Core Platform Core services: plugins, logging, config, saved objects, http, ES client, i18n, etc t// release_note:skip Skip the PR/issue when compiling release notes test-failure-flaky backport:all-open Backport to all branches that could still receive a release labels Nov 6, 2025
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-core (Team:Core)

@elasticmachine
Copy link
Contributor

💚 Build Succeeded

Metrics [docs]

✅ unchanged

cc @gsoldevila

@gsoldevila gsoldevila enabled auto-merge (squash) November 7, 2025 11:45
@gsoldevila gsoldevila merged commit 11a9589 into elastic:main Nov 7, 2025
12 checks passed
@kibanamachine
Copy link
Contributor

Starting backport for target branches: 8.19, 9.1, 9.2

https://github.com/elastic/kibana/actions/runs/19169837305

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)
@kibanamachine
Copy link
Contributor

💚 All backports created successfully

Status Branch Result
8.19
9.1
9.2

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.



![loading_indicator](https://github.com/user-attachments/assets/c56f91c1-e886-4270-8efe-bdfe140e17ed)

>[!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 | ∆ | $ | $∆/∆…
@mistic mistic removed the v8.19.7 label Nov 12, 2025
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

Projects

None yet

5 participants