Skip to content

[Temp] Save and load Discover session tabs#22

Closed
davismcphee wants to merge 1739 commits intolukasolson:discover_tabs_schemafrom
davismcphee:discover-tabs-saving-poc
Closed

[Temp] Save and load Discover session tabs#22
davismcphee wants to merge 1739 commits intolukasolson:discover_tabs_schemafrom
davismcphee:discover-tabs-saving-poc

Conversation

@davismcphee
Copy link

Summary

WIP.

logeekal and others added 26 commits August 29, 2025 18:54
…astic#232526)

## Summary

This PR refactors complete Automatic Migrations current data clients and
services for Dashboards and Rules Migrations.

Only objective of this PR is share logic between rules and dashboards
migrations.

### Impact 

This PR is intended to keep the functionality exactly the same. 

### Code Owners Summary

#### elastic/kibana-core

* src/platform/packages/shared/kbn-utility-types/index.ts


#### elastic/security-threat-hunting-investigations

*
x-pack/solutions/security/plugins/security_solution/public/onboarding/components/onboarding_body/cards/siem_migrations/start_migration/start_migration_card.test.tsx


</details>

---------

Co-authored-by: Sergi Massaneda <sergi.massaneda@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary

Skipping flakey test while I diagnose root cause
## Summary

closes -
elastic/kibana-team#1960 (comment)

This PR resolves two critical issues -:

1. Security: [Fixed CodeQL security alerts for incomplete string
sanitisation](elastic/kibana-team#1960 (comment))
2. [CI/CD: Fixed Docker permission denied errors in Buildkite
pipeline](https://buildkite.com/elastic/kibana-opentelemetry-semantic-conventions-sync/builds/3/steps/table?jid=0198f539-82a8-4fb2-9be9-f6704960a5a8)

  Changes Made

  🔒 Security Fix - String Escaping

- File:
src/platform/packages/shared/kbn-otel-semantic-conventions/src/generate.ts
- Issue: CodeQL flagged incomplete sanitization on lines 31, 32, 33, and
38
- Fix: Updated string escaping to properly handle both backslashes and
single quotes

  🐳 Docker Permission Fix

  - File: .buildkite/scripts/steps/otel_semconv_sync.sh
- Issue: Docker weaver command failing with "Permission denied" when
writing output files
- Root Cause: User ID mapping conflict between host and container
environment
- Solution: Pre-create output directory with proper permissions before
Docker execution

The CI fix is still trial and error. I am discussing with Kibana Ops to
see how to better check for such errors
…ns (elastic#233503)

## Summary

Moves the docs section above the alternate solution section on the
search homepage

### Screenshot
<img width="1704" height="1192" alt="image"
src="https://github.com/user-attachments/assets/42a74cde-cec6-4dcf-be2c-837164686fc8"
/>

### 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
- [ ] 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
- [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.
elastic#233428)

## Summary

Epic: elastic/security-team#12768
Meta: elastic/security-team#13657
RFC: [internal
link](https://docs.google.com/document/d/13jAJ5Q3_At_zAuwKjvpYehnM5uzKJSwZIZ1aJJNAf5k)

This PR reverts conversation mappings changes introduced in
elastic#232288. Since we decided to put
on hold the Using Past Conversation as Context feature, we decided to
remove added summary field backed by the `semantic_text` field to avoid
potential issues that users mights have when updating a conversation
while the inference endpoint is not available.

**Changes**:
* Removed mapping fields: `semantic_content` and
`summarized_message_ids`
* As part of these changes, the `summary` field was hidden on the API
level and conversations response object won't have it anymore

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
…low external (elastic#233522)

## Summary

Adds an example of a baseline screenshotting network policy to
disallowing all requests to external paths.
## Summary
downgrade moon to 1.38.6 - after 1.39+ there's an implicit dependency on
xz (liblzma) on ARM Mac OSX, that is silently failing the build process
- the fix is simple, `brew install xz` but since `moon` is failing with
an exit code 0, we can't see the problem in our bootstrap.

We're safer in 1.38 while we get a fix.
## Summary

This PR bumps the memory setting for elasticsearch-serverless docker
image index node from 1g to 1.5g.

This addresses test failures (see elastic#232808 and elastic#232806) that we saw after
elastic/elasticsearch-serverless#4362. The tests
were running with high ES heap usage already (~99%) and this is now
surfaced because new shards are no longer allocated in that scenario.
This memory bump is a quick measure to unblock pipelines and we should
investigate whether we could change the test to run with less resources
in the future.
## Summary

From the
[spec](https://swagger.io/docs/specification/v3_0/data-models/data-types/#arrays)
the `items` field should be a single schema defining the types within an
array. If the array may contain multiple types then the schema should
combine those types via `oneOf`.

Related to elastic#228077


### 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 <42973632+kibanamachine@users.noreply.github.com>
## Summary

Resolves: elastic#209911

Fixes a flaky test where the `execute-action` events were not appearing.
This PR changes the test procedure to manually trigger the rule runs
instead of letting it run by itself with a low interval.

### 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
…ng non-customizable fields from updating for Prebuilt rule types (elastic#232956)

**Resolves: elastic#195921**

## Summary

I am modifying the skipped tests and unskipping them in MKI.

The first attempt of only relying on removing the call to
`refreshSavedObjectIndices` improved the situation for
`installPrebuiltRules` but another problem was that similar error with
privileges occurred for preparing the assets (reason under the hood
being the same).
The failing periodic pipeline build:
https://buildkite.com/elastic/kibana-serverless-security-solution-quality-gate-rule-management/builds/3265/steps/canvas

That is why I am replacing the logic of installing the rule for test.
Instead of creating assets I am building a zip with our fake rules and
calling the `installFleetPackageByUpload` function, as we already do in
other tests. This allows our test security_detection_engine package to
be installed the `official` way.
**The successful periodic pipeline build**:
https://buildkite.com/elastic/kibana-serverless-security-solution-quality-gate-rule-management/builds/3270/steps/canvas

### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [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)
…33497)

## Summary

Closes elastic#227824

Fixes margin for EUI Horizontal rule component when Login Assistance
Message is present


### Test
Run kibana with the following setting in kibana.(dev.)yaml
```
xpack.security.loginAssistanceMessage: Test Login assistance message
```
On main vs this PR branch, you should see the difference as shown below.


| Main | After fix |
|--------|--------|
| <img width="500" alt="image"
src="https://github.com/user-attachments/assets/ab00606f-aaf2-446f-9118-4f8ce30bf6bb"
/> | <img width="500" alt="Screenshot 2025-08-29 at 15 39 42"
src="https://github.com/user-attachments/assets/0bdc8948-00a5-4b5f-b4fb-52f0ae04709c"
/> |
…t the workflow to a rule via the `Run Workflow` action (elastic#233316)

### Add alert trigger notification dots to YAML editor

Adds visual indicators for alert triggers in the workflow YAML editor:
- 🟠 Orange dots appear in the glyph margin next to `type: alert` lines
- Hover tooltips explain alert trigger behavior



https://github.com/user-attachments/assets/d11247de-5b63-40fa-9e47-b0b728809e35
Implemented empty state for workflows list page according to Figma
design using EUI EmptyPrompt component.


<img width="3024" height="1570" alt="CleanShot 2025-08-31 at 13 32
25@2x"
src="https://github.com/user-attachments/assets/882e8e0b-08ed-4b19-b9b9-2b3289fb9cae"
/>
## Summary

From the
[spec](https://swagger.io/docs/specification/v3_0/data-models/data-types/#numbers)
`type:number` defines floating point numbers optionally with `type:
float32|float64`. Integer fields should be `type:integer` where `format`
can be one of `int32` or `int64` if required.

Related to elastic#228077

### 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 <42973632+kibanamachine@users.noreply.github.com>
## Summary

Fixed a misconfiguration that did not hide the Rerank command
…0026)

## Summary

Closes elastic#225696
Closes elastic#229745

Makes it possible to store ES|QL discover sessions and dashboards as
search sessions.

### 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.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Matthias Wilhelm <matthias.wilhelm@elastic.co>
This pull request introduces a new shared package,
`@kbn/dashboards-selector`, to enable reuse of the combobox component.
This component is currently used to link dashboards to rules, and it
will now also be used to link dashboards to SLOs.

The component I want to reuse in SLO:
<img width="1166" height="283" alt="Screenshot 2025-08-29 at 12 07 18"
src="https://github.com/user-attachments/assets/c6aff5cc-1a7a-4371-9b13-46025dd38904"
/>


This update is necessary for the implementation of
elastic#233265.

---------

Co-authored-by: Nick Peihl <nickpeihl@gmail.com>
## Summary

Closes elastic#225702

Adds a split button that can be later used in the new background search
implementation.

| Example | Screenshot |
|--|--|
| Both icons | <img width="169" height="47" alt="image"
src="https://github.com/user-attachments/assets/71c9af0d-f6e6-4030-9525-0ec49e4fb98d"
/> |
| Default | <img width="167" height="54" alt="image"
src="https://github.com/user-attachments/assets/fdb31a84-c521-445f-ad20-f23fee6c3976"
/> |
| Danger | <img width="165" height="50" alt="image"
src="https://github.com/user-attachments/assets/7370076f-b7b7-4a96-b915-d6122cecc02d"
/> |
| Success | <img width="161" height="48" alt="image"
src="https://github.com/user-attachments/assets/0348edb4-f02f-4286-8319-b326ede24572"
/> |
| Warning | <img width="161" height="51" alt="image"
src="https://github.com/user-attachments/assets/611a2ef3-5a62-46c4-b12d-050f3000a01a"
/> |
| Disabled | <img width="165" height="53" alt="image"
src="https://github.com/user-attachments/assets/5412881a-7cd5-49c0-bab1-9533ec50049c"
/> |

There are more examples in the storybook.

#### How to test?
To test it you can go to the component storybook by running `yarn
storybook unified_search` and going to
http://localhost:9001/?path=/story/split-button--default

### 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.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary

Remove sync integrations APIs from serverless, now it's showing up in
API docs:
https://www.elastic.co/docs/api/doc/serverless/group/endpoint-ccr-remote-synced-integrations

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Visha Angelova <91186315+vishaangelova@users.noreply.github.com>
Co-authored-by: Lisa Cawley <lcawley@elastic.co>
Bluefinger and others added 29 commits September 5, 2025 11:11
…tic#233716)

## Summary

This PR is for cleaning up technical debt regarding the split of
Span/Transaction concepts for the Overview tab, and unifying them into a
single Overview that can handle the particularities of each while
deduplicating code for everything else that overlaps.

Closes elastic#232603

<img width="486" height="1097" alt="image"
src="https://github.com/user-attachments/assets/c2ba3eeb-eddb-47ae-8326-1ea23a19703b"
/>


## TODO

- [x] Initial merge and resolving conflicts from main
- [x] Migrate remaining/missing test cases to Overview
- [x] Further testing to ensure no regressions

## How to Test

- Ensure the space is set to Observability mode, and then go to
Discover. Ensure a traces index is being used in either Classic mode or
ES|QL mode.
- In Classic mode, selecting a trace document should show the same
visual behaviour for both transactions and spans as before. Same with
ES|QL mode.
- In ES|QL mode, modify the query to have at least `trace.id` and a few
other fields. The overview should show widgets for fields it can
resolve.
- in ES|QL mode, modify the query to remove `trace.id` from the kept
fields. The overview tab should no longer show (as the minimum we expect
for a trace document is to have the `trace.id` present).
## Summary

Fix elastic/search-team#10841

- Add a new `tool_progression` type of event

```ts
export interface ToolProgressEventData {
  tool_call_id: string;
  message: string;
}
```

- Change the structure of persisted tool calls to include a list of
progression events
- Expose a dedicated event emitter to tool handlers for them to send
progression events
- Add example of such events for the `.search` tool

<img width="944" height="303" alt="Screenshot 2025-09-02 at 20 09 15"
src="https://github.com/user-attachments/assets/776a7b13-9d68-4255-9a5c-d27189db208e"
/>

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary

Partially addresses elastic#233705

ES|QL language has introduced grammar for nested maps. This PR adds
support for nested map expressions, like:

```
{
  "foo": {
    "bar": 123
  }
}
```

in Kibana `@kbn/esql-ast` package.


### 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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
…233924)

Closes elastic#231292

## Summary

The AI Assistant page was not taking the full height of the viewport as
only the max block size was set.
This PR fixes it by defining the height of the page (with respect to the
headers in each solution view and classic view).

## Before

<img width="1542" height="1161" alt="image"
src="https://github.com/user-attachments/assets/0bde604d-0877-41ec-964c-7e9005f1a46d"
/>

## After

### Current layout - Classic space

<img width="1203" height="1276" alt="image"
src="https://github.com/user-attachments/assets/771ddb30-a52b-4b64-80c3-6a4156448632"
/>

### Current layout - Obs space

<img width="1203" height="1276" alt="image"
src="https://github.com/user-attachments/assets/366efff8-2dcc-44ce-a79a-1b7145abebed"
/>

### Current layout - Search space

<img width="1203" height="1275" alt="image"
src="https://github.com/user-attachments/assets/3fc3cc9d-d5d1-4a2e-8bf0-4e7d76f2675d"
/>

### New layout - Classic space

<img width="1206" height="1274" alt="image"
src="https://github.com/user-attachments/assets/b7f25bba-08d4-46a8-b2f9-582555e4220f"
/>

### New layout - Obs space

<img width="1204" height="1274" alt="image"
src="https://github.com/user-attachments/assets/c0efb081-a68e-4982-b14c-f8746239cedd"
/>

### New layout - Search space

<img width="1201" height="1274" alt="image"
src="https://github.com/user-attachments/assets/4e33aa5b-d1a0-4a6d-84c6-93b601101632"
/>

## Testing instructions

1. Current layout - Verify that the AI Assistant page takes full height
in a classic space, observability space and search space.
2. Add the following to `kibana.dev.yml` to enable the new grid layout
```
feature_flags.overrides:
  core.chrome.layoutType: 'grid'
```
3. Refresh Kibana
4. Verify that the AI Assistant page takes full height in a classic
space, observability space and search space in the new grid layout as
well.

### 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.

### Release notes

Fixes the page height of the Observability AI Assistant page
## Summary

Closes: elastic/security-team#13883

### 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)
- [ ] ...
…eduled report list API (elastic#233912)

Resolves elastic#228059

## Summary

Currently, the `list` API for scheduled reports dynamically calculates
the next run time using the current time and the task rrule schedule.
Sometimes that can lead to discrepancies in the next run that's shown vs
the actual next run date. This PR updates the API to perform a `bulkGet`
on the task instance and use the actual `runAt` time as the next run
time. This should fallback to using the dynamic calculation if there are
any errors getting the task instance.

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
…owns (elastic#233776)

Closes elastic#233653

## Summary

This PR adds an option to clear the selection in the dimension and value
selectors. When all dimensions are cleared, it will clear all values as
well as those related to the corresponding dimensions. The PR also
extracts the toolbar_selector to a shared place and uses it in the
metrics grid and the histogram without adding the dependency issue.

<img width="1276" height="669" alt="image"
src="https://github.com/user-attachments/assets/e83d3338-fbe2-4f87-b2b0-d66ec50b79c9"
/>
<img width="2328" height="687" alt="image"
src="https://github.com/user-attachments/assets/6c13b429-8566-4f8f-aa88-35207f524abf"
/>


## How to test
- Set the following config to `kibana.dev.yml`
```yml
discover.experimental.enabledProfiles:
  - observability-metrics-data-source-profile
metricsExperience.enabled: true
 ```
- Navigate to Discover and Switch to ESQL mode
- Set the space to Observability
- Run `FROM metrics-*` search
- Clone https://github.com/simianhacker/simian-forge/tree/main
- Run ` ./forge --dataset hosts --count 25 --interval 30s`
- Check the drop-downs in the metrics grid:


https://github.com/user-attachments/assets/77313c81-59fa-41ee-b3f9-60384212cfab


- In case of `logs-*` search, for example, the breakdown selector should work as before: 

<img width="3544" height="1332" alt="image" src="https://github.com/user-attachments/assets/ce33654f-9835-456a-b47f-6a60ed58edd8" />

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary

This PR implements the following:
- UI redesign for the Create and Edit tool pages
- View page for system tools
- Integration with tools testing flyout

### Screenshots

__Create__
<img width="2561" height="1294" alt="Screenshot 2025-09-05 at 9 42
21 AM"
src="https://github.com/user-attachments/assets/e57cd8b0-feea-4207-9660-70c4dd42b081"
/>


__Edit__

<img width="2560" height="1296" alt="Screenshot 2025-09-05 at 9 42
04 AM"
src="https://github.com/user-attachments/assets/c26fbba1-8400-4be4-b644-7d6bdee414c3"
/>


__View__
<img width="2560" height="1296" alt="Screenshot 2025-09-05 at 10 16
56 AM"
src="https://github.com/user-attachments/assets/aa6a97a4-0d11-4b87-80fa-839bd307ee35"
/>



### 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: Zachary Parikh <zachary.parikh@elastic.co>
…ndows (elastic#233487)

Updated trusted devices form to only allow the username field when
Windows OS is selected exclusively. The field is now hidden for Mac only
or Windows+Mac combinations, with automatic field reset when OS changes.

Changes

- Frontend: Dynamic field filtering in trusted devices form with
automatic reset logic
- Backend: Server-side validation to enforce username + Windows-only
restriction
- Shared utilities: Added isTrustedDeviceFieldAvailableForOs() function
and OS field availability constants
- Tests: Updated form unit tests and added comprehensive API integration
tests
- Test data: Fixed generators to avoid invalid username + non-Windows
combinations



https://github.com/user-attachments/assets/fcec7391-dd02-4b35-bef9-758815164901

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
…c#234137)

## Summary

This PR adds closing on `Escape` key press functionality to inspect
overlay.

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Partially resolves: elastic/ingest-dev#5901

This PR defines the `alerting_rule_template` saved object. Some initial
specification of this SO was discussed here:
elastic#229687 (comment)

This is part of an effort to enable kibana packages to provide templates
for alerting rules that can be installed in kibana. Once installed,
users can then create and configure rules derived from the templates.
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[geckodriver](https://github.com/webdriverio-community/node-geckodriver)
| devDependencies | patch | [`^6.0.0` ->
`^6.0.1`](https://renovatebot.com/diffs/npm/geckodriver/6.0.1/6.0.1) |

---

### 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://github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJUZWFtOk9wZXJhdGlvbnMiLCJiYWNrcG9ydDpza2lwIiwicmVsZWFzZV9ub3RlOnNraXAiXX0=-->

---------

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Brad White <brad.white@elastic.co>
closes elastic#232455

## Summary
This PR removes the below `enable streams UI` advanced setting option. 
The setting is enabled by default for observability serverless
deployment as well as for stateful.


![enable_streams_ui](https://github.com/user-attachments/assets/5e533ab5-ca73-40e4-bbe7-89e9e1c6659c)
Closes elastic#231848

## Summary
With elastic#231846 we introduced the
possibility for the users to enabling failure store from the data
quality plugin, but they couldn't edit or disable it from there. With
this PR, we introduce the option of editing failure store from data set
quality.

### How to test
* Go to data quality plugin
* Select a data set
* Enable the failure store if disabled
* Click the failure store card
* Click the new pen icon
* Verify the failure store modal opens
* Verify that you can edit data and disable the failure store

Note: Despite that in the mocks the icon is on the left, I add it to the
right so the discover button is consisten with the one that the other
card enables.

### Mocks
<img width="1846" height="690" alt="image"
src="https://github.com/user-attachments/assets/3069ae8c-b276-487a-9104-106f4adfa948"
/>

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
…est to e5602c7 (main) (elastic#233267)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| docker.elastic.co/wolfi/chainguard-base-fips | digest | `9ae6bd3` ->
`e5602c7` |

---

### 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://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 <Ikuni17@users.noreply.github.com>
Co-authored-by: Brad White <brad.white@elastic.co>
## Summary

Adding an explicit boolean `in_trial` config value for serverless
projects to set. This will be used for the context of the feature flag
service in lieu of the `trial_end_date` used for cloud hosted.

### 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
- [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
- [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: Elastic Machine <elasticmachine@users.noreply.github.com>
## Summary

**Lens transforms Phase 1** - Foundation for Lens by-ref transforms.

Major Changes:
- Overhauls the Lens Content Management to use schema-driven types
  - Defines rigid schema and types to be used inside CM.
  - Implement a working item transform based on the lens item version.
- Applied runtime migrations (`v0` to `v1`) on all necessary CRUD
operations.
  - Attempts to isolate lens SO types to CM.
- All Lens /public CRUD operations pass through API, no more CM public
client. One exception is the `mSearch` used from visualizations plugin.
- Refactors Lens API
- Allow new API structure (i.e. `data` & `meta`) as to align with the
dashboard API (see elastic#196609).
- Stub out usage of different formats between API request/response types
and the Lens CM Item.
- Stubs out the Config Builder flow to convert the new API format to
Lens item, and vise versa.
  - Use CM schemas to build out Lens route request and response schema
- Refactor lens /public client to use new CRUD API
- Need to patch a basic lens client for visualizations plugin to use for
updating basic attributes.
- Refactor lens client to new client consuming the Lens API instead of
CM client.
- Patch Lens item to conform to the `LensDocument`, the new client still
expect the old `LensDocument` but converts the API format to pass
to/from the server. The client does all the conversions.
  - Updates all usages of lens client to new client.
- Rely on shared/common schema definitions whenever possible.
- Change the visualize library client to use a basic client with only
`get` and `update` methods.

Closes elastic#225367

### 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] 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.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Marco Vettorello <vettorello.marco@gmail.com>
…stic#233754)

## Summary

This PR introduces sanity UI tests, adapted to run on the serverless
project, which is created on demand.


<img width="835" height="248" alt="Screenshot 2025-09-02 at 17 49 38"
src="https://github.com/user-attachments/assets/db3172b1-3361-4497-a43e-4a1ba27840c2"
/>


### How To Test
To test this PR, deploy a serverless project using the [Create
Environment](https://github.com/elastic/cloudbeat/actions/workflows/test-environment.yml)
workflow, define the environment variables,

``` bash
export TEST_KIBANA_URL=https://elastic:password@my-kbn-cluster.elastic-cloud.com:443
export TEST_ES_URL=https://elastic:password@my-es-cluster.elastic-cloud.com:443

export TEST_CLOUD=1
export ES_SECURITY_ENABLED=1
export TEST_BROWSER_HEADLESS=1
```
and then execute the following command:

`node scripts/functional_test_runner
--config=x-pack/solutions/security/test/serverless/functional/configs/config.cloud_security_posture.cloud.ts
`

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
…233563)

- Removes some incorrect fixes wrt strings as function arguments
- Support for correcting quotes in `STATS foo = SUM(bar) WHERE my_field
== 'value'`
- Pretty formatting for errors, using a syntax that is common for
parsers
- Added support for `TS` command
- Added some functions in ES|QL system message
…stic#233612)

## Summary

Resolves elastic/security-team#13760

- Adds `DashboardMigrationService`.
- Adds dashboard api client
- Changes `getMissingCapabilities` -> `getMissingCapabilitiesChecker`
- With this change now, `SiemDashboardMigrationsService` sub class can
pass the required capabilities to get list of missing capabilities.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary

Resolves 
- elastic/security-team#13835
- elastic/security-team#13803

Adds `GET /internal/dashboards/{migration_id}/dashboards` endpoint which
add capability to `list`, `search` and order dashboards.
@davismcphee davismcphee closed this Sep 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.