Commit graph

84288 commits

Author SHA1 Message Date
Michael Olorunnisola
7f32eb0225
[Performance][Security Solution][4/4] - General Performance changes (#212488)
## Summary
Part 4 (Final) of https://github.com/elastic/kibana/pull/212173

### Testing
For setup see testing section here:
https://github.com/elastic/kibana/pull/212173#issue-2870522020

For testing, feel free to add a `console.count('!! - Number of
re-renders:)` to
`x-pack/solutions/security/plugins/security_solution/public/app/home/index.tsx`.
The memoization changes
[here](https://github.com/elastic/kibana/pull/212488/files#diff-b0cdd6dc57dd06dba69d90894de8c88a7bb7c71c0e58753f324eb8ba664a0782R18)
to the plugin template wrapper, prevented 2 extra re-renders, but there
is still an underlying problem of how the `PageTemplateWrapper` is used,
as it causes unmounting and remounting of the security views when
navigating between pages.

The only other change was to rely on React's built in diffing on the
alerts page for the page level filters
2025-03-03 12:59:43 -05:00
Yuliia Naumenko
7afe813b35
[AI Assistant] Fixed DataClient find method to pass fields param to esClient.msearch (#212465)
Fixed `AIAssistantDataClient` to send values of the `fields` param if is
provided to `esClient.msearch` request.

To test run the API query
`http://localhost:5601/api/security_ai_assistant/current_user/conversations/_find?page=1&per_page=99&fields=id,users,apiConfig.connectorId`
and makes sure the only provided fields are returned in the result.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-03 17:43:16 +00:00
elastic-renovate-prod[bot]
3c43ab5084
Update dependency msw to ~2.7.2 (main) (#212692)
This PR contains the following updates:

| Package | Type | Update | Change | Pending |
|---|---|---|---|---|
| [msw](https://mswjs.io)
([source](https://redirect.github.com/mswjs/msw)) | devDependencies |
patch | [`~2.7.0` ->
`~2.7.2`](https://renovatebot.com/diffs/npm/msw/2.7.3/2.7.2) | `2.7.3` |

---

### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJUZWFtOkNsb3VkIFNlY3VyaXR5IiwiYmFja3BvcnQ6YWxsLW9wZW4iLCJyZWxlYXNlX25vdGU6c2tpcCJdfQ==-->

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
2025-03-03 12:06:29 -05:00
Angela Chuang
24d2cd3e4f
[SecuritySolution] Fix add to library action (#212659)
## Summary

Add to library actions are not working.
Issue description and steps to reproduce:
https://github.com/elastic/kibana/issues/212650


Update according to SaveModalComponent change:
https://github.com/elastic/kibana/pull/186642/files#diff-137261ad728b083fd39cb5d6b58d7afd3d4c4e24749b78609a9aa4b3c63e4170R290


https://github.com/user-attachments/assets/a0d0e81e-5a0f-4462-b110-370894c6bf36

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Michael Olorunnisola <michael.olorunnisola@elastic.co>
2025-03-03 16:33:10 +00:00
Nick Peihl
2a7e38b0fc
[Dashboard] Remove mSearch from content management (#210709)
## Summary

Removes the mSearch method from Dashboard content management.

The `mSearch` content management method was designed to be a temporary
implementation of search that allowed searching multiple saved object
types ([see more
[internal]](https://docs.google.com/document/d/1ssYmqSEUPrsuCR4iz8DohkEWekoYrm2yL4QR_fVxXLg/edit?tab=t.0#heading=h.6sj4n6bjcgp5)).
However, the mSearch implementation in the Dashboard Storage class lacks
extensibility as it requires a synchronous `toItemResult` function. As
we start migrating reference handling to the server, we will likely need
transforms that return Promises (ex. `savedObjectToItem`), such as
[retrieving tag saved objects from the SavedObjectTagging
client](https://github.com/elastic/kibana/issues/210619).

The Dashboard `mSearch` method was only used by the dashboard_picker and
this PR replaces its usage with the `search` method.

### Identify risks

There is a slight risk in serverless environments where a browser may
have already loaded the dashboard_picker module but lags behind the
server. In this case, the dashboard picker may fail to retrieve a list
of dashboards due to it calling the now non-existent `mSearch` method
provided by the server. In this case, the user simply needs to refresh
their browser to retrieve the latest UI modules.
2025-03-03 11:31:09 -05:00
Kibana Machine
3fc5022e13 skip failing test suite (#211517) 2025-03-04 02:54:04 +11:00
Kibana Machine
54fb155467 skip failing test suite (#211516) 2025-03-04 02:53:33 +11:00
Julia
6ce22f4a33
[ResponseOps][MW] Allow users to delete MWs (#211399)
Resolve: https://github.com/elastic/kibana/issues/198559
Resolve: https://github.com/elastic/kibana/issues/205269

Here I used the existing DELETE
/internal/alerting/rules/maintenance_window/{id} API to delete MWs from
the UI.
I added an action to the MW table so users can delete MWs. And show a
delete confirmation modal when users delete a MW from the UI.

### 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
- [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
2025-03-03 16:20:31 +01:00
Anton Dosov
63394e6bfd
Show chrome in redirect apps to improve navigation between apps (#210586)
## Summary


possibly fixes https://github.com/elastic/kibana/issues/210058

- make it `chromless:false, visibleIn: []` so that in-app redirects via
/r/ route feel smoother as chrome will stay visible
- `<EuiPageTemplate minHeight={0} offset={0}>` places loading/error in
the middle of the screen, remove scroll
- `abortController.signal` to cancel redirect in-case user has already
navigated away while waiting for shortUrl resolve (edge case)
- EuiDelayRender around "Redirecting..." spinner 
- Also do it for `forwardApp` 

### Demo (download and slowdown to see the difference): 


**before in between apps navigation** (chrome remounts for a moment,
adds junk)


https://github.com/user-attachments/assets/36d98ce9-8051-4f91-8dd9-7b406d613a73


**after in between apps navigation** (chome stays, feels smoother)


https://github.com/user-attachments/assets/4ad46954-aefe-4bde-ac4c-d598aac8b8fe


**before initial load** (chrome mounts only with discover)


https://github.com/user-attachments/assets/2618f25d-85fe-4474-8800-cbcb06db4b8e

**after initial load** (chrome mounts earlier, feels like apps loads
faster)


https://github.com/user-attachments/assets/1adc0af3-6c3c-4334-9157-fba2f008d8d5









- As a bonus, because chrome is rendered now, the error state is
friendlier, as it allows to navigate away:

![Screenshot 2025-02-11 at 15 24
29](https://github.com/user-attachments/assets/98fab62a-0ae0-4cc4-8464-c5123470ea81)
![Screenshot 2025-02-11 at 15 24
51](https://github.com/user-attachments/assets/02c455ff-9251-48f5-975c-3586c1fcbc0e)

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-03 16:08:25 +01:00
Alberto Blázquez
ed30926f0f
Remove page and links to Cloud Defend from Assets (#212753)
## Summary

Closes:
- https://github.com/elastic/security-team/issues/11933.

Continues work on:
- https://github.com/elastic/kibana/pull/200895.

### Acceptance criteria

- `9.0` / `Serverless`: 
- Removes links to Cloud Defend from Assets page in Security Solution.
- Disables navigation to `app/security/cloud_defend/` redirecting to the
default `app/security/get_started/`.
- `8.x` / `8.18`: 
- No changes (impact is minimal, only affects 4 customers who were told
to uninstall the plugin)

### Screenshot

<details><summary>Before - Assets page</summary>
<img width="1749" alt="Screenshot 2025-02-27 at 19 35 38"
src="https://github.com/user-attachments/assets/0bb076bc-984a-45be-bff8-63fe62ba6571"
/>
</details> 

<details><summary>Before - Cloud Defend page</summary>
<img width="1736" alt="Screenshot 2025-02-27 at 19 36 57"
src="https://github.com/user-attachments/assets/3f4f80b0-869d-48a9-90a3-70d03a37c7f6"
/>
</details>

<details><summary>After - Assets page</summary>
<img width="2006" alt="Screenshot 2025-02-28 at 12 12 11"
src="https://github.com/user-attachments/assets/3ef4bfb2-6b0b-4a77-83ea-cc7b9f54e37f"
/>
</details> 

<details><summary>After - Cloud Defend page redirects to
get_started/siem_migrations </summary>
<img width="2011" alt="Screenshot 2025-02-28 at 11 25 43"
src="https://github.com/user-attachments/assets/2ddafd46-7629-44fe-9234-049f09bc6b71"
/>
</details>

### How to test

Authenticate to Docker Registry with
```bash
docker login -u <YOUR_USER> -p <YOUR_PASSWORD> docker.elastic.co
```

Then run ES with

```bash
yarn es serverless --projectType security --kill
```

In a second terminal, run Kibana with
```bash
yarn serverless-security
```

### 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
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [x] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [x] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

### Identify risks

We should not show more links to Cloud Defend in other parts of the app
because the feature was deprecated and it might confuse end users. But
there's no risk of breaking the app because navigation is handled
correctly.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-03 14:52:04 +00:00
Kenneth Kreindler
d37fcb6fb6
[Security Solution] [GenAi] refactor security ai assistant tools to use tool helper method (#212865)
## Summary

Clean up some security ai assistant code.

- Replace the usage of `new DynamicStructuredTool()` with the `tool()`
helper method. This is the recommended approach today and has the
correct types to work with
[`Command`](https://langchain-ai.github.io/langgraphjs/concepts/low_level/#command).
- Extract code such as the default assistant graph state and
agentRunnableFactory to reduce cognitive overload.
- Update AssistantTool type definition

### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [X] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [X]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [X] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [X] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [X] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [X] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [X] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

### Identify risks

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

Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.

- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-03 14:35:22 +00:00
Dmitrii Shevchenko
c4a016eda3
[Security Solution] Reduce the _review rule upgrade endpoint response size (#211045)
**Resolves: https://github.com/elastic/kibana/issues/208361**
**Resolves: https://github.com/elastic/kibana/issues/210544**

## Summary

This PR introduces significant memory consumption improvements to the
prebuilt rule endpoints, ensuring users won't encounter OOM errors on
memory-limited Kibana instances.

Memory consumption testing results provided in
https://github.com/elastic/kibana/pull/211045#issuecomment-2689854328.

## Details

This PR implements a number of memory usage optimizations to the
prebuilt rule endpoints with the final goal reducing chances of getting
OOM errors. The changes are extensive and require thorough testing
before merging.

The changes are described by the following bullets

- The most significant change is the addition of pagination to the
`upgrade/_review` endpoint. This endpoint was known for causing OOM
errors due to its large and ever-growing response size. With pagination,
it now returns upgrade information for no more than 20-100 rules at a
time, significantly reducing its memory footprint.
- New backend methods, such as
`ruleObjectsClient.fetchInstalledRuleVersions`, have been introduced.
These methods return rule IDs with their corresponding installed
versions, allowing to build a map of outdated rules without loading all
available rules into memory. Previously, all installed rules, along with
their base and target versions, were fetched unconditionally before
filtering for updates.
- The `stats` data structure of the review endpoint has been deprecated
(it can be safely removed after one Serverless release cycle). Since the
endpoint now returns paginated results, building stats is no longer
feasible due to the limited rule set size fetched on the server side. As
the side effect it required removing related Cypress tests asserting
`Update All` disabled when rules can't be updated.
- All changes to the endpoints are backward-compatible. All previously
required returned structures still present in response. All newly added
structures are optional.
- Upgradeable rule tags are now returned from the prebuilt rule status
endpoint.
- The frontend logic has been updated to move sorting and filtering of
prebuilt rules from the client side to the server side.
- The `upgrade/_perform` endpoint has been rewritten to use lightweight
rule version information rather than full rules to determine upgradeable
rules. Additionally, upgrades are now performed in batches of up to 100
rules, further reducing memory usage.
- A dry run option has been added to the upgrade perform endpoint. This
is needed for the "Update all" rules scenario to determine if any rules
contain conflicts and display a confirmation modal to the user.
- An option to skip conflicting rules has been added to the upgrade
endpoint when called with the `ALL_RULES` mode.
- The `install/_review` endpoint's memory consumption has been optimized
by avoiding loading all rules into memory to determine available rules
for installation. Redundant fetching of all base versions has also been
removed, as they do not participate in the calculation.

---------

Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co>
2025-03-03 15:03:07 +01:00
Dominique Clarke
ab44603a1c
[Chore] update form data to ^4.0.2 (#212795)
## Summary

Updates form-data to ^4.0.2

Relates to https://github.com/elastic/kibana/pull/212183

form-data is used by data forge to load kibana assets. Ran data forge
with `--install-kibana-assets` to smoke test.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-03 08:48:43 -05:00
Dzmitry Lemechko
043d780b2a
[scout] enable ES authc debug logs on ES start (#212866)
## Summary

In #211055 we enabled Elasticsearch Authc debug logs, but we use the
different entry function to start servers on CI. This PR moves the call
into `runElasticsearch` so that logs are enabled for every Scout script
(start-server or run-tests)
2025-03-03 14:41:40 +01:00
Julia Bardi
3e2373fd08
[Fleet] sync integrations from follower index (#212371)
## Summary

Relates https://github.com/elastic/kibana/issues/206242

Implemented installing integrations from the doc in the follower index.
Can be tested locally by creating the ccr index locally or setting up 2
local clusters and set up ccr between them.

To test:
- Requires https://github.com/elastic/elasticsearch/pull/123493,
checkout and run es from source
```
yarn es source --license trial -E xpack.security.authc.api_key.enabled=true -E xpack.security.authc.token.enabled=true  --source-path=/Users/juliabardi/elasticsearch  -E path.data=/tmp/es-data -E xpack.ml.enabled=false
```
- Enable feature flag `xpack.fleet.enableExperimental:
['enableSyncIntegrationsOnRemote']`
- Create doc in ccr index, `hosts` should match local elasticsearch host
```
POST fleet-synced-integrations-ccr-remote1/_doc
{
  "id": "fleet-synced-integrations",
 "remote_es_hosts": [
            {
              "hosts": [
                "http://192.168.64.1:9200"
              ],
              "name": "remote1",
              "sync_integrations": true
            }
          ],
          "integrations": [
            {
              "package_version": "1.25.0",
              "package_name": "nginx",
              "updated_at": "2025-02-24T09:03:51.936Z"
            }
          ]
}
```
- Wait 1m until the task runs, verify that the integrations from the doc
are installed


### 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
2025-03-03 14:21:25 +01:00
Eyo O. Eyo
883bc1794b
adds thumbnail for elasticsearch logs integration (#212877)
## Summary

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

## Visuals
<img width="1313" alt="Screenshot 2025-03-03 at 12 11 16"
src="https://github.com/user-attachments/assets/99e627fe-6136-4a1e-8178-f8afd9bb9e27"
/>


<!--
### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ ] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

### Identify risks

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

Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.

- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...


-->
2025-03-03 12:53:05 +00:00
Gergő Ábrahám
e4ea87e92b
[EDR Workflows][Investigation] Telemetry config watcher fix (#210406)
## Summary

To update the `global_telemetry_config` flag in Defend package policies,
we subscribe to the Telemetry plugin's `isOptedIn$` observable during
Kibana's `start()` phase, and receive the initial value immediately.
This feature is used for 'migrating' existing package policies: after
stack upgrade, when Kibana starts up, this subscription mechanism makes
sure that existing policies are backfilled with the new field.

But not on cloud and serverless instances.

It turned out, that while this works on local instances, on cloud and
serverless instances, at the very moment we receive the value during
`start()`, some mechanisms are not yet green, and this resulted in
`security_exception: missing authentication credentials for REST
request` when trying to read Saved Objects.

As subscribing to`core.status.core$`, and waiting until `ServiceStatus`
for `elasticsearch` and `savedObjects` is `available` didn't solve the
issue, I simply added a retry mechanism, which, at least, protects
against other temporary issues as well.

Some additional logging is added as well.

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

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-03-03 12:31:00 +00:00
Cristina Amico
151fa26a5f
[Fleet] Add SSL options to fleet server hosts settings (#208091)
Fixes https://github.com/elastic/kibana/issues/207322

## Summary
Show SSL options for fleet server host in Fleet server settings section
and in add fleet server host flyout
- Registered fleet server host as a encrypted save object and the new
mappings added under `ssl` property, mirroring what's already existing
for `logstash` and `kafka` outputs
- The new options are displayed in the UI, both when adding a new fleet
server host from the flyout and when editing an existing one.
- The values are then added to the full agent policy
- The values for `ssh.key` and `ssh.es_key` can additionally be saved as
secrets but for now this option is not enabled until [fleet server
supports it](https://github.com/elastic/fleet-server/issues/4470) - I
used the feature flag `enableSSLSecrets`

<details>
  <summary>Screenshots</summary>
<img width="803" alt="Screenshot 2025-02-14 at 10 23 41"
src="https://github.com/user-attachments/assets/e1bf8c93-e8c0-4351-b86b-a7f8a8b0ec72"
/>
<img width="801" alt="Screenshot 2025-02-14 at 10 23 36"
src="https://github.com/user-attachments/assets/f96d2a5c-0285-41d1-953b-e662ccdcd514"
/>
<img width="780" alt="Screenshot 2025-02-04 at 14 34 52"
src="https://github.com/user-attachments/assets/e854fc28-d4aa-4b01-8634-e1f37f70419b"
/>
<img width="804" alt="Screenshot 2025-02-04 at 14 35 00"
src="https://github.com/user-attachments/assets/f507c34a-774e-4aa1-94b2-b912539d6143"
/>
<img width="791" alt="Screenshot 2025-02-04 at 09 25 28"
src="https://github.com/user-attachments/assets/82c1f761-7ee5-42d0-8b8f-23848cfc0391"
/>

Generated policy:
<img width="795" alt="Screenshot 2025-02-24 at 16 43 58"
src="https://github.com/user-attachments/assets/5ef4e34f-5850-4449-8a70-7de10750bb84"
/>
<img width="796" alt="Screenshot 2025-02-24 at 16 44 15"
src="https://github.com/user-attachments/assets/bdcf70fe-72f0-4df0-9a9e-40346407a1df"
/>




</details>

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

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-03 13:23:00 +01:00
Gerard Soldevila
3fcd11ce4d
Decouple some modules from 'webpack' (#212746)
## Summary

Remove extraneous dependencies:
* `canvas` was depending on 'webpack' purely for a type (dev-time).
* `@kbn/optimizer-webpack-helpers` (canvas depends on it 🤨) was
depending on 'webpack' solely for a function that could be defined in
`@kbn/optimizer` (devOnly).
2025-03-03 13:21:50 +01:00
Anton Dosov
f7fa6dd4b0
Upgrade to React@18 (#209337)
## Summary

This PR upgrades React packages to version 18, while keeping Kibana
running in Legacy mode (`ReactDOM.render`). This is the first phase of
the React@18 upgrade; the second phase will gradually migrate Kibana to
Concurrent mode (`createRoot`) (exact plan is tbd).

Upgrade is intended to be non-breaking and behave just like React@17,
but it still requires thorough testing from all teams that own UI to
discover any potential critical UI issues. The testing was done in
https://github.com/elastic/kibana/issues/203114.

Most of the breaking work was completed in previous PRs and this PR only
includes minor breaking jest tests tweaks / snapshots updates

### Backports:

- This won't be backported to 9.0 
- We will discuss if we should backport this to 8.x

### Risks 

Kibana’s UI functional tests coverage and significant manual testing
that was done by a lot of teams in
https://github.com/elastic/kibana/issues/203114 gives us a lot of
confidence.

However, since this was a large internal change for React they still
could be issues hidden in "remote" parts of UIs, think of blank screens,
error splash screens, unresponsive pages, new errors in the console,
unpredictable UI behavior (like laggy text inputs that skip letters when
typing fast).

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Konrad Szwarc <konrad.szwarc@elastic.co>
2025-03-03 13:11:28 +01:00
Faisal Kanout
9a6b4ecda3
[OBX-UX-MGTM][ALERTING] Add the reason message to the rules recovery context (#211411)
## Summary

It fixes #184803 by:

### Adding the reason message to recovery context variables in the
following rules:
- Inventory Threshold
- Metric threshold
- Custom threshold
- Log threshold

### Enabling recovery context and handling the recovery alert context
for APM (except Anomaly)
- Latency threshold
- Error count
- Failed transaction rate
2025-03-03 12:04:52 +00:00
Maria Iriarte
3b3bbb1a85
[Lens/SCSS] Delete and migrate reference_lines.scss file (#209982)
## 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: Marta Bondyra <4283304+mbondyra@users.noreply.github.com>
2025-03-03 11:57:36 +00:00
Maria Iriarte
8cb484cb8d
[Lens/SCSS] Replace expression legacy metric scss (#209546)
## 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: Marta Bondyra <4283304+mbondyra@users.noreply.github.com>
2025-03-03 11:34:35 +00:00
Robert Jaszczurek
d9c3072207
[ML] Trained Models: Telemetry for deployment creation (#211719)
Part of https://github.com/elastic/kibana/issues/200725
To track all relevant data:

> * User-facing deployment params, i.e. optimized for, VCPU level usage,
etc.
> * Resulting API params, e.g. number of allocations, etc.

This PR introduces
[EBT](https://docs.elastic.dev/telemetry/collection/event-based-telemetry)
event tracking, as ML is not currently using EBT events for data
collection, it includes the creation of `Telemetry Service`, accessible
via the `useMlKibana` hook.
I have already triggered some events for staging, which are visible
[here](https://telemetry-v2-staging.elastic.dev/s/ml/app/discover#/?_g=(filters:!(),refreshInterval:(pause:!t,value:60000),time:(from:now-4M,to:now))&_a=(columns:!(timestamp),dataSource:(dataViewId:'74c6b7f0-3037-423f-a531-c736c70813b0',type:dataView),filters:!(),interval:auto,query:(language:kuery,query:'event_type:%20%22Trained%20Models%20Deployment%20Created%22%20'),sort:!(!(timestamp,desc)),viewMode:documents)).
Additionaly, I've created a test
[dashboard](b61d06af-4b3d-4550-8e5e-da6464652371/page/p_rssl6vh8ld/edit)
in Looker Studio to visualize the collected data.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-03-03 12:25:22 +01:00
Stratoula Kalafateli
dab569b70a
[ES|QL] Introduces a new package for esql types (#212754)
## Summary

The esql types are around many packages and plugins creating problems
either with the bundle size or cyclic dependencies.

This PR is moving some of them on the esql-types package. I am going to
move more there in follow up PRs.

(I decided to rename it as it makes more sense to have a generic one for
esql rather one only for the variables)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Marco Vettorello <vettorello.marco@gmail.com>
2025-03-03 11:04:32 +00:00
Ido Cohen
58e25b564e
Deprecate Cloud Defend Telemetry 2025-03-03 12:28:37 +02:00
Stratoula Kalafateli
6efa46a1ab
[ES|QL] Add _score in the autocomplete (#212741)
## Summary

Adding _score in the metadata autocomplete suggestions

<img width="948" alt="image"
src="https://github.com/user-attachments/assets/58174ab8-72fc-4c84-81e6-6e6fba5e0cde"
/>
2025-03-03 09:18:08 +00:00
Stratoula Kalafateli
642e8f9622
[ES|QL] Removes unused property from unified search (#212772)
## Summary

Clean ups the unified search props. (Leftovers from when we had both
ES|QL and SQL in the dataview picker, now we have none of them)
2025-03-03 09:08:34 +00:00
Colleen McGinnis
80326c0489
[docs] Add the new docs CI checks (#212557)
Adds the new docs CI checks. This will enable a preview to build our new
Markdown-based docs.

@florent-leborgne please tag reviewers, add the appropriate label(s),
and take this out of draft when you're ready.

---------

Co-authored-by: florent-leborgne <florent.leborgne@elastic.co>
Co-authored-by: Brad White <Ikuni17@users.noreply.github.com>
2025-03-03 09:42:55 +01:00
Kibana Machine
c40590c296
[api-docs] 2025-03-03 Daily api_docs build (#212842)
Generated by
https://buildkite.com/elastic/kibana-api-docs-daily/builds/1000
2025-03-03 07:38:20 +00:00
Kibana Machine
ac0433fcdc
[ES|QL] Update function metadata (#212841)
This PR updates the function definitions and inline docs based on the
latest metadata from Elasticsearch.
2025-03-03 08:23:20 +01:00
Kibana Machine
d5644e0f7e
[api-docs] 2025-03-01 Daily api_docs build (#212831)
Generated by
https://buildkite.com/elastic/kibana-api-docs-daily/builds/998
2025-03-01 07:32:58 +00:00
Nathan Reese
8784e4d68d
[controls] add example for programmatically interacting with controls (#212665)
Update search control example with buttons to programmatically interact
with controls

<img width="800" alt="Screenshot 2025-02-27 at 8 41 05 AM"
src="https://github.com/user-attachments/assets/e936cdeb-ce51-4fca-a8bc-ec5d983e3155"
/>

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-28 17:16:07 -07:00
Yuliia Naumenko
e5f40e0a78
[Serverless] Enabling .inference connector and temporary removing preconfigured connector for Elastic LLM (#212804)
…

## Summary

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


### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ ] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

### Identify risks

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

Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.

- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...
2025-02-28 14:09:55 -08:00
Philippe Oberti
eabf95d6dc
[Security Solution][Notes] change upper limit for max unassociated notes advanced setting to be 10k instead of 1k (#212786)
## Summary

This previous [PR](https://github.com/elastic/kibana/pull/194947) made
the maximum number of unassociated notes an advanced settings so that
user can change the value within a certain limit. The intent was to
allow that value to be between 1 and 10,000 (see acceptance criteria of
the [original ticket](https://github.com/elastic/kibana/issues/193097))
but we missed one 0 and the maximum value allowed got set to 1000.

This PR fixes that.

#### Before

![Screenshot 2025-02-28 at 9 18
14 AM](https://github.com/user-attachments/assets/cf1d473c-5bd5-4759-a834-60888b0c8f78)

#### After

![Screenshot 2025-02-28 at 9 18
47 AM](https://github.com/user-attachments/assets/129ba898-bbad-420a-b615-b0a456640af4)
2025-02-28 15:21:37 -06:00
Samiul Monir
ad52467e3d
[Search] Refactor Search Inference Endpoint (#210943)
## Summary

This PR includes:
- Delete unused code
- Remove duplicate type definition and use the types defined in
`elastic` node module
- Refactor the code as needed for the type definition.

Tested in Serverless QA environment:


https://github.com/user-attachments/assets/43777b09-70c6-48ec-8ba2-988a3ab7e029

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

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-02-28 16:14:35 -05:00
seanrathier
42e094189c
[Cloud Security] Fix installing agent-based CSP integrations not displaying Add Agent flyout (#212702) 2025-02-28 15:55:09 -05:00
Patryk Kopyciński
b5caf904e7
[Security Assistant] Fix initialization of Knowledge Base on undersized clusters (#212167)
## Summary

Show error to the user when trying to setup Knowledge base on undersized
cluster

<img width="1847" alt="Zrzut ekranu 2025-02-26 o 19 03 43"
src="https://github.com/user-attachments/assets/a42d8560-aebb-410e-a364-7a27074f62fc"
/>

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Garrett Spong <spong@users.noreply.github.com>
Co-authored-by: Garrett Spong <garrett.spong@elastic.co>
2025-02-28 20:42:04 +00:00
Kibana Machine
d1031aa429 skip failing test suite (#211515) 2025-03-01 06:41:35 +11:00
Paul Tavares
7e79844925
[Security Solution][Endpoint] Add validations to Update and Delete artifact APIs in support of spaces (#212308)
## Summary

Adds additional validations to Artifact APIs _(via `lists` plugin
server-side extension points)_ for the following conditions:

- If user has the global artifact management privilege, then they are
able to update/delete the artifact with no restriction (same as today)
- If user does NOT have the new global artifact management privilege,
then the update/delete action should fail:
    - If it's a global artifact
- If it's a per policy artifact but it was created from a different
space than the active space the API is being called from


> [!NOTE]
> Functionality is currently behind the following feature flag:
`endpointManagementSpaceAwarenessEnabled`



### 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
2025-02-28 14:35:26 -05:00
Alberto Blázquez
0a562628b6
Enable Asset Inventory page via Kibana Advanced Settings (#211884)
## Summary

Closes https://github.com/elastic/security-team/issues/11683.

Adds an advanced setting to enable/disable the Asset Inventory page.
Replaces the old `assetInventoryUXEnabled` feature flag. The placement
of the setting is right below "Enable graph visualization", within the
Security Solution group.

### Screenshots

<details><summary>Setting off</summary>
<img width="943" alt="Screenshot 2025-02-21 at 09 38 43"
src="https://github.com/user-attachments/assets/c3b561cd-7dfa-4218-9004-cc89c5768551"
/>
</details>

<details><summary>Setting on</summary>
<img width="735" alt="Screenshot 2025-02-21 at 09 38 55"
src="https://github.com/user-attachments/assets/7a9ebf17-9339-49f2-820e-e26087f1c17c"
/>
</details>

<details><summary>Overriden setting - activated via
kibana.dev.yml</summary>
<img width="943" alt="Screenshot 2025-02-21 at 09 38 14"
src="https://github.com/user-attachments/assets/6ebb1e73-cffb-4bfd-ab21-631955574ce1"
/>
</details>

### How to test

Follow the instructions provided in the *README.md* file committed in
this PR.

### Definition of Done

- **Advanced Settings Integration**
- [x] Add a new setting under **Kibana Advanced Settings** for enabling
the Asset Inventory feature:
     - **Setting Name**: `Enable Asset Inventory`
     - **Setting Key**: `securitySolution:enableAssetInventory`
- **Description**: "Enable the Asset Inventory feature to view and
manage assets in the Security Solution plugin."
     - **Type**: Toggle (On/Off).
     - **Default Value**: Off.
- [x] Ensure the setting reflects the current status of the Asset
Inventory feature (On/Off).
- [x] Group the setting logically under the **Security Solution** in the
Kibana Advanced Settings page.
- [x] Ensure the toggle is discoverable and adheres to Kibana’s design
guidelines.

- **Implementation**
- [ ] ~~Update the `Asset Inventory` initialization logic to check the
new Kibana setting (`securitySolution:enableAssetInventory`) instead of
relying on the `assetInventoryUXEnabled` feature flag in
`kibana.dev.yml`.~~ For now we don't need to worry about initialization
- [ ] ~~Provide backward compatibility by allowing the `kibana.dev.yml`
flag (`xpack.securitySolution.assetInventoryUXEnabled`) to override the
setting in development environments.~~
- [x] The toggle should dynamically enable or disable the Asset
Inventory feature without requiring a Kibana restart.

- **Testing**
   - [x] Add unit tests to verify:
     - The toggle updates the setting value correctly.
- The Asset Inventory feature respects the toggle status
(enabled/disabled).
- [x] Add functional tests to validate the toggle’s behavior in the
Advanced Settings page.

- **Documentation**
- [x] Update the documentation to explain how to enable/disable the
Asset Inventory feature using Kibana Advanced Settings.
- [ ] ~~Provide details about the fallback behavior when using the
`kibana.dev.yml` flag.~~

### Checklist

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [x] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [x] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [x] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [x] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

### Identify risks

Feature will get exposed to end users if combination of setting and
feature flag is not set up correctly.
2025-02-28 09:46:53 -08:00
Konrad Szwarc
2700a2a951
[EDR Workflows] OpenApi Missing Content - Response Actions (#212510)
## For reviewers:
Only `*.schema.yml` files were edited (excluding
`*.bundled.schema.yml`). Rest of the changes comes from auto generation
and can be ignored.

## Description

Part of DW team effort - elastic/security-team#11804

This PR aligns the property/schema descriptions and examples in
AsciiDocs with OpenAPI schemas. The primary goal of this PR was not to
extend or enhance the documentation but to migrate from one system to
another.

Ascii docs -
https://www.elastic.co/guide/en/security/8.17/management-api-overview.html
OpenApi generated docs -
https://www.elastic.co/docs/api/doc/kibana/operation/operation-endpointgetactionslist

Changes:

Copied missing property descriptions from AsciiDoc to OpenApi properties
Copied existing AsciiDoc examples for both requests and responses
Fixed falsy query object in some GET requests - in OpenApi it was
defined as an object, not as path query params.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Paul Tavares <56442535+paul-tavares@users.noreply.github.com>
Co-authored-by: natasha-moore-elastic <137783811+natasha-moore-elastic@users.noreply.github.com>
2025-02-28 16:44:00 +00:00
Bailey Cash
5c0db3ed0d
[Obs-UX-Mgmt] Create navigation test plan (#212146) 2025-02-28 10:37:37 -05:00
Nick Peihl
08c4338a25
[Dashboards] Provide a method for fetching dashboards on the Dashboard server plugin contract (#209678)
Fixes #209695

## Summary

Adds a method from content management for exposing a server-side
Dashboard CRUD client.

Consumers who want to search, retrieve, or modify Dashboards from a
server plugin find themselves using the Saved Object client. This means
they need to handle JSON parse/stringify and reference handling
themselves. We could expose a CRUD functionality from content management
on the Dashboard server plugin contract to avoid re-creating all of this
boilerplate handling.

Commit c53f47d72a shows a crude
demonstration of how a plugin can use the methods available on the
Dashboard server plugin with a request to retrieve a list of dashboards.
You can test this in the Dev Tools:

```
GET kbn:/api/search_dashboards?spaces=*
```

This will use the Search method from content management to return a list
of dashboards across all spaces.

To allow the Search method to return all fields in the Dashboard, I
needed to remove the default fields. I updated all current uses of the
search method to specify the necessary fields. See
618e025210.


### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)
- [x]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [x] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [x] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [x] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [x] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

### Identify risks

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

Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.

- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...
2025-02-28 10:05:04 -05:00
Ilya Nikokoshev
ab46ddeef2
[Automatic Import] Fixes the CSV header bug (#212513)
Fixes https://github.com/elastic/kibana/issues/211911

The CSV processing is now a three-stage process: 

1. Parse the samples with the temporary column names of the form
`column1`.
2. Test parsing with the actual pipeline that parses into
`package.dataStream.columnName`.
3. Convert the samples into JSON form `{"columnName": "value", ...}` for
further processing.

Now the pipeline works as expected:

```yaml
  - csv:
      tag: parse_csv
      field: message
      target_fields:
        - ai_202502211453.logs._timestamp
        - ai_202502211453.logs.message
      description: Parse CSV input
  - drop:
      ignore_failure: true
      if: >-
        ctx.ai_202502211453?.logs?._timestamp == '@timestamp' &&
        ctx.ai_202502211453?.logs?.message == 'message'
      tag: remove_csv_header
      description: Remove the CSV header line by comparing the values
```

There are unit tests tests for the CSV functionality that include a mock
CSV processing pipeline.
2025-02-28 14:31:56 +00:00
Janki Salvi
83f787ac24
[ResponseOps][Rules] Do not show connector not registered in action connectors modal (#212660)
## Summary

Resolves https://github.com/elastic/kibana/issues/212584
Resolves https://github.com/elastic/kibana/issues/207185

<img width="1917" alt="image"
src="https://github.com/user-attachments/assets/0b50f829-60a2-435e-9b76-74231d0bb54c"
/>

### Checklist

Check the PR satisfies following conditions. 

- [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-28 13:56:35 +00:00
Giorgos Bamparopoulos
6829f07fdb
[Observability Onboarding] Add instructions for testing to the README file (#212752)
## Summary
Add instructions for testing to the README file
2025-02-28 13:54:04 +00:00
Kylie Meli
0da5a87207
[Automatic Import] bug fixes around openapi spec parsing for CEL generation (#212145)
## Summary

This PR fixes a couple of things with regards to the parsing of the
OpenAPI spec for use in CEL generation:
1) fixes and greatly simplifies the parsing of the OpenAPI spec so that
we collect all the $ref tags in the response object
2) only collects the top level schemas from the response object (since
that's all we really need for the CEL program)
3) fixes it so that users cannot select 'Save configuration' if there is
a generation error
4) better error messaging if/when a spec parsing error occurs

Note re fix # 3, the 'Save configuration' button will still initially be
available upon an error occurring. Then when if the user tries to click
save after an error, it will then disable the save button and show the
message indicating they need a successful generation to save. This is
consistent with the UX philosophy in the rest of the flyout that all
buttons are enabled by default, and if the user does something 'wrong',
we then provide guidance for how to proceed.

Relates: https://github.com/elastic/kibana/issues/210271

## Screenshots

<details>
  <summary>parsing fix</summary>
<img width="450" alt="Screenshot 2025-02-21 at 2 15 34 PM"
src="https://github.com/user-attachments/assets/80fe8e56-ffe3-4d5c-b6ac-5a57e025b70b"
/>

</details>

<details>
  <summary>save disabled fix</summary>
<img width="450" alt="Screenshot 2025-02-21 at 2 13 45 PM"
src="https://github.com/user-attachments/assets/5220bad7-70b1-4ade-83f7-ce1f97d115d1"
/>

<img width="450" alt="Screenshot 2025-02-21 at 2 13 55 PM"
src="https://github.com/user-attachments/assets/427bb52c-6fa9-457f-ab28-f490be981094"
/>

</details>
2025-02-28 08:06:56 -05:00
Viduni Wickramarachchi
af6968bcb7
[Obs AI Assistant] Update delete confirmation modal (#212695)
Closes https://github.com/elastic/kibana/issues/210064

## Summary

Updates the delete confirmation modal based on the new designs

### Screen recording


https://github.com/user-attachments/assets/ba2a02ea-6751-497c-929f-2b38426deaf3

### 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] 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-28 07:56:57 -05:00
Viduni Wickramarachchi
57586077eb
[Obs AI Assistant] Show loader to fix the flicker in KB settings tab (#212678)
Closes https://github.com/elastic/kibana/issues/208431

## Summary

With the updates in https://github.com/elastic/kibana/issues/203309, the
knowledge base settings tab flickers between the welcome message and the
installed state.. on reload, it first shows the "Install knowledge base
button" and then quickly switches to the ready component based on the KB
status.

This PR implements a loader until we receive the KB status, so that we
don't flicker between 2 components.

Before:


https://github.com/user-attachments/assets/5478c0fc-648e-4f15-af7f-9fc95e423553

After:


https://github.com/user-attachments/assets/7d5bc350-02fa-4a12-b7ee-1cd36ee93f0f


### 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)
2025-02-28 07:56:38 -05:00