Commit graph

83655 commits

Author SHA1 Message Date
Ignacio Rivas
a468965588
[Kibana Management] Add missing API endpoint authz info (#209758) 2025-02-07 08:51:22 +01:00
Kibana Machine
d04c5b29f6
[api-docs] 2025-02-07 Daily api_docs build (#210129)
Generated by
https://buildkite.com/elastic/kibana-api-docs-daily/builds/976
2025-02-07 08:27:32 +01:00
Philippe Oberti
e7140ff25f
[Expandable Flyout] - customize default right, left and preview widths for push mode (#206155)
## Summary

This PR is making some changes to the Expandable Flyout package. Prior
work had added [push
mode](https://github.com/elastic/kibana/pull/182615) to the package,
added [custom way](https://github.com/elastic/kibana/pull/170078) to
handle the width for multiple resolutions, and [added
support](https://github.com/elastic/kibana/pull/192906) for the internal
section to be resiable by users.

This PR improves the default user experience when using the flyout in
push mode. Until now, the default `right`, `left` and `preview` width in
`push` mode and `overlay` mode were identical. This meant that the
flyout rendered in `push` mode was most of the time using the whole
screen, not leaving any room to the rest of the page content (like the
alerts table).

The `push` widths are now calculated in a different way, to leave as
much room as possible while still allowing the flyout `right` and `left`
sections to render their content correctly, at least most of the time.
Users can still resize the whole flyout as well as the internal `right`
and `left` sections. The `push` widths are generally smaller/narrower
than the `overlay` widths.

#### The `overlay` mode default widths have not changed


https://github.com/user-attachments/assets/28b6c41e-b12c-45cf-aa3e-026a7acdb7b3

#### The `push` mode default widths


https://github.com/user-attachments/assets/93706f9e-212b-4cb4-8748-552f2daed585

### Checklist

- [ ]
[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
2025-02-06 15:57:07 -06:00
Philippe Oberti
ebb31d249f
[Security Solution] remove isDraggable props + various related cleanups (#207959)
## Summary

This PR removes the `isDraggable` prop throughout Security Solution.
Unless I'm mistaken, this property isn't necessary anymore, as we do not
use those draggable elements anymore. From what I could see, we had its
value set to `false` everywhere.

This lead to a lot of files impacted, but most of them have only a
couple of lines changed. In some files though, removing the
`isDraggable` prop allowed to remove more code than became obsolete.

**No UI changes should have been introduced in this PR!**

### What this PR does

- removes `isDraggable` everywhere
- performs the extra small cleanup when obvious
- updates all corresponding unit e2e and tests

### What this PR does

- rename files or component names to limit the already extensive impact
of the code change
2025-02-06 15:56:09 -06:00
Jonathan Buttner
3a14752dad
[ML] Switching from _unified to _stream for the chat_completion task type (#210104)
This PR switch the endpoint used for the `chat_completion` task type to
`_stream`. Only the URL changes, the request and response format stay
the same. The `_stream` URL was introduced a couple verisons ago and is
the preferred route for interacting with `chat_completion`.

### Testing

Setup a pre-configured connector for security. Add this to your
`config/kibana.dev.yml`

```
xpack.actions.preconfigured:
  my-inference-open-ai:
    name: Inference Preconfig Jon
    actionTypeId: .inference
    exposeConfig: true
    config:
      provider: 'openai'
      taskType: 'chat_completion'
      inferenceId: 'openai-chat_completion-123'
      providerConfig:
        rate_limit:
          requests_per_minute: 80000
        model_id: 'gpt-4o'
        url: https://api.openai.com/v1/chat/completions
    secrets:
      providerSecrets:
        api_key: '<api key>'
```

Then via the Connectors page, create an AI connector with the inference
endpoint id set to `openai-chat_completion-123`


https://github.com/user-attachments/assets/29d56d58-cd96-432f-9d13-460446d204a1
2025-02-06 16:40:47 -05:00
Marius Iversen
8374def508
[Rule Migration] Add tests for telemetry (#210081)
## Summary

Resolves a minor issue in reporting telemetry events in SIEM migrations
with errors, also adds tests for these scenarios.
2025-02-06 20:12:19 +01:00
Kevin Delemme
375528dcfe
chore(slo): factorize error handler (#209671) 2025-02-06 14:04:37 -05:00
Anton Dosov
cd398d9394
fix Cannot read properties of null (reading 'closed') when chrome is remounted (#210075) 2025-02-06 20:02:59 +01:00
Shahzad
5ca50968fd
[Synthetics] Remove dummy code for testing !! (#210062)
## Summary

Remove dummy code for testing !!
2025-02-06 19:51:36 +01:00
Rodney Norris
11b40a612c
search: rename search plugin config path to xpack.search (#209355)
## Summary

This PR renames the `enterprise_search` config path from
`enterpriseSearch` to `xpack.search`. This is to migrate away from
customer facing usage of enterprise search and align with other search
plugin config paths like `xpack.serverless.search`.

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-06 12:35:21 -06:00
Justin Kambic
ac5012b656
[Uptime] Unskip Uptime a11y tests (#208399)
## Summary

Resolves #154003.

Unskip a11y uptime tests.
2025-02-06 13:06:56 -05:00
Sergi Massaneda
a990be66df
[Security Solution] SIEM Migrations RBAC (#207087)
## Summary

Implements the access controls for SIEM rule migrations.

## API changes

- All API routes have been secured with "SIEM Migration" feature checks
- Start migration API route now checks if the user has privileges to use
the connector ID received
 
## UI changes

###  Onboarding SIEM migrations

- AI Connector selection
- Actions & Connectors: Read -> This privilege allows reading and
selecting a connector

Otherwise, we show a callout with the missing privileges:
![connector read
missing](https://github.com/user-attachments/assets/2eb474df-78f0-488c-803b-7c874123b62a)

- Create a migration
  - Security All -> Main Security read & write access
  - Siem Migrations All -> new feature under the Security catalog
- Actions & Connectors: Read -> This privilege allows connector
execution for LLM calls

Otherwise, we show a callout with the missing privileges:
![onboarding start card
callout](https://github.com/user-attachments/assets/19975efd-d684-47d8-b4c0-0352b7c319b4)

### Rule Translations page

- Minimum privileges to make the page accessible (read access):
  - Security Read -> Main Security read access
  - Siem Migrations All -> new feature under the Security catalog
    
Otherwise, we hide the link in the navigation and display the generic
empty state if accessed:
![rules minimum privileges
missing](https://github.com/user-attachments/assets/9dd88c72-e669-4fde-8397-e76d3d5069f9)

- To successfully install rules the following privileges are also
required (write access):
  - Security All -> Main Security read & write access
- Index privileges for `.alerts*` pattern: _read, write,
view_index_metadata, manage_
  - Index privileges for `lookup_*` pattern: _read_

Otherwise, we show a callout at the top of the page, this callout is
consistent with the one displayed on the Detection Rules page
(`/app/security/rules`)
![alerts privileges
missing](https://github.com/user-attachments/assets/105e53d7-9591-457f-983a-7fe4f9f33068)

- To retry rule translations (upload missing macros/lookups or retry
errors)
- Actions & Connectors: Read -> This privilege allows connector
execution for LLM calls

Otherwise, when attempted, we show a toast with the missing privilege. 

![](https://github.com/user-attachments/assets/f6090bb5-e6f8-4be7-bb9b-c4192155bdf8)

## Other changes

- Technical preview label

![technical
preview](https://github.com/user-attachments/assets/244724e2-9756-4c6d-805f-3459367f7975)

- No connector selected toast


https://github.com/user-attachments/assets/e4900129-ae9c-413f-9a41-f7dca452e71d

## Fixes

- [Fixed] Not possible to select a connector when no connector is
selected:
![bug
connectors](https://github.com/user-attachments/assets/2f5a831e-2172-4e77-9997-2447b4ee866f)

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-02-06 18:41:21 +01:00
Thom Heymann
151ce184c5
[OneDiscover] Remove logs explorer (#209565)
Resolves #209261

## Summary

Removes the code used to render Logs Explorer. This does not result in
any functional changes.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-02-06 17:40:55 +00:00
Dzmitry Lemechko
2b5bbf8f86
[kbn-test] retry 5xx in saml callback (#208977)
## Summary

When we run Scout tests in parallel, we call SAML authentication in
parallel too and since by default `.security-profile-8` index does not
exist, we periodically getting 503 response:

```
 proc [kibana] [2025-01-29T11:13:10.420+01:00][ERROR][plugins.security.user-profile] 
Failed to activate user profile: {"error":{"root_cause":[{"type":"unavailable_shards_exception","reason":
"at least one search shard for the index [.security-profile-8] is unavailable"}],
"type":"unavailable_shards_exception","reason":"at least one search shard
for the index [.security-profile-8] is unavailable"},"status":503}. {"service":{"node":
{"roles":["background_tasks","ui"]}}}
```

The solution is to retry the SAML callback assuming that index will be
created and the issue will be solved.
We agreed with Kibana-Security to retry only **5xx** errors, because for
**4xx** we most likely have to start the authentication from the start.

For reviews: it is not 100% reproducible, so I added unit tests to
verify the retry logic is working only for 5xx requests. Please let me
know if I miss something

Retry was verified locally, you might be seeing this logs output:

```
 proc [kibana] [2025-01-30T18:40:41.348+01:00][ERROR][plugins.security.user-profile] Failed to activate user profile:
{"error":{"root_cause":[{"type":"unavailable_shards_exception","reason":"at least one search shard for the index
[.security-profile-8] is unavailable"}],"type":"unavailable_shards_exception","reason":"at least one search shard
for the index [.security-profile-8] is unavailable"},"status":503}. {"service":{"node":{"roles":["background_tasks","ui"]}}}
 proc [kibana] [2025-01-30T18:40:41.349+01:00][ERROR][plugins.security.authentication] Login attempt with "saml"
provider failed due to unexpected error: {"error":{"root_cause":[{"type":"unavailable_shards_exception","reason":
"at least one search shard for the index [.security-profile-8] is unavailable"}],"type":"unavailable_shards_exception",
"reason":"at least one search shard for the index [.security-profile-8] is unavailable"},"status":503}
{"service":{"node":{"roles":["background_tasks","ui"]}}}
 proc [kibana] [2025-01-30T18:40:41.349+01:00][ERROR][http] 500 Server Error {"http":{"response":{"status_code":500},"request":{"method":"post","path":"/api/security/saml/callback"}},"error":
{"message":"unavailable_shards_exception\n\tRoot causes:\n\t\tunavailable_shards_exception: at least one
search shard for the index [.security-profile-8] is
    ERROR [scout] SAML callback failed: expected 302, got 500
    Waiting 939 ms before the next attempt
 proc [playwright]
 info [o.e.c.r.a.AllocationService] [scout] current.health="GREEN" message="Cluster health status changed
from [YELLOW] to [GREEN] (reason: [shards started [[.security-profile-8][0]]])."
previous.health="YELLOW" reason="shards started [[.security-profile-8][0]]"
```

To reproduce: 
```
node scripts/scout.js run-tests --stateful --config x-pack/platform/plugins/private/discover_enhanced/ui_tests/parallel.playwright.config.ts
```

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-02-06 18:39:47 +01:00
Maria Iriarte
228f83fde3
[Lens] Replace scss for heatmap expression (#209246)
## Summary

Part of https://github.com/elastic/kibana/issues/208908

Replaces scss to css-in-js. 

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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Marta Bondyra <4283304+mbondyra@users.noreply.github.com>
2025-02-06 17:38:08 +01:00
Khristinin Nikita
3f1c97e38e
Remove beta badge for manual rule run (#209535)
## Remove beta badge for manual rule run

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-02-06 17:31:03 +01:00
Jon
b2c9b1692e
[ci] Remove beta1 version qualifier (#209870)
main is tracking 9.1.0, this isn't needed here.
2025-02-06 10:11:59 -06:00
Shahzad
ac89e472a6
[Synthetics] Monitor status rule, show to which monitors rule applies !! (#209281)
## Summary

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

Monitor status rule, show to which monitors rule applies !!

With filters shows to which monitors the rule applies 
<img width="1728" alt="image"
src="https://github.com/user-attachments/assets/5536ad12-d0ed-4394-a511-8dd826bf3b56"
/>


Also showing an inspect flyout with query details

<img width="1728" alt="image"
src="https://github.com/user-attachments/assets/d441e4f9-8f0c-4fac-a2ca-5f214f8d2709"
/>
2025-02-06 17:07:22 +01:00
Paul Tavares
5da812ceda
[Security Solution][Endpoint] Add --version to the run SentinelOne and Microsoft host scripts (#209769)
## Summary

- Fixes Cypress `parallel.ts` runner to ensure a failure is reported in
conditions where the setup of the test run environment fails to be
craeted
- Adds the `--version` CLI argument to the `run_sentinelone_host` and
`run_microsoft_defender_host` scripts
- Fixes `run_endpoint_host` script to ensure the `--version` (if
defined) is also used for running fleet-server
2025-02-06 17:03:38 +01:00
Drew Tate
4ee3b50584
[ES|QL] WHERE replacement ranges correctly generated for every case (#209684)
## Summary

fix https://github.com/elastic/kibana/issues/204441

It ain't beautiful but it works. I am going to come in with another pr
to deal with prefix detection holistically

### 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: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-06 08:36:07 -07:00
Gergő Ábrahám
16fae1c865
[EDR Workflows] Fix agent count on policy deploy modal (#209593)
## Summary

Fixes the agent count issue on the warning model when saving a Defend
package policy. Now it uses the same `active` field instead of `all`, as
the `AgentSummary` component.

Also, re-enables flaky unit test for `PolicySettingsLayout`:
closes: #179984

### 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
2025-02-06 16:17:47 +01:00
Steph Milovic
f299c9fdab
[Security GenAI] Add Telemetry related to the Attack Discovery Alert Filtering feature (#209623) 2025-02-06 08:11:33 -07:00
Stratoula Kalafateli
ee866a745a
Update lexer / parser and fix the categorize function (#209964)
## Summary

- Fixes the categorize wrong autocomplete suggestions
- Updates the lexer / parser as I want this to get merged in 8.18 / 9.0
2025-02-06 07:57:02 -07:00
James Gowdy
42def2d71b
[ML] Adding tests for file upload merge tools (#209704)
Adding tests for the merge tools utility functions.
2025-02-06 15:53:14 +01:00
Felix Stürmer
f4d5aeabeb
[Logs UI] Use the advanced setting in fallback log views (#209779)
This fixes the problem that fall-back log views use the deprecated
inline log index configuration instead of the advanced setting.
2025-02-06 15:47:22 +01:00
Kylie Meli
5878c77784
[Automatic Import] Adding UI and FTR tests for automatic import cel creation flyout (#209418)
## Summary

This PR adds the following tests for Automatic Import:
- jest unit tests for the CEL generation flyout
- FTR tests for the `analyze_api` and `cel` graph endpoints (excluding
200 tests due to https://github.com/elastic/kibana/issues/204177 still
being open)

There is also some very minor cleanup of a test mocking of the now
deprecated FF for generateCel, and small refactor to move a function to
a different file for consistency.

(Cypress tests coming in a separate PR)
2025-02-06 09:29:56 -05:00
Elena Shostak
f058b50f93
[Authz] Added justification for authz opt out for security routes (#209527)
## Summary

Added justification for authz opt out for security routes.


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

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-06 15:29:24 +01:00
Marius Iversen
3394b691b1
[GenAI Connectors] Add support for telemetry metadata (#208180)
## Summary

This extends initial connector telemetry from PR ref
https://github.com/elastic/kibana/pull/186936.

The PR adds the following optional fields when instantiating a new
actionClient as part of its `subActionParams`:

```ts
{
  telemetryMetadata : {
    pluginId: "your plugin name or unique identifier",
    aggregateBy: "ID to aggregate on" 
  }
}
```

The support is added to all AI connector models for both
stream/non-stream/raw.

The PR also adds token count usage for bedrock `InvokeAIRaw`, as that
was currently not added correctly.

Pierre also helped with adding a new metadata optional field for the `NL
to ESQL functions`, so that users can pass in similar metadata for LLM
conversations using the InfereceClient.

PluginId is a field used to filter telemetry in the way the team wants
to implement it. It could be a team name, a plugin name etc, all
depending on how the team wants to group and filter on the telemetry
event.

AggregateBy is intended to be used to group multiple LLM calls for
aggregations and stats, for example a conversationId that has multiple
LLM calls.

Both fields are optional, so when you do not want to aggregate the
option can simply be ignored.

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

---------

Co-authored-by: pgayvallet <pierre.gayvallet@elastic.co>
2025-02-06 15:24:35 +01:00
Jedr Blaszyk
1ae70effe0
[Connectors][Bugfix] Fix agentless policies created with background task (#209984)
## Summary

Background task that creates agentless policies for connectors was
missing some fields in the paylaod, fixing them in this PR

Added unit test

### Verification

Checked against working agentless API calls, example of 2 working calls
from Integrations UI. I added missing fields in the background task
payload.

<img width="600" alt="Screenshot 2025-02-06 at 11 58 05"
src="https://github.com/user-attachments/assets/df35f96b-e60e-4189-8270-c3de92fa9db5"
/>

<img width="600" alt="Screenshot 2025-02-06 at 11 57 55"
src="https://github.com/user-attachments/assets/f88adcff-479e-4af7-b4dc-1cef04757aac"
/>

Now the generated policies show up correctly (tested locally):

<img width="1633" alt="Screenshot 2025-02-06 at 12 04 23"
src="https://github.com/user-attachments/assets/b632b6e0-05dd-4719-8a0d-b5f3879dae53"
/>



### 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)
2025-02-06 15:05:57 +01:00
Marco Antonio Ghiani
f534b5466f
[Streams 🌊] Improve typing for samples and simulation docs (#209991)
## 📓 Summary

This change introduce a new recursive record type to let the documents
applied used for sampling and simulation not fail on the excessive
strict keys check.

```tsx
// Any primitive value allowed for schema validation, excludes symbols and bigint
type Primitive + zod primitive 
// Recursive object  
interface RecursiveRecord  + zod recursiveRecord 
```
2025-02-06 14:46:31 +01:00
Giorgos Bamparopoulos
3e5f55dd02
Remove observability:logsExplorer:allowedDataViews advanced setting (#209120)
## 📓 Summary
Removes the `observability:logsExplorer:allowedDataViews` advanced
setting that was introduced by
https://github.com/elastic/kibana/pull/178602 as Logs Explorer is [no
longer available](https://github.com/elastic/kibana/pull/203685) in
Serverless and 9.0.

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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-06 14:28:00 +01:00
elastic-vault-github-plugin-prod[bot]
7ff24bc35f
[main] Sync bundled packages with Package Storage (#209724)
Automated by
https://buildkite.com/elastic/package-storage-infra-kibana-discover-release-branches/builds/2212

Co-authored-by: elasticmachine <elasticmachine@elastic.co>
2025-02-06 10:01:47 +00:00
Kevin Lacabane
cf01af250c
[streams] basic lifecycle management UI (#208461)
Implements an initial UI to manage the data retention of a stream.

The view displays informations about the lifecycle configuration/origin
and also allows one to update it to one of the available options.
Options depend on the type of stream and the deployment type.

These are the options that should be currently available (the api also
have guards):

|    | stateful | serverless |
| -------- | ------- | ------ |
| root stream  | dsl, ilm    | dsl |
| wired stream | inherit, dsl, ilm     | inherit, dsl |
| unwired stream*    | inherit, dsl    | inherit, dsl |

*unwired stream's retention cannot be updated if it's currently using
ILM

### Screenshots
![Screenshot 2025-02-03 at 18 50
01](https://github.com/user-attachments/assets/68bdd8c1-889c-4e10-8caf-2bb0b8ce5652)

![Screenshot 2025-02-04 at 14 20
35](https://github.com/user-attachments/assets/835f9b48-09e6-40b8-8a61-8af4b8ea0ee3)

![Screenshot 2025-02-04 at 12 33
58](https://github.com/user-attachments/assets/bae476d0-1907-44a1-b1d6-0805b6c567bc)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani01@gmail.com>
2025-02-06 10:56:42 +01:00
Sonia Sanz Vivas
a1619b3994
[Remote clusters] Clean values sent to ES API (#209538)
Fixes https://github.com/elastic/kibana/issues/156354
2025-02-06 10:44:17 +01:00
Gergő Ábrahám
ca390dadc0
[EDR Workflows] Fix allow_cloud_features advanced option description text (#209766)
## Summary

before
> It's meant only for telemetry extra-avoidant users users.

after
> It's meant only for telemetry extra-avoidant users.

<img width="565" alt="image"
src="https://github.com/user-attachments/assets/3c55e551-7a9a-485a-b8e3-bccc57bc0910"
/>
2025-02-06 10:10:00 +01:00
Julia Rechkunova
ad7a9a90b1
[Discover] Update colors for in-table search highlights (#209564)
- Closes https://github.com/elastic/kibana/issues/208944

## Summary

This PR updates colors for Borealis theme while keeping previous colors
for Amsterdam theme.

Borealis:
<img width="1103" alt="Screenshot 2025-02-05 at 10 26 24"
src="https://github.com/user-attachments/assets/94594b5e-bf94-4c03-8fcf-ae9e7470aea6"
/>
<img width="1100" alt="Screenshot 2025-02-05 at 10 26 55"
src="https://github.com/user-attachments/assets/9a075506-6984-44ba-8d19-be68f910ad8c"
/>

Amsterdam:
<img width="1028" alt="Screenshot 2025-02-05 at 10 18 37"
src="https://github.com/user-attachments/assets/b7a432ae-be1c-4eb3-beca-bb198f1b58df"
/>
<img width="1029" alt="Screenshot 2025-02-05 at 10 18 05"
src="https://github.com/user-attachments/assets/100a90f7-b680-4d91-8b83-9526d3266d21"
/>
2025-02-06 09:53:20 +01:00
Yngrid Coello
931c34e219
[Dataset quality] 🐞 Quality issues is no longer stuck + non-Aggregatable fixes (#209716)
Closes https://github.com/elastic/kibana/issues/209308.

### Notes
- Stuck loading state was caused by the changes introduced in
https://github.com/elastic/kibana/pull/206758.
- non-Aggregatable bugs were long running bugs, since this is a tricky
functionality to test I believe they were always there

### 🎥 Demo
In the following scenario, I went into the upgrade scenario, so I
created first a cluster in 7.27.x and then upgrade to latest 8.18.x. The
I performed a manual rollover for `logs-synth.3-default`. Hence what you
can see in the video is:
1. The loading state is not stuck anymore in dataset details page (e.g.
`logs-synth.2-default` )
2. The non-aggregatable is calculated properly for
`logs-synth.3-default`


https://github.com/user-attachments/assets/fa097445-7f0a-4dcb-adae-27688e99bf3c
2025-02-06 09:29:22 +01:00
Kibana Machine
dc9ecd1684
[api-docs] 2025-02-06 Daily api_docs build (#209949)
Generated by
https://buildkite.com/elastic/kibana-api-docs-daily/builds/975
2025-02-06 08:51:50 +01:00
Yngrid Coello
242e319a9c
[Dataset quality] UI improvements to failed flyout errors table (#208511)
Closes https://github.com/elastic/observability-design/issues/365.

## Summary
This PR aims to improve failure store errors table in the flyout. The
following acceptance criteria items were resolved

### Dataset quality page
- [x] Show upfront 200-208 characters in `message` column.
- [x] Provide link to Discover, filtered by error.type, in `type`
column.

 🎥 Demo 


https://github.com/user-attachments/assets/f318a54e-88d0-4801-af28-14e93a03e39d
2025-02-06 06:31:42 +01:00
Kibana Machine
70b860b9ec skip failing test suite (#178367) 2025-02-06 15:59:52 +11:00
Kibana Machine
4c3218290f skip failing test suite (#199583) 2025-02-06 15:59:32 +11:00
Kibana Machine
7eb7ab4739 skip failing test suite (#199563) 2025-02-06 15:59:14 +11:00
Jon
63d1f7474b
[ci] Fix storybooks (#209887) 2025-02-05 17:55:49 -06:00
Bailey Cash
02fc0a725d
[SLO]: Optional groupings for slo summary (#209910)
## Summary

Resolves #209159

Make groupings property in SLO summary optional to fix schema validation
issues with SLOs without groups.

## Release Notes

Fixed bug that caused issues with loading SLOs by status, SLI type, or
instance id.

## Testing

Create a SLO without an entry in the "group by" field. All SLOs should
still be able to be grouped despite this distinction.
2025-02-05 18:18:56 -05:00
Hannah Mudge
c35698bcf8
[Dashboard] Presentation panel refactor (#207275)
Closes https://github.com/elastic/kibana/issues/206686
Closes https://github.com/elastic/kibana/issues/197897
Part of https://github.com/elastic/kibana/issues/207852

## Summary

This PR is a major refactor of the `PresentationPanel` component,
including an overhaul of the hover action and panel title components.
Some notable highlights include:
- All styles in the `PresentationPanel` component were moved from SASS
to Emotion
- The over-complicated logic to combine hover actions when the panel
shrinks was removed in favour of CSS, driven by a [container
query](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_containment/Container_queries)
Removing the `updateCombineHoverActions` function (which was defined in
a React component and not memoized) also made a difference in
performance when dragging:
    
   | Before | After |
   |--------|--------|
|
![image](https://github.com/user-attachments/assets/e66898d6-a6fc-42c7-9e24-f116d3bd85a6)
|
![image](https://github.com/user-attachments/assets/1f1d75ba-2ebc-4def-9d2e-14dfd5e1a585)
|
      

- The over-complicated logic defined in
`usePresentationPanelTitleClickHandle`, which was meant to ignore the
`onClick` that would trigger after a panel was dragged, was converted to
2 lines of CSS

### Small usability improvements

This PR also includes a few small usability improvements, such as:

- Ensuring that only the **first** row of hover actions overlaps with
the Dashboard's sticky top navigation bar, and this only happens when
the dashboard has no controls. This results in much better behaviour in
most scenarios:
  
  | Before | After |
  |--------|--------|
| ![Jan-27-2025
16-14-26](https://github.com/user-attachments/assets/2bf5eaa0-06ab-4d87-897f-d217f189daf7)
| ![Jan-27-2025
16-13-41](https://github.com/user-attachments/assets/61b0f06a-1363-4bfc-8a2b-c57a3e736552)
|

- Adding a small delay for hiding the hover actions on mouse leave,
which makes it a lot easier to grab the drag handle:

  | Before | After |
  |--------|--------|
| ![Jan-27-2025
16-21-11](https://github.com/user-attachments/assets/65138e53-1856-44f0-913f-01383b8aa6c2)
| ![Jan-27-2025
16-20-17](https://github.com/user-attachments/assets/7c8ba4d8-8b77-4bc5-85af-a082cace1f96)
|

- Preventing the resize handle from overlapping Dashboard's stick top
navigation:

  | Before | After |
  |--------|--------|
| ![Jan-27-2025
16-24-31](https://github.com/user-attachments/assets/5363a302-5f6a-4483-9782-516023567d87)
| ![Jan-27-2025
16-25-04](https://github.com/user-attachments/assets/8614d025-b45b-4af2-81d6-c62a086ca427)
|


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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-02-05 15:18:04 -07:00
Ying Mao
7f28ae63e3
Fixes Failing test: Jest Integration Tests.x-pack/platform/plugins/shared/task_manager/server/integration_tests - capacity based claiming should claim tasks to full capacity (#201681)
Resolves https://github.com/elastic/kibana/issues/205949,
https://github.com/elastic/kibana/issues/191117

## Summary

Trying to fix flaky integration test by performing a bulk create for the
test tasks instead of creating one by one. After making this change, was
able to run the integration test ~100 times without failure.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-05 16:20:38 -05:00
Marius Iversen
6cab1dc6f8
[Rule Migration] Add telemetry events to translation graphs (#209352)
## Summary

This PR adds telemetry events to SIEM migration backend using the event
based telemetry already existing in security solutions.

Here is a list of events:

```typescript
export const SIEM_MIGRATIONS_MIGRATION_SUCCESS: EventTypeOpts<{
  model: string;
  migrationId: string;
  duration: number;
  completed: number;
  failed: number;
  total: number;
}

export const SIEM_MIGRATIONS_RULE_TRANSLATION_SUCCESS: EventTypeOpts<{
  model: string;
  migrationId: string;
  duration: number;
  translationResult: string;
  prebuiltMatch: boolean;
}

export const SIEM_MIGRATIONS_PREBUILT_RULES_MATCH: EventTypeOpts<{
  model: string;
  migrationId: string;
  preFilterRuleNames: string[];
  preFilterRuleCount: number;
  postFilterRuleName: string;
  postFilterRuleCount: number;
}

export const SIEM_MIGRATIONS_INTEGRATIONS_MATCH: EventTypeOpts<{
  model: string;
  migrationId: string;
  preFilterIntegrationNames: string[];
  preFilterIntegrationCount: number;
  postFilterIntegrationName: string;
  postFilterIntegrationCount: number;
}

export const SIEM_MIGRATIONS_MIGRATION_FAILURE: EventTypeOpts<{
  model: string;
  error: string;
  migrationId: string;
  duration: number;
  completed: number;
  failed: number;
  total: number;
}

export const SIEM_MIGRATIONS_RULE_TRANSLATION_FAILURE: EventTypeOpts<{
  model: string;
  error: string;
  migrationId: string;
}
```
2025-02-05 22:12:50 +01:00
Jatin Kathuria
54b4fac705
[ Security Solution ] Fix Refetch logic with new timeline batching (#205893)
## Summary

PR : https://github.com/elastic/kibana/pull/204034 fixed some issues
with timeline batching. It was not able to fix one of the issue with
`Refetch` logic which exists in `main` ( resulting in a flaky test ) and
causing some tests to fail in `8.16`, `8.17` and `8.x`.

## Issue Description

There are 2 issues with below video:

1. When user updates a status of an alert, the `Refetch` only happens on
the first `batch`. This behaviour is flaky currently. Even if the user
is on nth batch, table will fetch 0th batch and reset the user's page
back to 1.



https://github.com/user-attachments/assets/eaf88a82-0e9b-4743-8b2d-60fd327a2443
     


3. When user clicks `Refresh` manually, then also only first (0th)
`batch` is fetched, which should have rather fetched all the present
batches.




https://github.com/user-attachments/assets/8d578ce3-4f24-4e70-bc3a-ed6ba99167a0



### 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
2025-02-05 22:12:38 +01:00
Michael DeFazio
ab7aae4c49
Fixes UI bugs in semantic text UI and index mgmt mappings tab (#209638)
## Summary

A few minor UI clean up fixes on the index mappings tab for Stack
Management. Also touches the inference popover (shows on both search and
stack management views)

- Fixes layout shift when choosing semantic text as a field option
- Changs about panel to `subdued`
- Fixes responsive behavior for about panel
  - max-width on large breakpoint
- Inference popover styling updates 
- Decreases gap size in mapping column to reduce space between sections

_Responsive and About panel updates_
![CleanShot 2025-02-04 at 14 24
16@2x](https://github.com/user-attachments/assets/448bc537-6f98-4c34-96df-f553f089dca2)
![CleanShot 2025-02-04 at 14 14
15@2x](https://github.com/user-attachments/assets/0dd6851c-6299-47b6-9549-38f7ce822427)


_Inference popover styling cleanup_
![CleanShot 2025-02-04 at 11 19
50@2x](https://github.com/user-attachments/assets/fdfef447-6d35-419b-a276-55c1b442d749)


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

- [ ]

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Samiul Monir <samiul.monir@elastic.co>
2025-02-05 15:55:48 -05:00
Jan Monschke
dda538111e
[SecuritySolution][Alerts table] Fix issue with multiple ip addresses in strings (#209475)
## Summary

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

Multiple IPs are now displayed as individual links, even in the case
where multiple IPs are passed as a single string (e.g.
`127.0.0.1,127.0.0.2`). Clicking on an individual link will open the
flyout correctly as well.



https://github.com/user-attachments/assets/74b05cff-3843-4149-bf27-cd0af07aa558



### 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: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-05 21:40:17 +01:00