Commit graph

85820 commits

Author SHA1 Message Date
Marco Vettorello
7bea047831
[Lens] fix toEsql test use all-year UTC timezone (#216425)
## Summary

The test should verify if a timezone that falls under UTC offset can
correctly transform a formBased lens configuation to an ESQL query.
Unfortunately the choosen timezone (Europe/London) falls under UTC only
when not in DST.
I've selected one of the few countries that falls under UTC all year
round to have this test pass correctly independently on when it is
executed.
2025-03-31 11:05:34 +02:00
Colleen McGinnis
e60b91a076
[docs] Remove reliance on temporary redirects part 2 (#216362)
Related to https://github.com/elastic/docs-content/pull/914
Related to https://github.com/elastic/elasticsearch/pull/125663

Removes reliance on temporary redirects in the elasticsearch and
docs-content repos.
2025-03-31 07:43:40 +00:00
Rodney Norris
b3054a913e
[Search][Playground] support for editing search query (#216041)
## Summary

This PR updates the Query Mode in playground to allow the user to
customize the query themselves. When the query is customized the GUI for
selecting fields is disabled. Changing the index setting will reset the
query to the elastic generated search query.

### Screenshots
<img width="1547" alt="image"
src="https://github.com/user-attachments/assets/24d94417-4e10-46dd-abaf-49c7196e17c0"
/>
`{query}` placeholder is required even when customized
<img width="1547" alt="image"
src="https://github.com/user-attachments/assets/8522ba4b-5027-49a6-a85d-19857e76e43b"
/>
"Run" action is disabled when query is not valid JSON
<img width="1547" alt="image"
src="https://github.com/user-attachments/assets/c741d755-4659-4dce-857f-4dfbb73b3035"
/>
Errors are displayed in Query Output
<img width="1547" alt="image"
src="https://github.com/user-attachments/assets/34a797c9-6de6-443a-b58c-5ea8f8c5bf79"
/>

Query field selection is disabled when query is customized


![image](https://github.com/user-attachments/assets/0fcda6c5-a820-4470-b554-9fc1d2ed7950)


### Feature Flag

** This work is behind the `searchPlayground:searchModeEnabled` feature
flag **
Enable feature with Dev Tools
```
POST kbn:/internal/kibana/settings/searchPlayground:searchModeEnabled
{"value": true}
```
OR
Enable feature in `kibana.dev.yml`
```yaml
uiSettings.overrides:
  'searchPlayground:searchModeEnabled': true
```


### Checklist

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [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
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-29 14:49:37 +01:00
Kibana Machine
ab4273fc3b
[api-docs] 2025-03-29 Daily api_docs build (#216396)
Generated by
https://buildkite.com/elastic/kibana-api-docs-daily/builds/1026
2025-03-29 07:16:48 +01:00
Philippe Oberti
5b7d5ab65e
[AI4DSOC] Alert summary KPI charts (#215585)
## Summary

This PR adds the KPI charts section to the alert summary page. The 3
charts are similar to the ones in the alerts page, but there are some
subtle differences, which lead to one of them being a separate
component, while the other 2 I was able to reuse the existing components
and just add a property to handle the different logic.

Here are the differences:
- in the AI for SOC we do not (currently) have cell actions, so a
property was added to the charts to be able to hide the cell actions
entirely
- the title of the right chart as well as the fact that it does not have
a dropdown to select the field to group the alerts by meant that a new
component (still using existing child components) was created

![Screenshot 2025-03-26 at 3 02
33 PM](https://github.com/user-attachments/assets/337b3ab4-29c3-40cd-8710-3f5c04898dd7)

The charts react to changes to the KQL bar:


https://github.com/user-attachments/assets/ed0e8f14-ba66-46ae-94df-6c8064c7a648

### Notes

Compared to the mocks (link at the end of the PR description), it was
decided to not add the icons to the left of the next for the middle and
right chart of the KPI section. These might be added in the future, but
there is some complexity related to fetching them (especially for the
alert by host) and more thoughts need to be had to make sure we're
handling all the possible cases.

## How to test

This needs to be ran in Serverless:
- `yarn es serverless --projectType security`
- `yarn serverless-security --no-base-path`

You also need to enable the AI for SOC tier, by adding the following to
your `serverless.security.dev.yaml` file:
```
xpack.securitySolutionServerless.productTypes:
  [
    { product_line: 'ai_soc', product_tier: 'search_ai_lake' },
  ]
```

And this to generate data: `yarn test:generate:serverless-dev`

Use one of these Serverless users:
- `platform_engineer`
- `endpoint_operations_analyst`
- `endpoint_policy_manager`
- `admin`
- `system_indices_superuser`

### Notes

You'll need to either have some AI for SOC integrations installed, or
more easily you can:
- change the `alert_summary.tsx` line `38` from `if
(installedPackages.length === 0) {` to `if (installedPackages.length >
0) {` to force the wrapper component to render
- update `42` of the same `alert_summary.tsx` file from `return <Wrapper
packages={installedPackages} />;` to `return <Wrapper
packages={availablePackages} />;` to be able to see some packages

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

Mocks:
https://www.figma.com/design/DYs7j4GQdAhg7aWTLI4R69/AI4DSOC?node-id=3284-70999&m=dev
Ticket: https://github.com/elastic/security-team/issues/11958
2025-03-28 17:39:14 -05:00
Alex Szabo
3cab3547b1
Revert "[ci] Disable chrome forward testing until 2025-03-28 (#214947)" (#214950)
This reverts commit 1c6f8bed0b.

## Summary

Merge by 2025-03-28, or if
https://github.com/elastic/kibana/issues/213919 is done.

See for context: #214947
2025-03-28 22:14:33 +01:00
Devin W. Hurley
d869d472f0
[Security Solution] [Detections] Fix flakey EQL shard test (#215757)
## Summary

Ref: https://github.com/elastic/kibana/issues/209024

Flake caused by occasionally hitting max signals on the "good" shard and
never triggering the error from the runtime field on the "bad" shard. By
moving the bad runtime field to the `packetbeat` index and changing the
rule query in the test to an `and` we can ensure the rule queries both
good and bad shards.

### Checklist

- [x] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
2025-03-28 19:47:15 +01:00
Ying Mao
df728ab823
Fixes Failing test: X-Pack Alerting API Integration Tests - Alerting - group3.x-pack/test/alerting_api_integration/spaces_only/tests/alerting/group3/builtin_alert_types/es_query/rule·ts - Alerting builtin alertTypes es_query rule runs correctly: threshold on ungrouped hit count < > for esQuery search type (#215604)
Resolves https://github.com/elastic/kibana/issues/194701

## Summary

The rule conditions are testing that the doc count > -1 but we're
testing that the evaluated value is > 0. Because an evaluated value of 0
will also match the rule condition, occasionally this expect would fail.
Updated the test to match what is allowed by the rule condition.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-28 14:40:18 -04:00
Davis McPhee
0bb73eec2c
[Discover] Initial tabs implementation (disabled in main) (#214861)
## Summary

This PR restructures Discover's state management to support tabs as
outlined in #215398, including the Redux store and
`RuntimeStateManager`. It also adds the initial tabs implementation to
the UI to start building on, but they're disabled by default with a
hardcoded flag. Tabs can be enabled by setting `TABS_ENABLED = true` in
`discover_main_route`, but they don't need to be thoroughly tested in
this PR since most of the functionality is incomplete.

There's also a flaw in the state management approach with `currentId`
since depending on it can cause state to leak across tabs when switching
tabs during async operations (e.g. data fetching). This shouldn't be an
issue while tabs are disabled, and there will be a followup PR #215620
to address it.


https://github.com/user-attachments/assets/ebbb9fa7-a3bc-4e82-9b5c-0d29cd0575f0

Part of #215398.

### 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)
2025-03-28 15:38:53 -03:00
Lene Gadewoll
2cd777d969
Upgrade EUI to v101.0.1 (#215698)
`100.0.0`  `101.0.1`

[Questions? Please see our Kibana upgrade
FAQ.](https://github.com/elastic/eui/blob/main/wiki/eui-team-processes/upgrading-kibana.md#faq-for-kibana-teams)

## Package updates

### `@elastic/eui`
[`v101.0.1`](https://github.com/elastic/eui/releases/v101.0.1)

- Updated `EuiProvider` and `EuiThemeProvider` with a new
`highContrastMode` ([#8444](https://github.com/elastic/eui/pull/8444))
- This prop allows toggling a higher contrast visual style that
primarily affects borders and shadows
- On `EuiProvider`, if the `highContrastMode` prop is not passed, this
setting will inherit from the user's OS/system settings
- If the user is using a forced colors mode (e.g. Windows' high contrast
themes), this system setting will take precedence over any
`highContrastMode` or `colorMode` props passed
- Added `highContrastModeStyles` and `preventForcedColors` styling utils
([#8444](https://github.com/elastic/eui/pull/8444))
- Updated `EuiRangeTooltip` to be easier to see in dark mode
([#8444](https://github.com/elastic/eui/pull/8444))
- Updated some deprecated color token usages that have direct
substitutes ([#8444](https://github.com/elastic/eui/pull/8444))
  - `text` -> `textParagraph`
  - `title` -> `textHeading`
  - `subduedText` -> `textSubdued`
  - `disabledText` -> `textDisabled`
  - `accentText` -> `textAccent`
  - `dangerText` -> `textDanger`
  - `warningText` -> `textWarning`
- `useEuiShadow()` now accepts a second `options` argument
([#8234](https://github.com/elastic/eui/pull/8234))
- `useEuiShadowFlat()` now accepts an `options` object instead of only a
color ([#8234](https://github.com/elastic/eui/pull/8234))
- Updated `EuiPopover` and `EuiToolTip` to be easier to see in dark
mode. ([#8174](https://github.com/elastic/eui/pull/8174))

**Bug fixes**

- Fixed a visual bug where a transparent border would create visible
empty space (`LIGHT` mode only) for the components:
([#8427](https://github.com/elastic/eui/pull/8427))
  - `EuiPanel`
  - `EuiPopover`
  - `EuiToolTip`
  - `EuiToast`
  - `EuiTour`
  
  --- 
  
### `@elastic/eui-theme-common`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Removed type `EuiShadowCustomColor`
([#8444](https://github.com/elastic/eui/pull/8444))
- Added types:  ([#8444](https://github.com/elastic/eui/pull/8444))
  - `EuiShadowOptions`
  - `EuiThemeHighContrastModeProp`
  - `EuiThemeHighContrastMode`
- Updated shadow utils to accepts a second `options` argument and return
borders in high contrast mode:
([#8444](https://github.com/elastic/eui/pull/8444))
  - `euiShadow`
  - `euiShadowXSmall`
  - `euiShadowSmall`
  - `euiShadowMedium`
  - `euiShadowLarge`
  - `euiSlightShadowHover`
  - `euiShadowFlat`
  
  ---
  
### `@elastic/eui-theme-borealis`
[`v0.1.0`](https://github.com/elastic/eui/releases/v0.1.0)

- Added new component level tokens:
([#8444](https://github.com/elastic/eui/pull/8444))
  - `buttonGroupBackgroundDisabledSelected`
  - `overlayMaskBackground`
  - `overlayMaskBackgroundHighContrast`
  - `skeletonBackgroundSkeletonMiddleHighContrast`
  

## Additional changes

The latest `@elastic/eui` package introduces high contrast mode support.
This PR sets all usages of `EuiProvider` to use
`highContrastMode={false}` to introduce it in disabled state (this
reflects the current functionality in Kibana). This is because the UI
for the high contrast mode functionality (and style adjustments) need to
first be implemented on Kibana side (by shared-ux).

## QA

Adding high contrast mode in disabled state should result in no visual
changes in Kibana. Please ensure your product view remain unchanged.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-28 19:29:23 +01:00
Alexi Doak
6e5fe31e85
[ResponseOps][Task Manager] Task manager had an issue calculating capacity estimation. averageLoadPercentage: NaN (#216303)
Resolves https://github.com/elastic/kibana/issues/215045

## Summary

This PR removes this log as it's not needed and is causing alerts in
serverless.
2025-03-28 17:39:49 +01:00
Marta Bondyra
f699e4ec20
[Dashboards] Fix panel actions hidden behind top nav in maximize mode (#216290)
## Summary

Fixes https://github.com/elastic/kibana/issues/216289
2025-03-28 17:18:07 +01:00
Tim Sullivan
05a8703d48
[Solution Side Nav] Misc UI fixes (#216109)
Part of https://github.com/elastic/kibana-team/issues/1439
Pulled from https://github.com/elastic/kibana/pull/210893
https://github.com/elastic/kibana/pull/215969

## Summary

1. Allow item in the secondary panel to use the `renderItem` field
2. Fix handling of `defaultIsCollapsed` for items in the secondary panel
3. Allow secondary panel to contain a mix of ungrouped items as well as
sub-groups of items


![alksdjnfgklsdfhglskdhkds](https://github.com/user-attachments/assets/11d316d6-6c9a-4743-897f-93c40efa9013)

4. Fix the flagging of the "active" parent in the main nav panel, based
on the current URL


![jhgkdfgkjfhkhn](https://github.com/user-attachments/assets/b5f6efe3-e8f5-494b-bc12-abbd51acc12a)

### 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-03-28 09:12:12 -07:00
Colleen McGinnis
369a43b2c2
[docs] Remove reliance on temporary redirects (#216315)
Related to https://github.com/elastic/docs-content/pull/914

Removes reliance on temporary redirects in the docs-content repo.

@florent-leborgne can you help me with backport labels? I always get
mixed up across repos.
2025-03-28 10:54:32 -05:00
Julia Bardi
6914495033
[Fleet] disable unenroll action on agentless agents (#216299)
## Summary

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

Disable Unenroll agent action on agentless agents

<img width="1124" alt="image"
src="https://github.com/user-attachments/assets/6603bac5-b0b1-4a20-8b16-f121bd69e969"
/>
<img width="1126" alt="image"
src="https://github.com/user-attachments/assets/e41bca5b-f73d-44bc-b095-9970a25f6322"
/>
2025-03-28 16:51:02 +01:00
Michael Olorunnisola
e3db203470
[Security Solution][THI] - unskip tests (#213472)
## Summary

resolves https://github.com/elastic/kibana/issues/196851
resolves https://github.com/elastic/kibana/issues/195830
resolves https://github.com/elastic/kibana/issues/194510
2025-03-28 16:40:28 +01:00
Stratoula Kalafateli
b477afb783
[ES|QL] Distinguish the functions/fields vs the values on the query level (#213916)
## Summary

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

This PR is based on the change made here
https://github.com/elastic/elasticsearch/pull/122459

The main difference is that:

- Functions and fields should now be added as ?? (instead of ?)
- The payload to ES is the same regardless if you send a value or a
field/function


In order to accommodate this the following changes were made:

- Now the variable name in the control form displays the ? or ?? (it
didnt display them before)
<img width="428" alt="image"
src="https://github.com/user-attachments/assets/1381ba4a-591c-47f2-af93-30d54fe7a639"
/>

- The previous created charts with the old format are bwc (this means
that they should load correctly when you checkout in this PR (a helper
function has been created to ensure it)


![meow](https://github.com/user-attachments/assets/a1863b5b-e113-494a-9231-e16386876e91)


### Release notes
Now the fields / functions variables are being described with ?? in the
query. The values variables use ? as before.

### 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
- [ ] 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-03-28 16:34:37 +01:00
Joe Reuter
51932b6065
🌊 Streams: Add nudge to stack management data stream page to go to streams (#215126)
<img width="486" alt="Screenshot 2025-03-19 at 11 39 47"
src="https://github.com/user-attachments/assets/77f4fda2-89a5-4250-a944-699eb2bf8957"
/>

If streams is enabled and the data stream is not hidden, a promotional
component is shown in the flyout that tells people to go there.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 16:32:33 +01:00
Faisal Kanout
4bbfc85ebd
[OBX-UX-MGTM] Add stale alert insight (#215332)
## Summary

If fixes https://github.com/elastic/kibana/issues/213003 by adding a
stale alert insight to the alert details page

 ### The heuristics to show the stale alert callout are:
 1. The alert has been active for more than 5 days
<del> 2. The alert has no cases associated with it</d>
<del> 3. The rule is snoozed with no notifications</d>

### Callout stale alert - First Iteration Preview
<img width="1193" alt="Screenshot 2025-03-28 at 13 11 21"
src="https://github.com/user-attachments/assets/638e4926-483b-4728-8580-50ea8872a075"
/>






https://github.com/user-attachments/assets/55717eff-27e9-43a3-95c7-7d41b74f1ff8

---------
2025-03-28 16:26:19 +01:00
Marco Liberati
db98203d09
[Lens] Optimize async chunks (#211921)
## Summary

While documenting some Lens architecture I've noticed how chunks are
organized in Lens, so I've taken a quick spin to reduce the amount of
requests to load a dashboard panel and more in general the number of
async chunks produced by webpack.

This PR aims to do 2 things:
* optimize the number of chunks generated by webpack
* optimize the number of requests done to load a Lens embedable panel
* optimize any `await` flow to do **other things ™️ ** while in idle to
load

### Final results

#### Reduce the number of chunks

The final number of chunks got reduced from 24 to 15. The bundle size
has remained almost the same.

| Before  | After |
| ------------- | ------------- |
| <img width="1443" alt="Screenshot 2025-03-10 at 12 53 21"
src="https://github.com/user-attachments/assets/65030955-7b7c-493c-9559-fbb9ef9089d4"
/> | <img width="1101" alt="Screenshot 2025-03-10 at 12 51 53"
src="https://github.com/user-attachments/assets/99b9b78d-931a-40ed-bda6-820584c1337e"
/> |

There's still some improvement margin here, but the changes mainly
includes he followings:
* the embeddable is now bundled together with the `async_services`
bundle
* as both are required to render the panel in a dashboard, this change
should speed up a bit the dashboard use case vs the Lens editor one
* Expression implementations has been deferred into their separate
bundles
  *  this should reduce a bit the initial `plugin.js` bundle by few kb
* most of the times the bundled expressions are used together, so it
makes sense to bundle those 3/4 together rather than have 4 tiny bundles
to async load and prevent waterfall `async import` calls which led to
poor performance
* Defer a component in the `@kbn/unified-field-list` component
* this was making load some edit component within the `async_services`
bundle even in dashboard.
* because this is a component only required in Lens editor, this has
been deferred
* Async register actions as recommended by @nreese  

#### Reduce the number of requests

The final number of chunks requested to load a lens panel on a dashboard
went from 12 to 4.
The overall bundle size has remained almost the same, but the
distributions of weights have slightly changed.
Surprisingly there's 1 MB which is gone somewhere, but that doesn't seem
to have an actual impact on the overall loading experience yet.

| Before  | After |
| ------------- | ------------- |
| <img width="1445" alt="Screenshot 2025-03-10 at 12 58 08"
src="https://github.com/user-attachments/assets/faab091b-305d-43ad-8be2-2f3bb83913a3"
/> | <img width="1110" alt="Screenshot 2025-03-10 at 12 58 32"
src="https://github.com/user-attachments/assets/f88ac9f5-80a6-42d3-8e3b-3013df05cb8b"
/> |

#### Optimize any `await` call

Well, this is hard to test. So I have no direct proof at the moment. 🤷 

cc @thomasneirynck

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 16:17:23 +01:00
Achyut Jhunjhunwala
0f0ee3a0b8
[Dataset Quality] Fix brittle test which was failing in the midnight job (#216260)
This PR fixes a bug where the test would run at midnight and due to the
odd timing, the index which gets created is asserted for a different
date than expected.

With this fix, we don't check the complete index name now by replacing
the date assertion part with startWith and endsWith assertions.
2025-03-28 16:13:05 +01:00
Aleh Zasypkin
69bd83e69e
chore(deps): upgrade vega from 5.31.0 to 5.33.0 (#216284)
## Summary

Upgrade `vega` from `5.31.0` to `5.33.0`:
* https://github.com/vega/vega/releases/tag/v5.32.0
* https://github.com/vega/vega/releases/tag/v5.33.0
2025-03-28 16:07:14 +01:00
Marta Bondyra
a7142c0d7b
[Inspector] Migrate scss to emotion (#216195)
## Summary

Part of https://github.com/elastic/kibana/issues/207852 for inspector.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 16:01:35 +01:00
Marshall Main
0e63fce8aa
[Security Solution][Detection Engine] Remove CreateRuleOptions, pass options through security rule wrapper instead (#216039)
## Summary

Another small refactor follow up to
https://github.com/elastic/kibana/pull/212694. Overall, the goal here is
to increase consistency in how security rule executors receive common
parameters. `CreateRuleOptions` contained parameters that were passed in
to every security rule type and sometimes used in the `executor` -
bypassing the executor function's parameters. With this PR, params that
are used across multiple security rule type executors like `licensing`,
`experimentalFeatures`, `scheduleNotificationResponseActionsService`,
etc are all passed through the executor options from the shared security
rule type wrapper.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 10:52:44 -04:00
Cauê Marcondes
c6acecfc7d
[APM] Fix waterfall margin left position (#216229)
closes https://github.com/elastic/kibana/issues/179525

Before:
<img width="1348" alt="Screenshot 2025-03-27 at 16 50 34"
src="https://github.com/user-attachments/assets/4812c283-571b-48a6-be45-d352ff7e1e75"
/>

After:
<img width="1313" alt="Screenshot 2025-03-27 at 16 49 57"
src="https://github.com/user-attachments/assets/baa41183-6d97-4f46-98b4-012ef2b489f4"
/>
2025-03-28 15:24:36 +01:00
Georgiana-Andreea Onoleață
5a6c01ff82
[ResponseOps]consistent-type-imports linting rule for RO packages/plugins - PR3 (#212498)
- Enabled @typescript-eslint/consistent-type-imports eslint rule for
ResponseOps packages and plugins:
- this rule ensures that imports used only for type declarations are
consistently written using import type syntax
    
- fixed type imports in:
    - x-pack/platform/plugins/shared/event_log
    - x-pack/platform/plugins/shared/rule_registry
    - x-pack/platform/plugins/shared/task_manager
    - x-pack/solutions/observability/packages/kbn-alerts-grouping
    - src/platform/packages/shared/kbn-alerts-ui-shared
    - src/platform/packages/shared/kbn-alerting-types
    - src/platform/packages/shared/kbn-cases-components
    - src/platform/packages/shared/kbn-actions-types
    - src/platform/packages/shared/kbn-alerts-as-data-utils
    - src/platform/packages/shared/kbn-grouping
    - src/platform/packages/shared/kbn-rrule
    - src/platform/packages/shared/kbn-rule-data-utils
    - src/platform/packages/shared/kbn-triggers-actions-ui-types
    - x-pack/platform/packages/shared/kbn-alerting-comparators

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 08:56:46 -05:00
Kylie Meli
0ce7a481b2
[Fleet] adding a docs link to the transforms callout for integrations (#216233)
## Summary

Adding a docs link to the transforms callout on the add integration
screen. Link points to:
https://www.elastic.co/guide/en/elasticsearch/reference/current/transform-overview.html

## Screenshots
<img width="784" alt="Screenshot 2025-03-27 at 4 57 50 PM"
src="https://github.com/user-attachments/assets/bf9fa32c-5ca5-4d89-9296-4d05d742152e"
/>

Singular text with link:
<img width="715" alt="Screenshot 2025-03-27 at 4 57 56 PM"
src="https://github.com/user-attachments/assets/c0247b66-2f3f-4a20-a8a4-8ca61ce9fa88"
/>

Plural text with link:
<img width="723" alt="Screenshot 2025-03-27 at 4 58 44 PM"
src="https://github.com/user-attachments/assets/e2a81b82-7df1-4929-a73e-0ee7bd7b6f35"
/>

Href:
<img width="1178" alt="Screenshot 2025-03-27 at 4 58 11 PM"
src="https://github.com/user-attachments/assets/cb5988af-59d9-4be7-ab61-f4cc15d08528"
/>

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 09:42:53 -04:00
Mykola Harmash
c1ece02b9e
[Oblt Onboarding] Add white Apple logo for dark color scheme (#216275)
Closes https://github.com/elastic/kibana/issues/214088

This fixes the issue when Apple logo was not visible when Kibana uses
dark color scheme.

| Light | Dark |
| --- | --- |
| ![CleanShot 2025-03-28 at 11 48
15@2x](https://github.com/user-attachments/assets/92deab8c-bed6-4f39-b8c4-5f63c880101d)
| ![CleanShot 2025-03-28 at 11 48
01@2x](https://github.com/user-attachments/assets/92549fdc-a2fb-4453-8fa3-c234a4b0b1fd)
|
2025-03-28 14:41:11 +01:00
Joe Reuter
549aeb9a33
🌊 Streams: Normalize paddings (#216277)
Normalizes padding to align with design:

More padding above the title:
<img width="390" alt="Screenshot 2025-03-28 at 12 03 35"
src="https://github.com/user-attachments/assets/145d9f58-b65f-4774-b4a7-0af9bdc2ad8b"
/>

Unsure - should this apply to listing page as well?
<img width="422" alt="Screenshot 2025-03-28 at 12 05 45"
src="https://github.com/user-attachments/assets/c095f617-6e48-49c0-b8cf-18e6e0b954ff"
/>

Same paddings between all the panels:
<img width="1161" alt="Screenshot 2025-03-28 at 12 06 13"
src="https://github.com/user-attachments/assets/1447bb5f-cd34-4876-923a-fb796e41cca5"
/>

Same padding above and below sub tab group in management:
<img width="522" alt="Screenshot 2025-03-28 at 12 06 34"
src="https://github.com/user-attachments/assets/c0c94cad-82c6-4e59-b10b-d10c6cda6898"
/>
2025-03-28 14:39:22 +01:00
Umberto Pepato
f49688f227
[ResponseOps][MaintenanceWindows] Fix flaky rules list MW callout test (#216270)
## Summary

Attempts to fix the flakyness of #203179 by waiting for the mocked
request to complete instead of the text finder to timeout. Timing
analysis shows a reduction from `~4000ms` down to just `~70ms` of wait
time for the final assertion.

## References

Closes #203179
2025-03-28 14:11:37 +01:00
Elena Stoeva
f1c61e43b0
[Console] Fix autocomplete insertText (#215911)
Fixes https://github.com/elastic/kibana/issues/212851

## Summary

This PR fixes the autocomplete insert text, which was incorrectly always
adding a template due to the changes made in
https://github.com/elastic/kibana/pull/210187. This PR reverts most of
these changes and instead fixes
https://github.com/elastic/kibana/issues/208862 by fixing the value of
`context.addTemplate`. It also adds unit tests for the `getInsertText`
function.


Requests to test:

**Test 1:**

```
GET index/_search
{"query": {te}} 
```

should autocomplete to 


```GET index/_search
{
  "query": {
    "term": {
      "FIELD": {
        "value": "VALUE"
      }
    }
  }
}
```

Same for the request below:

```
GET index/_search
{
  "query": {
    te
}
```

**Test 2:**
In the following request, deleting `AGG_TYPE` and replacing it with
`terms` is correctly autocompleted:


```
GET /_search
{
  "aggs": {
    "NAME": {
      "AGG_TYPE": {}
    }
  }
}
```

autocomplete to:

```
GET /_search
{
  "aggs": {
    "NAME": {
      "terms": {}
    }
  }
}
```

**Test 3:**

Insert the following request
```
GET /_search
{
    "query": {
      "match_all": {}
    }
}
```
Put the cursor at the end of the `match_all` field (right before the
closing quote) and then delete a few of the last characters. Retype one
character in order to get the suggestions popup displayed. Then press
Enter to add a suggestion.
Verify that the suggestion is added with no extra quote in the
beginning.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 13:17:15 +01:00
Anton Dosov
0f1dd979cd
Fix classic nav breadcrumbs with href full page reload; fix home tutorials project breadcrumbs (#216176)
## Summary


1.

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

In classic nav when breadcrumb href points to another app there was a
full page reload. One example from
https://github.com/elastic/kibana/issues/214804 is navigation from APM
tutorial page (home app) to integrations page (fleet) was causing a page
reload. This was only an issue for classic nav.

2.

While testing, I noticed that APM tutorial page was missing breadcrumbs
in project nav. This is now fixed by setting project breadcrumbs


![Screenshot 2025-03-27 at 14 29
22](https://github.com/user-attachments/assets/c83b44da-c731-460c-995f-985f1e5b5e6d)
2025-03-28 13:02:57 +01:00
Julian Gernun
e16ba346e3
[Response Ops][Flaky Tests] Remove duplicated click creating connector (#216145)
## Summary

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

The test itself wasn't failing but the setup was. The test failing does
so because it's the first one in the test suite. We are trying to click
on the flyout save button twice one right after the other. What I think
is happening is that the first one manages to close the flyout before
the second click gets the chance to trigger.

Also the image in CI is this where we can see the flyout is closed
already but it's still trying to close it

![image](https://github.com/user-attachments/assets/c606f776-aab4-4884-94e2-a2c258a30546)
2025-03-28 12:43:25 +01:00
Maryam Saeidi
1d0b3c712c
Remove irrelevant alerts table tests (#216210)
Closes https://github.com/elastic/kibana/issues/115314

## Summary

These tests are not relevant anymore
([comment](https://github.com/elastic/kibana/issues/115314#issuecomment-2754788835))
2025-03-28 12:54:43 +02:00
Paulina Shakirova
9efaef79ea
[SharedUX] SCSS migration saved_objects_tagging plugin (#215410)
## Summary

This PR is a part of SCSS migration of SharedUX team code.
Here is a [meta](https://github.com/elastic/kibana-team/issues/1417)
issue for it.

Co-authored-by: Tim Sullivan <tsullivan@users.noreply.github.com>
2025-03-28 10:04:46 +01:00
Kibana Machine
abf3a9a1c4
[api-docs] 2025-03-28 Daily api_docs build (#216253)
Generated by
https://buildkite.com/elastic/kibana-api-docs-daily/builds/1025
2025-03-28 09:34:11 +02:00
Dario Gieselaar
d03727f93a
[Streams] Enable dependencies linting rule (#216177) 2025-03-28 08:32:58 +01:00
Abhishek Bhatia
ffb196f8e6
[Security Solution][Entity Analytics][Bug]Adding code to get spaceId dynamically (#216063)
## Summary

The Risk Summary in the Entity Flyout was displaying an incorrect risk
score due to the space name not being accounted for in the risk score
index query.

This update ensures that the namespace is properly considered while
querying the risk score, providing accurate results across different
spaces.

Screen recording : 



https://github.com/user-attachments/assets/91df526c-1c22-4d53-aa0c-d74abb54920a


Testing Steps : 
1. Navigate to Entity Risk Score page.
2. Add data in the `default` space
3. Check for Risk score in the Risk Summary for any of the entities in
the Entity Flyout.
4. The Risk score in the Entities table and the flyout should be same
5. Create a new space
6. Add data in the new space
7. Check for Risk score in the Risk Summary for any of the entities in
the Entity Flyout.
8. The Risk score in the Entities table and the flyout should be same



### 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] [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-03-28 12:29:27 +05:30
Philippe Oberti
27bc00997f
[AI4DSOC] Alert summary KQL bar (#215586)
## Summary

This PR adds the SiemSearchBar to the alert summary page. The search bar
is pretty basic: it hides the query menu and the filter buttons to the
left of the query input. Instead, the PR builds a new filter button.

That button lists all the sources available. Sources are basically
equivalent to integrations, or their corresponding rules. It is a
friendly UI name to abstract the concept or a rule.
In the AI for SOC effort, each integration is bundled with a single
rule. This means that deselecting a source from the Source filter button
is equivalent to adding a filter to the search bar to exclude all alerts
with the `kibana.alert.rule.name` property having the value of that
integration.

### Example:
 There are following 2 integrations installed:
```typescript
[
  {
    id: 'splunk',
    name: 'splunk',
    status: installationStatuses.Installed,
    title: 'Splunk',
    version: '',
  },
  {
    id: 'google_secops',
    name: 'google_secops',
    status: installationStatuses.Installed,
    title: 'Google SecOps',
    version: '',
  },
]
```

This means that - in theory - there are the following 2 rules installed
and running:
```typescript
[
  {
    related_integrations: [{ package: 'splunk' }],
    name: 'Splunk Rule',
  },
  {
    related_integrations: [{ package: 'google_secops' }],
    name: 'Google SecOps Rule',
  },
]
```

In this case, the `Sources` button would show 2 entries, as follow:
```typescript
[
  {
    checked: 'on',
    key: 'Splunk Rule',
    label: 'Splunk',
  },
  {
    checked: 'on',
    key: 'Google SecOps Rule',
    label: 'Splunk',
  },
]
```

By default, the `checked` property should be set to `on`. It would be
`off` if a filter for the corresponding `label` existed.


https://github.com/user-attachments/assets/059815d2-9181-4bf1-bd78-e0e5bfa7439d


https://github.com/user-attachments/assets/126606c7-b4e0-4d0b-82c1-b531c6490de3

## How to test

This needs to be ran in Serverless:
- `yarn es serverless --projectType security`
- `yarn serverless-security --no-base-path`

You also need to enable the AI for SOC tier, by adding the following to
your `serverless.security.dev.yaml` file:
```
xpack.securitySolutionServerless.productTypes:
  [
    { product_line: 'ai_soc', product_tier: 'search_ai_lake' },
  ]
```

And this to generate data: `yarn test:generate:serverless-dev`

Use one of these Serverless users:
- `platform_engineer`
- `endpoint_operations_analyst`
- `endpoint_policy_manager`
- `admin`
- `system_indices_superuser`

### Notes

You'll need to either have some AI for SOC integrations installed, or
more easily you can:
- change the `alert_summary.tsx` line `38` from `if
(installedPackages.length === 0) {` to `if (installedPackages.length >
0) {` to force the wrapper component to render
- update `42` of the same `alert_summary.tsx` file from `return <Wrapper
packages={installedPackages} />;` to `return <Wrapper
packages={availablePackages} />;` to be able to see some packages
- comment out line the if condition line `66` of `use_integrations.ts`
file to make sure that values are added even if there is no
`matchingRule`
- replace `const ruleName = changedOption.key;` with `const ruleName =
changedOption.label;` on line `78` of the
`integrations_filter_button.tsx` file

### Checklist

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [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

### Links 

Ticket https://github.com/elastic/security-team/issues/11956
Mocks
https://www.figma.com/design/DYs7j4GQdAhg7aWTLI4R69/AI4DSOC?node-id=3284-70999&m=dev

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-27 22:31:42 -05:00
elastic-renovate-prod[bot]
4f0aa2b3b3
Update docker.elastic.co/wolfi/chainguard-base-fips:latest Docker digest to 60d2da3 (main) (#216199)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| docker.elastic.co/wolfi/chainguard-base-fips | digest | `d70e923` ->
`60d2da3` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

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

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
2025-03-27 19:44:59 -07:00
Ersin Erdal
6373b0c65a
Update task state version after execution. (#215559)
This PR fixes the missing stateVersion update in the `partialUpdate`
method.


[update](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/task_manager/server/buffered_task_store.ts#L62)
method already uses the validated task that already has the stateVersion
field.

but the `partialUpdate` misses it.
2025-03-28 00:58:41 +01:00
Samiul Monir
ab07c23962
[Search] Make Reference Field in Semantic_text Optional (#215562)
## Summary

This PR focus on making the `reference field` optional when adding
`semantic_text` field from Index Mapping. Previously, `semantic_text`
field was dependent on a text field and `copy_to` functionality which is
not required anymore.


https://github.com/user-attachments/assets/f19d0c1b-ac34-4f8d-b75d-993dd8720739


Added a label `optional` in the field after the video recording.
<img width="1227" alt="Screenshot 2025-03-26 at 1 25 22 PM"
src="https://github.com/user-attachments/assets/a11ed104-df50-47f4-a13f-9cf7187b2ad1"
/>


### 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] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-27 17:10:41 -06:00
Bailey Cash
40e95f00f1
[SLO]: Add filtering to SLO Management table, improve UX (#216040)
## Summary

Resolves #214258 

- Updates search bar to utilize UnifiedSearchBar
- Adds ability to filter SLOs by tags (OR operator)
- Makes improvements to version display

![Screenshot 2025-03-26 at 2 55
01 PM](https://github.com/user-attachments/assets/cf8c19e4-7a9f-4f2e-bd5d-b820b8f9bf23)
![Screenshot 2025-03-26 at 2 54
20 PM](https://github.com/user-attachments/assets/46e968ff-352a-4f4e-b762-a96c727c08f4)

---------

Co-authored-by: kdelemme <kdelemme@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-28 00:36:16 +02:00
Ievgen Sorokopud
177b4d57e6
[Attack Discovery][Scheduling] Define a data schema of Attack Discovery alert (#12169) (#215184)
## Summary

Here we define a data schema of Attack Discovery alert generated via the
Alerting Framework.

The set of attack discovery specific fields based on existing attack
discoveries described here
https://github.com/elastic/kibana/blob/main/x-pack/platform/packages/shared/kbn-elastic-assistant-common/impl/schemas/attack_discovery/common_attributes.gen.ts

All attack discovery specific fields will be stored inside the
`kibana.alert.attack_discovery` path.

<details>
  <summary>Alert document example</summary>

```json
{
        "_index": ".internal.alerts-security.attack.discovery.alerts-default-000001",
        "_id": "01b83369-e147-42d7-8def-87c5454ec7be",
        "_score": 1,
        "_source": {
          "kibana.alert.attack_discovery.users": [
            {
              "id": "u_mGBROF_q5bmFCATbLXAcCwKa0k8JvONAwSruelyKA5E_0",
              "name": "elastic"
            }
          ],
          "kibana.alert.attack_discovery.title": "Coordinated multi-host attack",
          "kibana.alert.attack_discovery.details_markdown": """- The attack began with a successful authentication event on host {{ host.name 72b76e8e-9313-4405-8edc-c24eda59b781 }} by user {{ user.name d378d69d-9502-40a5-8d9a-d9b373980bdd }}. Shortly after, the process {{ process.name mimikatz.exe }} was executed from {{ process.executable C:\mimikatz.exe }}.
- On host {{ host.name bfb3fb5d-5a5f-4ac7-9d36-b081f2c4494e }}, a malware alert was triggered for the file {{ file.name fake_malware.exe }} located at {{ file.path C:/fake_malware.exe }}.
- On host {{ host.name 3b425cb3-7058-43f5-b2ad-de29f33eca20 }}, another malware alert was triggered for the process {{ process.name explorer.exe }}.
- Host {{ host.name 7ef6e3d7-7531-426f-96e1-8807d9e2fd12 }} exhibited suspicious behavior with the execution of {{ process.name explorer.exe }}.
- On host {{ host.name 0f7e4c9e-67f1-4edf-b55e-50900d1e59f5 }}, the process {{ process.name notepad.exe }} was executed, potentially indicating lateral movement.
- Host {{ host.name 54a71bb1-d213-478e-9da2-722218dcb2ed }} triggered a malware alert for {{ process.name notepad.exe }}.""",
          "kibana.alert.attack_discovery.entity_summary_markdown": "The insight involves hosts {{ host.name 72b76e8e-9313-4405-8edc-c24eda59b781 }}, {{ host.name 7ef6e3d7-7531-426f-96e1-8807d9e2fd12 }}, and user {{ user.name d378d69d-9502-40a5-8d9a-d9b373980bdd }}.",
          "kibana.alert.attack_discovery.summary_markdown": "An attack progression was observed starting with a successful authentication on {{ host.name 72b76e8e-9313-4405-8edc-c24eda59b781 }} by {{ user.name d378d69d-9502-40a5-8d9a-d9b373980bdd }}, followed by the execution of {{ process.name mimikatz.exe }}, malware activity, and potential lateral movement across multiple hosts including {{ host.name 7ef6e3d7-7531-426f-96e1-8807d9e2fd12 }} and {{ host.name 0f7e4c9e-67f1-4edf-b55e-50900d1e59f5 }}.",
          "kibana.alert.attack_discovery.mitre_attack_tactics": [
            "Initial Access",
            "Execution",
            "Persistence",
            "Lateral Movement",
            "Discovery"
          ],
          "kibana.alert.attack_discovery.alert_ids": [
            "9648d34f8b600a17b9fa8baedf425b7e190462ba3a8ef34b3f71d205e2b29a27",
            "c424c79e43387bb630f1facdb0939930b5b20aab5509c35e0e0f817d04575e0c",
            "e7b7c0ee70f003970f37bcab99646d6753abc185dd4d1219a8459e9ae74592ef",
            "d0bde4f1b0990d27b11dfd74e2af90e86700e735bc81eec8e91a9eed0534668e",
            "13a611195e49e91331aad08da7a2aa5556e890a1b96414f70b1b5f7cbfb275dc",
            "39176ec7b7ce34e2c244047769515243184dd7e8668d71c864439c2847061ed1"
          ],
          "kibana.alert.attack_discovery.replacements": {
            {
              "uuid": "d139f511-2e80-4554-a161-6dbd280fed08",
              "value": "0vswa2l7v8"
            },
            {
              "uuid": "99958549-db36-43eb-8379-bcc3d2ddd0cf",
              "value": "Host-n92pjmd9dv"
            },
            {
              "uuid": "e5c78e61-2252-4a53-87b9-221bb55e629a",
              "value": "rbx0fbssj4"
            },
            {
              "uuid": "192c0876-9616-4572-9ba2-1a8a86ddf4a9",
              "value": "Host-tiogh0c668"
            }
          },
          "kibana.alert.attack_discovery.api_config": {
            "connectorId": "gpt-4o",
            "actionTypeId": ".gen-ai"
          },
          "kibana.alert.attack_discovery.alerts_context_count": 100,
          "kibana.alert.rule.category": "Attack Discovery Schedule Rule",
          "kibana.alert.rule.consumer": "siem",
          "kibana.alert.rule.execution.uuid": "7c6f1e49-f2c8-447d-b0d3-47b705abfe94",
          "kibana.alert.rule.name": "Attack Discovery Schedule - 1",
          "kibana.alert.rule.parameters": {
            "alertsIndexPattern": ".alerts-security.alerts-default",
            "anonymizationFields": [
              {
                "id": "Hr2wXJUBOpH1ddTrm3JE",
                "timestamp": "2025-03-03T15:47:12.833Z",
                "field": "user.target.name",
                "allowed": true,
                "anonymized": true,
                "createdAt": "2025-03-03T15:47:12.833Z",
                "namespace": "default"
              }
            ],
            "apiConfig": {
              "connectorId": "gpt-4o",
              "actionTypeId": ".gen-ai"
            },
            "end": "now",
            "replacements": {},
            "size": 100,
            "start": "now-24h",
            "subAction": "invokeAI"
          },
          "kibana.alert.rule.producer": "assistant",
          "kibana.alert.rule.revision": 0,
          "kibana.alert.rule.rule_type_id": "assistant.attack_discovery_schedule",
          "kibana.alert.rule.tags": [
            "attack_discovery"
          ],
          "kibana.alert.rule.uuid": "465a296b-0231-493b-90b6-cc5444e7a9bf",
          "kibana.space_ids": [
            "default"
          ],
          "@timestamp": "2025-03-14T10:34:26.622Z",
          "event.action": "open",
          "event.kind": "signal",
          "kibana.alert.rule.execution.timestamp": "2025-03-14T10:34:26.622Z",
          "kibana.alert.action_group": "default",
          "kibana.alert.flapping": false,
          "kibana.alert.flapping_history": [
            true
          ],
          "kibana.alert.instance.id": "c0652e52-6feb-4b5c-95f5-483cad76608d",
          "kibana.alert.maintenance_window_ids": [],
          "kibana.alert.consecutive_matches": 1,
          "kibana.alert.pending_recovered_count": 0,
          "kibana.alert.status": "active",
          "kibana.alert.uuid": "01b83369-e147-42d7-8def-87c5454ec7be",
          "kibana.alert.severity_improving": false,
          "kibana.alert.workflow_status": "open",
          "kibana.alert.duration.us": 0,
          "kibana.alert.start": "2025-03-14T10:34:26.622Z",
          "kibana.alert.time_range": {
            "gte": "2025-03-14T10:34:26.622Z"
          },
          "kibana.version": "9.1.0",
          "tags": [
            "attack_discovery"
          ]
        }
      }
```

</details>

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-27 22:54:02 +01:00
Devon Thomson
62f2daf32e
[Dashboard] Fix explicitInput removal (#215580)
Temporarily adds a serializedStateBackup to Dashboard
2025-03-27 16:02:22 -04:00
Nick Partridge
2cbfe8641c
[Lens] Fix coloring/palette assignment on partition charts (#215426)
Fixes an issue where reordering the groups within a layer would incorrectly assign the color mapping to a group other than the first.
2025-03-27 14:29:01 -05:00
Marshall Main
f7ef9602a5
[Security Solution][Detection Engine] Remove unused types and functions (#216104)
## Summary

Remove dead code.
2025-03-27 15:26:35 -04:00
Elena Shostak
7a41906d88
[Authz] Mandatory Security Config (#215180)
## Summary

This PR makes `security` a required field for route registration. To
incorporate the new required filed, changes has been made:

1. **Test file updates**. A lot of the updates made in this PR were made
in tests.
2. **Versioned route security configuration**. For the versioned route
`security` config has been lifted up to the top-level definition:

    Before
    ```ts
    router.versioned
      .get({
        path: '/api/path',
        options: { ... },
        ...
      }, handler)
      .addVersion({
         version: 1,
         validate: false,
         security: {
          authz: {
            requiredPrivileges: ['privilege'],
          },
         },
      });
    ```
    
    After
    ```ts
    router.versioned
      .get({
        path: '/api/path',
        options: { ... },
         security: {
          authz: {
            requiredPrivileges: ['privilege'],
          },
         },
        ...
      }, handler)
      .addVersion({
         version: 1,
         validate: false,
      });
    ```

3. **Type adjustments for route wrappers**. Type changes has been made
in:
-
`x-pack/solutions/observability/plugins/infra/server/lib/adapters/framework/adapter_types.ts`
-
`x-pack/solutions/observability/plugins/metrics_data_access/server/lib/adapters/framework/adapter_types.ts`
-
`x-pack/solutions/observability/plugins/synthetics/server/routes/types.ts`
-
`x-pack/solutions/observability/plugins/uptime/server/legacy_uptime/routes/types.ts`

Security was made an optional field for the wrappers defined in those
files, since the default security is provided in the wrapper itself and
then passed down to the core router.

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


__Closes: https://github.com/elastic/kibana/issues/215331__

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-27 12:04:53 -07:00
Nicolas Chaulet
2aa857643d
[Fleet] Allow to bulk upgrade integrations (#215419) 2025-03-27 14:32:39 -04:00
Francesco Fagnani
b8a29d4096
[Synthetics] Add KQL Filter to TLS Alerting Rule (#215110)
This PR partially solves issue #214346 by adding the KQL Filter when
creating a TLS Alerting Rule.

Because of [the intermediate release
process](https://docs.google.com/document/d/1mU5jlIfCKyXdDPtEzAz1xTpFXFCWxqdO5ldYRVO_hgM/edit?tab=t.0#heading=h.2b1v1tr0ep8m)
the UI to add the new filters is not shown, another PR will enable it
after the next serverless release.

In details:

BE:
- Extended `tlsRuleParamsSchema` to accept `monitorIds`, `locations`,
`tags`, `monitorTypes`, `projects`, `kqlQuery`
- Extended `TLSRuleExecutor` functionality, added tests
- Added new `/internal/synthetics/inspect_tls_rule` endpoint 

FE:
- Added `AlertSearchBar`, `FieldFilters` and `TLSRuleViz` to the
`TLSRuleComponent`, making sure that only `http` and `tcp` monitors are
considered

Final result:


https://github.com/user-attachments/assets/613cdb73-2184-4b10-8dd5-549868b7672d

---------

Co-authored-by: Shahzad <shahzad31comp@gmail.com>
2025-03-27 18:57:51 +01:00