Commit graph

87697 commits

Author SHA1 Message Date
seanrathier
35b2a22f02
[Cloud Security] [Bug] Namespace filtering Findings from CSPM dashboard links (#225161) 2025-06-26 21:20:15 -07:00
Tiago Costa
8397de18ef
chore(NA): adds 9.1 into backportrc (#225526)
It adds 9.1 into the .backportrc config file
2025-06-27 03:12:41 +01:00
Tiago Costa
3640c42884
chore(NA): update pipeline resource definitions after bump 9.2.0 (#225525)
This PR updates the pipeline resource definitions to support the new 9.1
branch.
2025-06-27 03:12:29 +01:00
Tiago Costa
497a21dc0c
chore(NA): update versions after v9.2.0 bump (#225523)
This PR is a simple update of our versions file after the recent bumps.
2025-06-27 03:12:19 +01:00
Tiago Costa
b37d3bb26e
chore(NA): bump version to 9.2.0 (#225519)
Usually bump from 9.1.0 to 9.2.0
2025-06-27 03:12:11 +01:00
Steph Milovic
41ccdf0bec
[Security Assistant] Removes Default Quick Prompts (#225536) 2025-06-26 16:17:16 -06:00
Steph Milovic
4543f3e25d
[OpenAI Connector] Get http info from config url, not proxyUrl (#225541) 2025-06-26 16:16:32 -06:00
Kibana Machine
5cb7f2ddf4 skip failing test suite (#225196) 2025-06-26 16:11:07 -06:00
Catherine Liu
f7dad16597
[A11y] Add labels to control inputs (#221639)
## Summary

Closes #183202.
Closes #220687.

This adds aria-labels to the number fields on the range slider control.

<img width="704" alt="Screenshot 2025-05-27 at 8 10 38 AM"
src="https://github.com/user-attachments/assets/ffeb1b98-6765-41ab-abd3-bff2ce176cda"
/>

<img width="413" alt="Screenshot 2025-05-27 at 8 04 59 AM"
src="https://github.com/user-attachments/assets/e899b1f9-6290-463f-9213-2e0a456fa677"
/>

This also adds an aria-label to the search filter at the top of the
options list popover.

<img width="2559" alt="Screenshot 2025-06-02 at 7 23 53 AM"
src="https://github.com/user-attachments/assets/47e870dc-55c2-40bd-b461-a16022691810"
/>

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

### 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: Marta Bondyra <4283304+mbondyra@users.noreply.github.com>
2025-06-26 14:54:03 -07:00
Bailey Cash
1c76710f67
add a11y label to monitor script uploader (#225518)
## Summary

Closes #212467

![Screenshot 2025-06-26 at 12 38
17 PM](https://github.com/user-attachments/assets/60b3805b-ce58-48d9-97fe-b946c3a14684)

![Screenshot 2025-06-26 at 12 37
53 PM](https://github.com/user-attachments/assets/cad36c1f-6a77-41eb-a5bd-52c74181c246)
2025-06-26 21:19:41 +01:00
Jon
e5455131fe
Upgrade parcel/watcher to 2.5.1 (#225512)
We're seeing a reports of development segmentation faults after
upgrading to Node 22.16.0.

This upgrade pulls in the fix at
`https://github.com/parcel-bundler/watcher/pull/195`
2025-06-26 15:09:13 -05:00
Justin Kambic
21fcf54178
[EBT] Add Meta description for EBT metrics on management pages (#225095)
## Summary

Resolves https://github.com/elastic/observability-dev/issues/4556.

This PR will amend the existing EBT `onPageReady` tracking for TTFCP
with some descriptions to help consumers of the telemetry data
understand the context around what we are tracking for this timing data.

Also exports the `Meta` type for re-use in a Synthetics-specific
implementation that needs to accept this parameter.
2025-06-26 15:59:48 -04:00
Ying Mao
9f6eb0a0cb
[Response Ops][Reporting] Fixing timestamp override for scheduled CSV reports (#224757)
## Summary

PDF, PNG and ES|QL CSV reports all use a relative date range based on
`now` so when we generate recurring exports, we override `now` with a
`forceNow` parameter. Non ES|QL CSV reports use a `SearchSource` with a
fixed time range, even when a relative time range is set in Discover.

This PR updates the CSV search source report generation to override the
fixed time range for recurring scheduled exports.

## To Verify

- create a dataview (trying creating one using a field other than
`@timestamp` as the time field)
- populate the dataview with some data
- schedule a CSV export and verify that the eventual CSV report has data
in the correct time range
- may be faster to schedule via the API to get a report generated
faster.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-06-26 15:40:46 -04:00
Ievgen Sorokopud
d38801034a
[Attack Discovery][Scheduling] Cases support followup 1 (#225452)
## Summary

Summarize your PR. If it involves visual changes include a screenshot or
gif.

These changes addresses the review comment from my previous PR
36ed6b38c1 (r2150081638)

Initially I broke up rendered component into multiple memoized
sub-sections. Reverting that back and adding tests coverage for the new
functionality - Case actions UI for the Attack Discovery rule type:
* Hidden `group by` component
* Hidden `time window` component
* Hidden `reopen case` component
* Disabled `template selector` component
* Tooltip explaining why we disabled the `template selector` component
2025-06-26 21:31:35 +02:00
Tiago Costa
4de6f7ca2c
skip failing es promotion (#224987) 2025-06-26 20:14:29 +01:00
Tiago Costa
70fec45522
skip flaky suite (#225446) 2025-06-26 20:12:59 +01:00
Mason Herron
bb547ad2eb
[Fleet] Disable reinstall button on custom integrations (#225359)
## Summary

Closes #220604 

- Added additional prop check to disable reinstall button when an
integration is a custom integration

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

### Identify risks
N/A

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-06-26 12:53:15 -06:00
Sebastián Zaffarano
5b4a65b98c
[Security Solution][Telemetry] Review logging (#225077)
## Summary

This PR reduces logging in the security solution plugin’s telemetry code
for production environments by reviewing existing logs and adjusting
their log levels.

- Deprecated a logging helper method and moved to standard
`logger.[debug|info|warn|error]` calls.
- Reviewed all the logging sentences to adjust the log level, remove the
non-useful ones, and improve messages.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Alejandro Fernández Haro <afharo@gmail.com>
2025-06-26 19:34:49 +01:00
Steph Milovic
5220391abb
[Security solution] Update fleet_packages.json to include Security AI Prompts in kbn bundle (#225107) 2025-06-26 12:34:04 -06:00
Mason Herron
547c198c3d
[Fleet] Fix string escaping (#225516)
## Summary

Closes https://github.com/elastic/kibana-team/issues/1767

Fixes a string escaping flaw in the regex, switched to using the built
in function that safely escapes special characters


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

N/A
2025-06-26 19:11:56 +01:00
Agustina Nahir Ruidiaz
f47f83b6c2
[Security Solution]: on ESC key close the timeline flyout instead of the timeline modal (#224352)
## Summary

Fixes: https://github.com/elastic/kibana/issues/190761

I've added a `handleKeyDown` to capture the `ESC` key press behavior.

1. First `ESC` finds any .euiFlyout and close it with`closeFlyout()`
from `useExpandableFlyoutApi()`, then stops.

2. Next `ESC` (when no flyout) clicks `openToggleRef.current`, toggling
the timeline modal closed.


https://github.com/user-attachments/assets/0e42f9e9-2694-429d-8a5a-df86aa671809

### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [ ] [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: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-06-26 18:39:38 +01:00
Tiago Costa
1217df19f9
chore(NA): update versions after v7.17.30 bump (#225138)
This PR is a simple update of our versions file after the recent bumps.
2025-06-26 18:26:17 +01:00
Irene Blanco
9e88cd97cf
[Discover][ES|QL] Update query for recommended database queries to use db.system.name (#225421)
## Summary

Relates to https://github.com/elastic/kibana/issues/222908.

While working on the recommended queries, I completely missed that
`db.system` has been replaced by `db.system.name` in the
[semconv](https://opentelemetry.io/docs/specs/semconv/non-normative/db-migration/#database-client-span-attributes).

The OTel demo is still using `db.system` for now, and since I was using
it to test, I didn't catch the change.
2025-06-26 13:07:13 -04:00
Stratoula Kalafateli
b7e5336370
[ES|QL] Adds a tooltip at the quick reference icon (#225477)
## Summary

Adds a tooltip at the Quick reference icon, all the other icons have one
already

<img width="426" alt="image"
src="https://github.com/user-attachments/assets/667703cf-c85a-4b27-853e-696d5927f9a3"
/>
2025-06-26 17:48:16 +01:00
Dzmitry Lemechko
868a4657ee
[ska] relocate api_integration_basic & defend_workflows_cypress tests (#225374)
## Summary

Part of https://github.com/elastic/kibana-team/issues/1503

Before:

```
x-pack/test/
     | - api_integration_basic/
     | - defend_workflows_cypress/
```

After: 
```
x-pack/solutions/security/test/
     | - api_integration_basic/
     | - defend_workflows_cypress/
```

---------

Co-authored-by: Cesare de Cal <cesare.decal@elastic.co>
2025-06-26 17:43:58 +01:00
Devon Thomson
b0d7180ff8
[Dashboard] Fix for controls selections causing multiple fetches (#224761)
Prevents Dashboard from firing two requests when a Control change is made.
2025-06-26 12:34:16 -04:00
Marco Antonio Ghiani
2de5294819
[useUnsavedChangesPrompt] Don't prompt when history is replaced given its option. (#225471)
## 📓 Summary

Fixes an issue with prompting the user about leaving the page when the
URL changes due to data source changes.



https://github.com/user-attachments/assets/88e36769-96a4-4499-87f0-1e6db4502725
2025-06-26 17:28:26 +01:00
Catherine Liu
749aeb70e9
[Controls] Bulk select for options list control (#221010) 2025-06-26 09:24:45 -07:00
Pierre Gayvallet
48e4ede08a
[onechat] Add researcher agent mode (#224801)
## Summary

Follow-up of https://github.com/elastic/kibana/pull/223367
Fix https://github.com/elastic/search-team/issues/10259

This PR introduce the concept of agent **mode**, and expose the "deep
research" agent as a mode instead of a tool.

## Examples

### Calling the Q/A (default) mode

```curl
POST kbn:/internal/onechat/chat
{
  "nextMessage": "Find all info related to our work from home policy"
}
```

### Calling the researcher mode

```curl
POST kbn:/internal/onechat/chat
{
  "mode": "researcher",
  "nextMessage": "Find all info related to our work from home policy"
}
```

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-06-26 17:04:31 +01:00
Sergi Massaneda
7683dd9125
[Security Solution] Disable MKI test for automatic migrations (#225426)
## Summary

There's an issue where the `esArchiverLoad` migrates SO if any index
starting with `.kibana` is affected.

```
CypressError: `cy.task('esArchiverLoad')` failed with the following error:

> security_exception
	Root causes:
		security_exception: action [indices:admin/settings/update] is unauthorized for user [testing-internal] with effective roles [superuser] on restricted indices [.kibana_security_solution_1,.kibana_alerting_cases_1,.kibana_task_manager_1,.kibana_usage_counters_1,.kibana_1,.kibana_ingest_1,.kibana_analytics_1], this action is granted by the index privileges [manage,all]

```

This PR disables the test for MKI so it doesn't interfere with the
release, we'll work on a fix in a separate PR

Example MKI execution

https://buildkite.com/elastic/kibana-serverless-security-solution-quality-gate-investigations/builds/2889

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-06-26 17:03:15 +01:00
Bailey Cash
e1868b3c97
[Bugfix / Incident Management] Set proximal filter to true only when indicated (#225461)
Resolves #225460

Addresses an issue where the related alerts by timestamp filter is
applied without user request


https://github.com/user-attachments/assets/b911295e-0748-4a8d-a365-f2af06855d72
2025-06-26 16:28:59 +01:00
Dario Gieselaar
7d20301289
Load huggingface content datasets (#224543)
Implements a huggingface dataset loader for RAG evals - see
[x-pack/platform/packages/shared/kbn-ai-tools-cli/src/hf_dataset_loader/README.md](https://github.com/dgieselaar/kibana/blob/hf-dataset-loader/x-pack/platform/packages/shared/kbn-ai-tools-cli/src/hf_dataset_loader/README.md).
Additionally, a `@kbn/cache-cli` tool was added that allows tooling
authors to cache to disk (possibly remote storage later).

Used o3 for finding datasets on HuggingFace and doing an initial pass on
a line-by-line dataset processor ([see
conversation](https://chatgpt.com/share/6853e49a-e870-8000-9c65-f7a5a3a72af0))

Libraries added:

- `cache-manager`, `cache-manager-fs-hash`, `keyv`,
`@types/cache-manager-fs-hash`: caching libraries and plugins. could not
find any existing caching libraries in the repo.
- `@huggingface/hub`: api client for HF.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-06-26 17:24:45 +02:00
Stratoula Kalafateli
e401aa4c07
[ES|QL] Simplify function to retrieve categorize column (#225281)
## Summary

Simplifies the function to extract the categorize function field. The
unit tests we had pass for the new implementation so I am sure we don't
introduce new bugs
2025-06-26 16:22:50 +01:00
Marta Bondyra
26d56b5060
[Controls] Small visual fixes (#225430)
## Summary

Fixes [#221140](https://github.com/elastic/kibana/issues/221140)  
Fixes [#223579](https://github.com/elastic/kibana/issues/223579)

---

### 🏷️ Long labels no longer truncated

Label truncation was introduced sometime between versions 8.14 and 8.18:

**8.14 (working):**  

![8.14](https://github.com/user-attachments/assets/0ea30306-9a27-4343-86a8-a64acbe86117)

**8.18 (broken):**  

![8.18](https://github.com/user-attachments/assets/39c4b393-1180-45e7-9595-228bfbe75f46)

 **After the fix:**  
![After
fix](https://github.com/user-attachments/assets/2b9bfbe5-8201-4997-ae76-fd4e43b6ceec)

---

### 🎛️ [Controls] Options list hover background fix

The original hover style comes from EUI. Removing it entirely made the
interaction feel unclear,
so I’ve reintroduced a lighter background to subtly indicate the hover
state:

**9.0 (broken):**  
<img width="648" alt="Screenshot 2025-06-26 at 14 05 51"
src="https://github.com/user-attachments/assets/2eff832d-47bd-4664-84d3-62c88d013a89"
/>


 **After the fix:**  
![Hover
state](https://github.com/user-attachments/assets/11abde74-3bc6-4416-b422-ec5f1fdeed9a)
2025-06-26 17:17:42 +02:00
Paulina Shakirova
b0704474f0
[a11y][ml] fix screen reader not reading tooltip p-value (#224666)
## Summary
This PR fixes [[ML] Change point detection: p-value tooltip is not
announced because lack of
focus](https://github.com/elastic/kibana/issues/216545) issue.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-06-26 17:16:10 +02:00
Julia Bardi
6cea1b0b6a
[Fleet] fix UI error when no tags filter is selected (#225413)
## Summary

Closes https://github.com/elastic/kibana/issues/224055

To verify:
- filter on `No Tags` or `not tags:*` in Agent list
- add tag to an agent
- expect that the agent disappears from view and there is no UI error



https://github.com/user-attachments/assets/77982bc9-13a8-4141-b0a0-e9198706691f
2025-06-26 16:58:15 +02:00
Stratoula Kalafateli
731ab84487
[Lens][ES|QL] Do not rerun the hook in case of an error in the query (#225067)
## Summary

While testing the ES|QL charts I realized that in case of an error in
the query, the hook goes into a loop and causes performance issues.

As the error is being reported we do not need to re-run the query to get
the results

For example if you create a control wrongly.

e.g.

1. Create a chart and add a control which will create an error:

<img width="508" alt="image"
src="https://github.com/user-attachments/assets/f2013d2c-e161-47bf-a3cb-d5033be9de59"
/>

2. Add to the control no-date fields. e.g. clientip
3. Check the editor is not going into a rendering loop

<img width="482" alt="image"
src="https://github.com/user-attachments/assets/cc541b68-b317-41ae-b4a6-87569466edd6"
/>


### Release notes
Fixes a performance issue in the Lens ES|QL charts in case of errors in
the query.

### Checklist

- [ ] [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
2025-06-26 15:56:50 +01:00
Mason Herron
2aaf27bb69
[Fleet] Fix CSV download when no fields are chosen (#225368)
## Summary

Closes #218097 

- Added check to stop download button from being active when no fields
are selected as it doesnt make sense to download a CSV with zero fields.


![image](https://github.com/user-attachments/assets/0c69bade-a464-49a4-8276-1845e0f887e9)

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

### Identify risks

N/A

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-06-26 08:48:46 -06:00
Bryce Buchanan
ce3751bc14
added a useful reminder to apply backports per the guideline (#225326)
## Summary
The Obs-ux-infra_services team identified a useful addition to the PR
checklist we'd like to add to help remind contributors to apply
backports to the appropriate branches per the guideline document.
2025-06-26 07:28:24 -07:00
Kenneth Kreindler
dc24f2068b
[Security Solution] [AI assistant ] Fix error where llm.bindTools is not a function. (#225268)
## Summary

Summarize your PR. If it involves visual changes, include a screenshot
or gif.

This PR fixes a bug where the error message "llm.bindTools is not a
function" would appear in the Security AI assistant.

![Screenshot 2025-06-25 at 11 05
25 AM](https://github.com/user-attachments/assets/3e24b857-667c-4be7-b0ac-236d48decd4f)

Changes:
- Make AssistantTool.getTool return a promise. This means tools can be
created asynchronously. This eliminates the error, as the error stems
from the promise `createLlmInstance()`
([ref](https://github.com/elastic/kibana/pull/225268/files#diff-69e7fc6c29ce0673d7d33c0472a012ad310fa571487a6b594d2e1378b3e5f246R286))
not being awaited.
- Improve type definition for tools so that we avoid bugs when the
AssistantTool type changes e.g.
https://github.com/elastic/kibana/pull/225268/files#diff-b603523fee68a791bd3af770b780fc654eb7866c8d2a73192d29fa935c80e541R17

### How to test:
- Enable AdvancedEsqlGeneration feature flag:
```yml
# kibana.dev.yml
xpack.securitySolution.enableExperimental: ['advancedEsqlGeneration']
```
- Start Kibana
- Open the Security AI assistant
- Ask a question
- Expect to see a response from the LLM.

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

### 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: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-06-26 15:22:01 +01:00
Ievgen Sorokopud
4937b3a849
[Attack Discovery][Scheduling] Actions: Return formatted markdown fields in the context (#225330)
## Summary

Main ticket ([Internal
link](https://github.com/elastic/security-team/issues/10142))

With these changes we make sure that we return attack discovery fields
reformatted to a nice markdown text. We already format discovery details
when we create a new Case and add markdown comment to it.

### To Test

1. Create attack discovery schedule
2. Add an action to the schedule (email, slack etc.)
3. Select `For each alert > Per rule run` action frequency
4. Update subject, body or other fields of the connector to include
discovery details through the context variables
5. Wait until the action is triggered and check the received message

### Example of the email connector fields

**Subject**:
```
{{context.attack.title}}
```

**Message**: 
```
{{{context.attack.detailsMarkdown}}}

{{{context.attack.detailsUrl}}}
```

<img width="665" alt="Screenshot 2025-06-25 at 18 05 30"
src="https://github.com/user-attachments/assets/71b2e02b-0437-4486-a584-108bec4d477f"
/>

which will result in an email similar to this one

<img width="1125" alt="Screenshot 2025-06-25 at 17 54 32"
src="https://github.com/user-attachments/assets/fefe60f0-e560-4288-9ec8-d1d444feb950"
/>

## NOTES

The feature is hidden behind the feature flag (in `kibana.dev.yml`):

```
feature_flags.overrides:
  securitySolution.attackDiscoveryAlertsEnabled: true
  securitySolution.assistantAttackDiscoverySchedulingEnabled: true
```
2025-06-26 16:18:36 +02:00
Robert Oskamp
169e7b32a4
Skip failing synthetics multispace monitor test suite for MKI (#225434)
## Summary

This PR skips the failing synthetics multispace monitors API test suite
for MKI runs.

For failure details see #225431
2025-06-26 16:14:50 +02:00
Davis Plumlee
f44a7655d9
[Security Solution] Test plan for reverting customized prebuilt rules to their base version (#219628)
## Summary

Test plan for: https://github.com/elastic/kibana/issues/215506 and https://github.com/elastic/kibana/issues/207172

Adds test cases to cover when writing implementation for the reverting customized prebuilt rules to their base version enhancement
2025-06-26 14:04:47 +00:00
Sergi Romeu
76642fbf16
[ObsUX][Infra][APM] Hide Settings from serverless navigation (#225436)
## Summary

Closes [#222240](https://github.com/elastic/kibana/issues/222240)

This PR adds the prop `sideNavStatus: 'hidden'` to the settings links to
prevent them from appearing in the nav bar, but keeping them in the
breadcrumbs.
It also fixes the `Application` breadcrumb not being clickable.

## Screenshots

| Description | Before | After |
|--------|--------|--------|
| Classic Infra |
![image](https://github.com/user-attachments/assets/3b179b0b-cdca-4bc1-a4be-beffe689dbd1)
|
![image](https://github.com/user-attachments/assets/79a3cf5d-e7af-42eb-aa22-361f6f3f7527)
|
| Classic APM |
![image](https://github.com/user-attachments/assets/4944000a-e583-47c9-8647-7152b9eab60d)
|![image](https://github.com/user-attachments/assets/ab88c54c-8d5c-47fc-b46f-efc197da6673)
|
| Serverless Infra |
![image](https://github.com/user-attachments/assets/eece25d8-be06-457a-a4c8-940ce5f02790)
|
![image](https://github.com/user-attachments/assets/ca2b0d57-f0b3-4517-807e-a91e42e507bb)
|
| Serverless APM |
![image](https://github.com/user-attachments/assets/228bedba-7687-42cd-b47a-557bfbfda210)
|
![image](https://github.com/user-attachments/assets/7c7f551f-3d6a-4dcf-8ac3-167f0db0d05e)
|
2025-06-26 14:40:05 +01:00
Dzmitry Lemechko
2e2576fbf5
[ska][x-pack] relocate reporting tests (#225333)
## Summary

Part of https://github.com/elastic/kibana-team/issues/1503

This PR is mostly about moving tests from x-pack/test/

Before:

```
x-pack/test/
     | - reporting_api_integration/
     | - reporting_functional/

```

After: 
```
x-pack/platform/test/
     | - reporting_api_integration/
     | - reporting_functional/
```

Few page objects, required by functional tests, were relocated as well

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-06-26 08:35:10 -05:00
Dennis Tismenko
37c930a542
[onechat] Add tools page, show registered tools (#224330)
## Summary

Implements the tools page in the Onechat UI and retrieves the registered
tools from the Kibana API to display a list of all tools and
descriptions — descriptions are truncated at the first `\n` character.

![Screenshot 2025-06-24 at 2 10
37 PM](https://github.com/user-attachments/assets/f4ea70bd-0675-4d39-b120-123d2185752b)


### 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~
- [ ] ~[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)~

### Identify risks

Does this PR introduce any risks? For example, consider risks like hard
to test bugs, performance regression, potential of data loss.
__No risks are introduced in this PR.__

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-06-26 09:34:53 -04:00
Mykola Harmash
6b452c79ae
[Oblt Onboarding] Add more errors logging for Auto Detect flow (#222948)
Closes https://github.com/elastic/kibana/issues/218433

This change adds more descriptive error messages inside telemetry events
in the auto detect onboarding flow. The extended error message be shown
to the user as well.

* New telemetry event for the case when user is not running the script
as `root`
* If Agent fails to download, bot the original error from `curl` and the
download URL will be logged
* If Agent fails to extract, error message from `tar` command will be
logged
* If Agent fails to install, error message from `elastic-agent install`
command will be logged
* Error response from the integrations install endpoint will be logged

Example telemetry event:
![CleanShot 2025-06-06 at 11 29
20@2x](https://github.com/user-attachments/assets/700a3d21-8d1d-43e0-b084-198da7871dec)

Example terminal output:
![CleanShot 2025-06-05 at 15 10
38@2x](https://github.com/user-attachments/assets/702e641e-ab4d-4820-8f4d-e551dde435e8)


## How to test

In order to simulate errors for all scenarios, you going to need to
modify the `auto_detect.sh` script to make it intentionally fail, like
adding extra character to the EA download URL. You can modify it
directly in the source if you're running Kibana locally, or you can
modify it after it was downloaded and before running it.

To test just one use-case without the script manipulations, you can
modify the EA download URL inside the code snippet provided by Kibana.

**Whatever way you choose, still go though the flow and make sure the
successful path works as expected.**

You can check the telemetry events emitted from the flow on [the staging
telemetry
cluster](https://telemetry-v2-staging.elastic.dev/s/observability-ux/app/discover#/?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-24h%2Fh,to:now))&_a=(columns:!(),dataSource:(dataViewId:b4befdd3-9a15-40c2-be4d-3ac1084d6182,type:dataView),filters:!(),interval:auto,query:(language:kuery,query:'event_type%20:%20%22observability_onboarding%22'),sort:!(!('@timestamp',desc)))),
but keep in mind that events delivered there with a delay of a couple of
hours 😢

---------

Co-authored-by: Joe Reuter <johannes.reuter@elastic.co>
2025-06-26 14:28:54 +01:00
Ola Pawlus
cead1a7821
[Embeddable Rebuild] Fix panel title sync with saved object when using defaultTitle (#225237)
## Summary

Bug description (also the bug video below):
The bug occurred in the Customize Panel Editor, where the
PanelTitle—even when matching the defaultTitle from the central Saved
Object—was not always properly synchronized with that object. This led
to situations where the title was incorrectly stored as a custom
override, breaking the link to the saved object. There were two specific
cases where this happened:

Adding a panel from the library, then opening Customize Panel and
clicking Apply without making changes
After adding a panel from the library, the user opens the Customize
Panel Editor via the settings icon. Without making any changes to the
title, they exit the editor by clicking the Apply button instead of the
close icon. This causes the defaultTitle to be unnecessarily written
into the title field of the API object, which then treats it as a custom
title—breaking future synchronization with the saved object.

Resetting the title to default after a change
The user changes the panel title in the Customize Panel Editor and
clicks Apply. Later, they reopen the editor and click Reset to default.
This correctly restores the title from the central saved object, but it
is again written into the title field of the API object. Although the
value matches the current defaultTitle, it is now treated as custom. If
the central title changes later, the panel title will no longer
update—breaking synchronization again.

Fix:
The logic was updated to correctly detect when the panel title matches
the defaultTitle. In such cases, it clears the title field in the API
(by setting it to undefined) to indicate that the panel should inherit
the title from the saved object. This ensures proper synchronization:
any future updates to the saved object's title will be reflected
automatically in the panel.


Closes #188858

Below the bug video:


https://github.com/user-attachments/assets/f784679c-8eaa-47b4-942d-e3802faee076
2025-06-26 06:22:53 -06:00
Miriam
75ba373fbd
Remaining work attributes table (#224723)
Closes https://github.com/elastic/kibana/issues/221928

#### Add ES|QL logic


https://github.com/user-attachments/assets/d29f939a-7b82-4873-92d4-8210c2202339

#### Empty message for accordion

- Empty message when there are no attributes fields at all
- For now we kept the accordion closed when fields count is zero, with
an empty message inside, waiting for UI/UX team to review this
implementation

<img width="524" alt="Screenshot 2025-06-24 at 12 27 18"
src="https://github.com/user-attachments/assets/4015ed6a-5977-486d-93e6-d8b5714af9fd"
/>

#### Simplify attribute display names

- the field name should not show the full field name. The tooltip will
show both, simplify and full name, this is part of the implementation
`FieldName` component from platform

<img width="624" alt="Screenshot 2025-06-24 at 12 19 48"
src="https://github.com/user-attachments/assets/634b4ef0-0934-4721-9217-334286b6464a"
/>

<img width="624" alt="Screenshot 2025-06-24 at 12 20 07"
src="https://github.com/user-attachments/assets/bdc6de9c-784f-4c78-bf18-1f37b645429d"
/>

#### Filtering controls use full field name


https://github.com/user-attachments/assets/7858d803-271e-4913-9aae-385dd7bc9e25

#### Add explanatory tooltip for attribute namespaces

<img width="525" alt="Screenshot 2025-06-24 at 12 24 33"
src="https://github.com/user-attachments/assets/a76b1419-c1d9-4e46-a289-a819b7533b18"
/>

<img width="525" alt="Screenshot 2025-06-24 at 12 24 51"
src="https://github.com/user-attachments/assets/e48b19a3-85a8-4a13-b527-3a4494aef2af"
/>

<img width="525" alt="Screenshot 2025-06-24 at 12 24 57"
src="https://github.com/user-attachments/assets/50501672-4d75-43ce-b61b-646108b4b14a"
/>


### Test:
#### How to generate OTel data
- Follow
https://github.com/smith/elastic-stack-docker-compose?tab=readme-ov-file#elastic-stack-docker-compose

#### How to test
- Make sure your solution view is Observability
- update your `kibana.yml` 

```
discover.experimental.enabledProfiles:
   - observability-root-profile-with-attributes-tab
   #  if you want to test it with the additional profiles add the following to your `kibana.yaml` 
   - observability-traces-data-source-profile
   - observability-traces-transaction-document-profile
   - observability-traces-span-document-profile
```
2025-06-26 13:13:27 +01:00
Davis Plumlee
d532ff490a
[Security Solution] Adds ability to revert prebuilt rules to their base version (#223301)
## Summary

Ticket: https://github.com/elastic/kibana/issues/215506

Adds ability to revert prebuilt rules to their base version. 

Implements following endpoints:

- `GET /internal/detection_engine/prebuilt_rules/base_version`
- `POST /internal/detection_engine/prebuilt_rules/revert`

Allows users to revert their customized prebuilt rules to the original Elastic versions. This also implements a rule diff flyout on the rule details page so users can see which fields are customized and would be changed on reversion.

### Screenshots

#### Rule base version flyout
![Screenshot 2025-06-12 at 2 54 05 PM](https://github.com/user-attachments/assets/1b1cb544-80f7-4914-ba06-d94d6a673b8d)


#### Disabled when cannot find base version
![Screenshot 2025-06-12 at 2 53 15 PM](https://github.com/user-attachments/assets/e22b0ccc-ddd2-4dd3-b2e9-9c7077c00700)


### 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
2025-06-26 13:48:37 +02:00