Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

commit App.test.tsx changes #20

Closed
wants to merge 10,000 commits into from
Closed

Conversation

mbondyra
Copy link

Summary

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

Checklist

Delete any items that are not applicable to this PR.

For maintainers

amirbenun and others added 30 commits September 3, 2024 08:53
## Summary

The agentless-api doesn't expect `StackVersion` on serverless
environment but only on ESS.
This was revealed during an e2e test and fixed in the agentless-api.
Closes elastic#177547 

## Summary

Improve the UI for error messages when working with Discover and the
ES|QL editor.
Desired outcome: users correctly determine the error is with the query
not the application itself

Changes included:
- Apply different `EuiEmptyPrompt` props to arrive at something less
red/heavy
- Provide a contextually-relevant link to the ES|QL reference docs
- Changed the popover in the editor footer to be more code-editor like
(compact)
- With the overall amount of whitespace, add subdued background color
the unified field list
- Use a plain text treatment in the field list empty state instead of a
yellow, warning callout

### Before and after

_New empty prompt design (changes EUI props)_
_Change field list empty state from yellow callout_
_Add background color to field list_

**ES|QL mode**
![CleanShot 2024-08-27 at 10 48
07@2x](https://github.com/user-attachments/assets/44ad591e-da8f-4ec4-a3b3-68a6bd409978)

**Classic mode**
![CleanShot 2024-08-26 at 15 04
58@2x](https://github.com/user-attachments/assets/c7f8d276-035a-4057-b807-8c5c9f3de567)

_Apply code-editor styles to popover in info bar/footer (more compact;
remove header and arrow)_

![CleanShot 2024-08-27 at 10 46
10@2x](https://github.com/user-attachments/assets/ebb72524-c2ef-4e44-8fed-9a20dfc4214b)


### Checklist

Delete any items that are not applicable to this PR.

- [ ] 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/packages/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
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] 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 renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

---------

Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
Replacing instances of empty object creation with Object.create(null) to
remove any risk of prototype pollution.
Related to elastic#191518
…lastic#191929)

## Summary

Update `action/state` API that reports if encryption is enabled to
prevent tampering. The API response is used to show a banner to the user
on the response console (and on isolate/release flyouts) to let the user
know if encryption is enabled.

refs elastic/pull/154060

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

### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
…stic#191908)

Closes elastic#191579

### Summary

When working on finding the root cause of the bug, another bug related
was discovered on the host detected by APM tooltip, it was introduced by
this [PR](elastic#191104) when we check
for `metadataLoading` to finish, as we don’t do it for the asset details
page the loading spinner wasn’t shown there when refreshing the page,
but the tooltip shows because is still waiting for the metadata request
to finish in order to retrieve the integration.
To fix this, we don't apply loading spinner to the asset name, but we do
it for the tooltip

BEFORE


https://github.com/user-attachments/assets/3a946e84-1256-440c-bb65-56df30d8d3a5

AFTER


https://github.com/user-attachments/assets/689a6583-c66d-4e96-8605-9cce6c9aff24
Relates to elastic#176667 

## Summary

This PR adds the `MetricsExplorerLocator` and fixes some bugs that were
found regarding how locators were getting created and propagated.

## Testing

Alerts were created with group_by and no grouping to trigger for some
CPU usage. Going to the alert page and clicking the app view icon should
take you to the asset details page (if grouped) or to the metrics
explorer page (if no group) via the locators.

### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Carlos Crespo <crespocarlos@users.noreply.github.com>
Co-authored-by: Bena Kansara <69037875+benakansara@users.noreply.github.com>
)

## 📓 Summary

Given a change in the HTML structure of the SuperDatePicker component
from EUI, the `selectAbsoluteTimeRange` was no longer capable of typing
the passed date.

Once the PR to update EUI was merged, it didn't go through the APM
Cypress suite since those files where not touched, causing the false
positive in the CI step.

This change directly accesses the input field without relying on sibling
elements.

Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co>
…astic#191241)

Resolves elastic#191917

## Summary

Splits up the Agent config generated during auto-detect based onboarding
into multiple files.

This makes it easier for users to make changes following the initial
onboarding.

The backup feature has also been updated to include files inside
`inputs.d` directory.

## Example

Before this change the auto-detect script would write all settings to
`elastic-agent.yml` file.

After this change the script writes one separate config file for each
integrations that was detected, for example:

1. `elastic-agent.yml` - Contains global settings
2. `inputs.d/system.yml` - Contains inputs config for System integration
3. `inputs.d/docker.yml` - Contains inputs config for Docker integration

## Screenshot

<img width="1039" alt="Screenshot 2024-08-23 at 16 49 34"
src="https://github.com/user-attachments/assets/17bb7b01-d40e-4491-8bb5-20daf115938a">
### Release note

Display better error messages for issues with logs sample file upload in
Automatic Import.

## Summary

Previously the user would be told about parse issues that occur after
the file is successfully uploaded. However in the following scenarios
the operation would silently fail without displaying a user-visible
error:

1. When the file fails to upload (e.g. when it is too big).
2. When the upload operation is aborted, e.g. programmatically.

Additionally in the following scenario the generic `CAN_NOT_PARSE`
message was displayed:

3. When the file is uploaded but the browser runs out of memory when
trying to parse it.

Additionally, in the following scenario the `EMPTY` message was
displayed:

4. When the file is too big for the V8 engine (e.g. Chrome) to create a
string so upload process returns an empty string.

Additionally:

5. When the user switches from the invalid file (with an error
displayed) to the valid file, the error from the invalid file was
displayed during the analysis of the new file.

After the changes in this PR, the following error types would be
displayed in these cases, respectively:

1. `CAN_NOT_READ_WITH_REASON`: _An error occurred when reading logs
sample: {reason}_
2. `CAN_NOT_READ_WITH_REASON`: _An error occurred when reading logs
sample: An ongoing operation was aborted, typically with a call to
abort()._ (reason is provided by the browser)
3. `TOO_LARGE_TO_PARSE`: _This logs sample file is too large to parse_
4. `TOO_LARGE_TO_PARSE`: _This logs sample file is too large to parse_
5. No error would be displayed during the analysis.

This covers part of elastic/security-team#9844
though the issues were discovered separately.

Note that the fix in item 3 does not work in Firefox as it throws an
`InternalError` rather than `RangeError`. A generic `CAN_NOT_PARSE`
message will continue to be displayed in that case. The fix in item 4 is
only relevant for Chrome.

On a slightly different note, we provide the following improvements to
the log sampling functionality introduced in
elastic#190407:

- Add documentation for the `parseLogsContents` and its special cases
- Refactor the `parseLogsContent` output fields into protocols that
clearly define their optionality
- Add tests for the functionality of sampling when the format cannot be
determined
- Fix so that the error message is displayed for the case where
`fileContent == null` in `onChangeLogsSample`

### Risk Matrix

| Risk | Probability | Severity | Mitigation/Notes |

|---------------------------|-------------|----------|-------------------------|
| Due to the complexity of browser engines, some of them might produce
unexpected events, or events in unexpected order and we will confuse the
user with an incorrect error message. | Low | Low | Testing. |

---------

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

## Summary

Updates icons in ML embeddable dashboard panel types.


![image](https://github.com/user-attachments/assets/6c20bde7-121b-4ce8-a659-a59d4fcfbf61)\

Also updates other links to the Single Metric Viewer to use the new
`singleMetricViewer` icon.

Fixes elastic#187730
…elastic#191935)

closes elastic#190524

### **When EEM is disabled: Keeps the standard tab order**
<img width="1531" alt="Screenshot 2024-09-02 at 17 03 45"
src="https://github.com/user-attachments/assets/0916d18c-818f-41a8-a5e8-41f4f2e6825d">

### **When EEM is enabled and Service has APM only signal type: Keeps
the standard tab order**
<img width="1553" alt="Screenshot 2024-09-02 at 17 03 26"
src="https://github.com/user-attachments/assets/be98626b-18b1-4122-a80b-0d7aa5a38d0d">

### **When EEM is enabled and Service has APM and Logs Signal types:
Keeps the standard tab order**
<img width="1533" alt="Screenshot 2024-09-02 at 17 03 16"
src="https://github.com/user-attachments/assets/4ff6dd23-078b-43cd-a519-9050d05756e1">

### **When EEM is enabled and Service has Logs only signal type:
Reordering Overview | Logs | dashboard | ...**
<img width="1542" alt="Screenshot 2024-09-02 at 17 03 03"
src="https://github.com/user-attachments/assets/7ad8d4e4-e955-4310-b4c6-6316d6266284">
…elastic#191964)

## Summary

This resolves a regression from
`https://github.com/elastic/kibana/pull/188695` where the http_endpoint
input was also modified together with the rest of the inputs with
multiple words, however `http_endpoint` uses `_` rather than `-` in its
actual name.

While this modifies the API, it is an internal API and under tech
preview. The only consumer of this API is our own UI, which is also
modified in this PR to pass the correct parameter.

### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
…tic#191958)

## 📓 Summary

Closes elastic#191862 

The whole section was rendered even when the children highlights
wouldn't exist because the conditional rendering didn't account for the
flattened field value, but only for the formatted one.

Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co>
## 📓 Summary

Closes elastic#191600 

Moving on invocation site the dynamic import to instantiate the apm
locator and registering the embeddable removed the async import on the
biggest APM js chunks.

In practice, we passed from loading ~900kb of JS to ~10kb, with a total
reduction of about **~16%** of all the code loaded by Kibana for any
page.

There is also deeper code splitting for the APM routes to only load
specific features when required on while using the APM app.

| Before | After |
|--------|--------|
| <img width="622" alt="Screenshot 2024-08-28 at 17 58 59"
src="https://github.com/user-attachments/assets/55198b98-0026-41aa-a7aa-d274b854257f">
| <img width="670" alt="Screenshot 2024-08-28 at 17 59 30"
src="https://github.com/user-attachments/assets/3c9136ea-4437-45e8-b3e6-3fe8555ec7e1">
|

## Mandatory celebration GIF

![](https://media1.tenor.com/m/gRAe8dfvrKMAAAAC/television-tv-shows.gif)

---------

Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
…ipt to support use of an API Key (elastic#190449)

## Summary

- Updates the
`/x-pack/plugins/security_solution/scripts/endpoint/run_endpoint_agent.js`
with a new optional argument: `--apiKey`
- This argument enables use of a Kibana/ES API key with the script
instead of `--username` and `--password`
- Ideal for use against Serverless environments where the use of
`username/password` is not ideal
closes [3759](elastic/observability-dev#3759)


## 📝  Summary

This PR creates a new scenario with different non ECS fields  as below :
- log.level-> severity
- message -> msg
- service.name -> svc
- host.name -> hostname
- New field:
thisisaverylongfieldnamethatevendoesnotcontainanyspaceswhyitcouldpotentiallybreakouruiinseveralplaces

The above fields are applied with different variances as below :

- In DSNS data stream with @timestamp
- Outside of DSNS with @timestamp (e.g. cloud-logs-*, etc.)
- Outside of DSNS without @timestamp (replaced by “date”)

## 🎥 Demo

`node scripts/synthtrace simple_non_ecs_logs.ts`


https://github.com/user-attachments/assets/d86cadeb-fd2a-4c42-8dfe-0375ecfd9622
## Summary

This PR is a follow up to the work that's been done to make it
relatively straight forward to backport puppeteer updates to the 7.17
branch in elastic#188390.

This change ensures the archive path for chromium doesn't get installed
outside of the kibana directory, the previous expression resulted in an
archive path outside of the kibana directory which unfortunately could
result in a resolution of a path that kibana has no permissions to write
to, depending on where kibana is being executed from.

## How to test
 
- Pull this PR and delete the `.chromium` directory, for whatever
platform this PR is is been tested on we should get no errors about
installing the chromium and we should see the appropriate chromium
archive for the os platform available in the `.chromium` that would get
created.


<!--

### Checklist

Delete any items that are not applicable to this PR.

- [ ] 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/packages/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
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] 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 renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)


### Risk Matrix

Delete this section if it is not applicable to this PR.

Before closing this PR, invite QA, stakeholders, and other developers to
identify risks that should be tested prior to the change/feature
release.

When forming the risk matrix, consider some of the following examples
and how they may potentially impact the change:

| Risk | Probability | Severity | Mitigation/Notes |

|---------------------------|-------------|----------|-------------------------|
| Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
| Low | High | Integration tests will verify that all features are still
supported in non-default Kibana Space and when user switches between
spaces. |
| Multiple nodes&mdash;Elasticsearch polling might have race conditions
when multiple Kibana nodes are polling for the same tasks. | High | Low
| Tasks are idempotent, so executing them multiple times will not result
in logical error, but will degrade performance. To test for this case we
add plenty of unit tests around this logic and document manual testing
procedure. |
| Code should gracefully handle cases when feature X or plugin Y are
disabled. | Medium | High | Unit tests will verify that any feature flag
or plugin combination still results in our service operational. |
| [See more potential risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |


### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
-->
… reflected in task claim metrics (elastic#191309)

Resolves elastic#190082

## Summary

This PR ensures that any errors during the `mget` task claim process are
accurately reflected in the task manager metrics.
* Removed try/catch statements within the `mget` claim function so any
errors updating/getting the task docs get bubbled up to the polling
lifecycle code. This ensures that these errors get properly reporting
using existing mechanisms
* Reporting any errors inside the `mget` task claim process where
individual documents may fail to update even if other bulk operations
succeed.

## Verify

1. Verify that errors thrown within the `mget` claim process are
reflected in the metrics. To do this, you can throw an error in each of
the following functions used during the claim cycle:
  * `taskStore.msearch`
  * `taskStore.getDocVersions`
  * `taskStore.bulkUpdate`
  * `taskStore.bulkGet`

2. Verify that if `taskStore.bulkUpdate` or `taskStore.bulkGet` return
successfully but contain errors within the response, they are reflected
as task claim failures in the metrics.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
bturquet and others added 29 commits September 9, 2024 16:47
…tic#172909)

## Summary

As we want to freeze the documentation for Functionbeat (deprecation
plan), we need to remove the links to Functionbeat documentation pages.

Remove reference to Functionbeat in Cloudwatch Logs, by removing the
"Learn More" link and value.

### Checklist

Delete any items that are not applicable to this PR.

- [ ] 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/packages/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
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] 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 renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: kaiyan-sheng <kaiyan.sheng@elastic.co>
This PR contains the following updates:

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

---

### Release Notes

<details>
<summary>webdriverio-community/node-geckodriver (geckodriver)</summary>

###
[`v4.4.4`](https://togithub.com/webdriverio-community/node-geckodriver/releases/tag/v4.4.4):
Release 4.4.4

[Compare
Source](https://togithub.com/webdriverio-community/node-geckodriver/compare/v4.4.3...v4.4.4)

- fix: populate geckodriver options
([`f30716e`](https://togithub.com/webdriverio-community/node-geckodriver/commit/f30716e))
- chore(deps-dev): bump tsx from 4.18.0 to 4.19.0
([#&elastic#8203;528](https://togithub.com/webdriverio-community/node-geckodriver/issues/528))
([`26ab600`](https://togithub.com/webdriverio-community/node-geckodriver/commit/26ab600))
- chore(deps-dev): bump
[@&elastic#8203;types/node](https://togithub.com/types/node) from 22.5.0 to
22.5.2
([#&elastic#8203;529](https://togithub.com/webdriverio-community/node-geckodriver/issues/529))
([`4ee2e5a`](https://togithub.com/webdriverio-community/node-geckodriver/commit/4ee2e5a))
- chore(deps-dev): bump
[@&elastic#8203;typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin)
([#&elastic#8203;530](https://togithub.com/webdriverio-community/node-geckodriver/issues/530))
([`8caf9f3`](https://togithub.com/webdriverio-community/node-geckodriver/commit/8caf9f3))
- chore(deps): bump [@&elastic#8203;zip](https://togithub.com/zip).js/zip.js
from 2.7.51 to 2.7.52
([#&elastic#8203;527](https://togithub.com/webdriverio-community/node-geckodriver/issues/527))
([`79cedf4`](https://togithub.com/webdriverio-community/node-geckodriver/commit/79cedf4))
- chore(deps-dev): bump
[@&elastic#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)
from 8.2.0 to 8.3.0
([#&elastic#8203;526](https://togithub.com/webdriverio-community/node-geckodriver/issues/526))
([`702e61d`](https://togithub.com/webdriverio-community/node-geckodriver/commit/702e61d))
- chore(deps-dev): bump
[@&elastic#8203;types/node](https://togithub.com/types/node) from 22.4.0 to
22.5.0
([#&elastic#8203;524](https://togithub.com/webdriverio-community/node-geckodriver/issues/524))
([`5ec0d44`](https://togithub.com/webdriverio-community/node-geckodriver/commit/5ec0d44))
- chore(deps-dev): bump webdriverio from 9.0.1 to 9.0.7
([#&elastic#8203;518](https://togithub.com/webdriverio-community/node-geckodriver/issues/518))
([`2180d15`](https://togithub.com/webdriverio-community/node-geckodriver/commit/2180d15))
- chore(deps-dev): bump
[@&elastic#8203;typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin)
([#&elastic#8203;525](https://togithub.com/webdriverio-community/node-geckodriver/issues/525))
([`ce202e3`](https://togithub.com/webdriverio-community/node-geckodriver/commit/ce202e3))
- chore(deps): bump
[@&elastic#8203;wdio/logger](https://togithub.com/wdio/logger) from 9.0.0 to
9.0.4
([#&elastic#8203;523](https://togithub.com/webdriverio-community/node-geckodriver/issues/523))
([`2c75484`](https://togithub.com/webdriverio-community/node-geckodriver/commit/2c75484))
- chore(deps): bump [@&elastic#8203;zip](https://togithub.com/zip).js/zip.js
from 2.7.48 to 2.7.51
([#&elastic#8203;522](https://togithub.com/webdriverio-community/node-geckodriver/issues/522))
([`082011a`](https://togithub.com/webdriverio-community/node-geckodriver/commit/082011a))
- chore(deps-dev): bump
[@&elastic#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)
from 8.1.0 to 8.2.0
([#&elastic#8203;521](https://togithub.com/webdriverio-community/node-geckodriver/issues/521))
([`61a3233`](https://togithub.com/webdriverio-community/node-geckodriver/commit/61a3233))
- chore(deps-dev): bump husky from 9.1.4 to 9.1.5
([#&elastic#8203;520](https://togithub.com/webdriverio-community/node-geckodriver/issues/520))
([`382ef66`](https://togithub.com/webdriverio-community/node-geckodriver/commit/382ef66))
- chore(deps-dev): bump tsx from 4.17.0 to 4.18.0
([#&elastic#8203;517](https://togithub.com/webdriverio-community/node-geckodriver/issues/517))
([`0da82d3`](https://togithub.com/webdriverio-community/node-geckodriver/commit/0da82d3))
- chore(deps-dev): bump webdriverio from 9.0.0 to 9.0.1
([#&elastic#8203;515](https://togithub.com/webdriverio-community/node-geckodriver/issues/515))
([`7d390a3`](https://togithub.com/webdriverio-community/node-geckodriver/commit/7d390a3))
- chore(deps-dev): bump
[@&elastic#8203;types/node](https://togithub.com/types/node) from 22.3.0 to
22.4.0
([#&elastic#8203;514](https://togithub.com/webdriverio-community/node-geckodriver/issues/514))
([`87d7dd7`](https://togithub.com/webdriverio-community/node-geckodriver/commit/87d7dd7))

</details>

---

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

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

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
Co-authored-by: Jon <jon@elastic.co>
…elastic#172900)

## Summary
Removes the scoped query feature flag as it is no longer needed.

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

Relates to elastic#191549

Adds basic investigation list page with pagination and delete action.

<img width="1478" alt="Screenshot 2024-09-06 at 9 48 37 AM"
src="https://github.com/user-attachments/assets/ce20db46-8da1-4f35-b374-d64c6e46e451">
## Summary

This PR removes the last duration column as discussed with the team as
we decided to get this information from ES. Until then the column gives
very wrong results so we decided to remove it

### 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
…as special characters (elastic#192374)

- Closes elastic#192148

## Summary

This bug appears when a custom data view ID (like `logging-*:logs-*`) is
used. The PR adds decoding for the `id` param for Data view edit page.

### For testing

Create indices with different field types but with the same field names.

```
PUT my-index-1
{
  "mappings": {
    "dynamic": false,
    "properties": {
      "a": {
        "type": "float"
      }
    }
  }
}

PUT my-index-2
{
  "mappings": {
    "dynamic": false,
    "properties": {
      "a": {
        "type": "keyword"
      }
    }
  }
}

PUT my-index-1/_doc
{
  "a": 500.4
}

PUT my-index-2/_doc
{
  "a": "hi there"
}
```

Then create a data view with `my-index-*` as index pattern and a custom
id `logging-*:logs-*`. Navigate to Data Views Management page and check
the button.
…ic#191954)

This PR establishes appropriate privileges across Endpoint tiers. In
Endpoint Complete, users will be able to create, update, and delete Host
Isolation Exceptions. Upon downgrading to Endpoint Essentials, users
should still be able to view and remove items from the Blocklist but
will not have the ability to edit or create new entries.

Please see linked issue for more details on current behaviour.

Expected privileges:
Endpoint Essentials - User can read and delete HIE
Endpoint Complete - User can read, delete and write HIE


https://github.com/user-attachments/assets/69d14a51-6004-45b7-9c78-62066441f4ab
…ess (elastic#191515)

Closes elastic#175597

## Summary
This PR adds a flag `retryFromLastState` in packages install process
that, in case of failed installation, allows to restart the install
process from the last failed step. This is built upon the changes
implemented in elastic#178657.
When the retry process happens, each step executes some clean up of
previously installed assets before happening again. This should help in
installing cleanly the package.

Retry conditions:
- it happens only when the failed install is of type `reinstall` (so not
in case of updates or rollback)
- It's only executed a max of three times, so in case of persistent
error we don't get into an infinite loop

### Testing
I tested by hardcoding the following error anywhere inside the install
functions:
```
throw new Error('Error installing');
```
and then running
```
 POST kbn:/api/fleet/epm/packages/nginx/1.23.0
 {"force": true }
```
this way is possible to see the three retries when`
handleInstallPackageFailure` is executed.

### Checklist

- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] [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>
## Summary

While debugging in Lens I've noticed a consistent warning from the
TopNav component about the `fill` prop.
Looking at types the `EuiHeaderLink` component is lenient about it even
tho the actual HTML types are not compatible (as the warning says, a
boolean is not allowed there).
I've moved the `fill` prop to be passed only to the `EuiButton`
component to fix it.
…o support `IndexEntries` (elastic#186566)

## Summary

This is a follow-up to elastic#184974
that updates the KB Entries API's (and underlying schema) to support
`IndexEntries` in addition to `DocumentEntries`. `IndexEntries` are
entries in the Knowledge Base that are not backed by an embedded raw
text source, but rather by an entire Index or Data Stream. The user can
set the data source name, the specific field to query (must be ELSER
embeddings in this initial implementation), and a description for when
the assistant should search this data source for Knowledge Base content.
This essentially enables the user to create custom retrieval tools
backed by their own data.


The changes in this PR, as with the other recent KB enhancements, are
behind the following feature flag:
```
xpack.securitySolution.enableExperimental:
  - 'assistantKnowledgeBaseByDefault'
```

however as code change is required to test the new mappings. For this
you can update the `knowledgeBaseDataStream` in
`x-pack/plugins/elastic_assistant/server/ai_assistant_service/index.ts`
to

```ts
    this.knowledgeBaseDataStream = this.createDataStream({
      resource: 'knowledgeBase',
      kibanaVersion: options.kibanaVersion,
      fieldMap: knowledgeBaseFieldMapV2, // Update this to the V2 mapping
    });
```

Change set includes:
- [X] ES Knowledge Base data stream schema and OAS has been updated to
support `IndexEntries`.
- [X] OAS schema files have been moved to the `/entries` sub-directory
- [ ] Backend KB services have been updated to support `IndexEntries`
  - [X] Storage methods updated
- [ ] Retrieval methods updated (will round out these endpoint when
working the UI next)

---

With these API changes, I've also introduced a few sample `*.http` files
for easier development/testing. These files are supported out of the box
in JetBrains IDE's or in VSCode with the
[httpyac](https://httpyac.github.io/) (and many other) extensions. Since
the configuration for these files includes a `-` in the name, that's why
you'll see a few @elastic/kibana-operations files updated.

You can read more about `http` files
[here](https://www.jetbrains.com/help/webstorm/http-client-in-product-code-editor.html)
and for the spec see this repo
[here](https://github.com/JetBrains/http-request-in-editor-spec/blob/master/spec.md).
If we find these useful, we could add support to our [OpenAPI
Generator](https://openapi-generator.tech/docs/generators/jetbrains-http-client)
to create these automatically. They currently live co-located next to
the OAS and generated schema files here:

```
x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/entries/bulk_crud_knowledge_base_entries_route.http
x-pack/packages/kbn-elastic-assistant-common/impl/schemas/knowledge_base/entries/crud_knowledge_base_entries_route.http
```

and the main config here:

```
x-pack/packages/kbn-elastic-assistant-common/env/http-client.env.json
```

The `x-pack/packages/kbn-elastic-assistant-common/.gitignore` has been
updated to ignore `http-client.private.env.json` files locally, which is
how you can override the config as you'd like. This is helpful to add
variables like `basePath` as below:

```
{
  "dev": {
    "basePath": "/kbn"
  }
}
```

To use them, just open the corresponding `*.http` for the API you want
to test, and click `Send`, and the response will open in another tab.
Here is what that looks like for creating one of the new `IndexEntry` KB
documents that have been introduced in this PR:

<p align="center">
<img width="500"
src="https://github.com/user-attachments/assets/c9e70d1a-28d2-4eb3-9853-ab6d8e1c7acf"
/>
</p> 





### Checklist

Delete any items that are not applicable to this PR.

- [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/packages/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
* Feature currently behind feature flag. Documentation to be added
before flag is removed. Tracked in
elastic/security-docs#5337
- [X] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios

---------

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

Resolves elastic#181050

## Summary
This PR 
- fixes `Inconsistent responses from RulesClient` by updating the
`bulkEnable` and `bulkDisable` rules apis to return all the rules that
were in the payload.
So below scenarios will return:
    - Both rules initially disabled:
      ```typescript
      { 
        "errors": [], 
        "rules": [{...}, {...}], // <- all rules are returned
        "total": 2 
      }
      ``` 
   - One rule disabled, one enabled:
      ```typescript
      { 
        "errors": [], 
        "rules": [{...}, {...}], // <- all rules are returned
        "total": 2 
      }
      ``` 
   - Both rules initially enabled:
      ```typescript
      { 
        "errors": [], 
        "rules": [{...}, {...}], // <- all rules are returned
        "total": 2 
      }
      ``` 

### How to verify
- Create two (detection engine SIEM / Observability / Stack) rules, one
enable and one disable
- Select both rules and bulk enable them via UI OR
- Enable 2 rules via API 
- Verify both rules are returned in response 

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

corrects the names for the on save telemetry events from
`render_lens_lens_*` to `save_lens_*`
)

## Summary

[redo of elastic#191129 that got reverted] 
This PR updates the structure of the Dashboards docs and refreshes some
outdated parts of the content.
More updates will be made in future PRs to refresh screenshots and to
refresh the content more in depth.

This new structure and edits:
- distribute the pages in more user-oriented identified themes, for
better findability, scanning, and to ease possible integration of some
of these pages into in-app documentation.
- are more future proof to evolve along with upcoming features.

~I'll leave this PR as a draft until I resolve some link dependencies
coming from other docs sources and check some additional bits of
content.~

Preview available on demand on Slack.

Closes: elastic/platform-docs-team#408 (I'll
create separate issues for remaining items)
Closes: elastic/platform-docs-team#413
Closes: elastic/platform-docs-team#418

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Lisa Cawley <lcawley@elastic.co>
## Summary

The wrap by pipes CTA doesnt work correctly when pipes are being used
inside functions or in a comment in an ES|QL query.

This PR fixes this bug by using the prettifying api. I was thinking to
change the tooltip text to mention that it doesnt only wrap by pipes but
also prettifies but I decided against it and kept the tooltip as it is
for 2 reasons:

- this is the most important thing that it does
- prettifying means nothing for the majority of our users


![meow](https://github.com/user-attachments/assets/c2189218-4367-4d4a-9f9e-2d6f88f731d2)

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

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
## Summary

This PR implements the case support for TheHive connector.
Depends on : elastic#180138

## Screenshots

**List of connectors**

![image](https://github.com/elastic/kibana/assets/123942796/7236eaed-d1d5-4506-80b1-c4e43c6ce36a)

**Configure thehive connector from cases**

![image](https://github.com/elastic/kibana/assets/123942796/bb4843d5-9f29-47c2-baa3-77db81a35319)


### Checklist

Delete any items that are not applicable to this PR.

- [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/packages/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
- [x] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [x] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [x] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [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 renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [x] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Christos Nasikas <christos.nasikas@elastic.co>
…92382)

Fixes elastic#189869
Fixes elastic#189868

## Summary
Attempt to stabilize flaky test
`x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/create_package_policy_page/components/steps/step_select_agent_policy.test.tsx`.
I previously merged elastic#190778 but it
failed again because of flakyness.

### 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
…Discover (elastic#192375)

Fixes issue when clicking the `Create job using wizard` link in
Discover. Some queries cause problems with the various searches the
wizard performs.


![image](https://github.com/user-attachments/assets/79dc5920-d57d-422d-909a-61d66f3dcbe0)

This was caused by the query being added to the URL as a string when it
needs to be an object so it is correctly converted to the rison format.

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
…to deployment-agnostic one (elastic#192070)

## Summary

_The goal is to consolidate 2 existing test files with identical logic
into a single, deployment-agnostic test file:_

Files to be replaced:
- test/api_integration/apis/saved_objects_management/bulk_delete.ts
- test/api_integration/apis/saved_objects_management/bulk_get.ts
-
x-pack/test_serverless/api_integration/test_suites/common/saved_objects_management/bulk_delete.ts
-
x-pack/test_serverless/api_integration/test_suites/common/saved_objects_management/bulk_get.ts

New test file:
-
x-pack/test/api_integration/deployment_agnostic/apis/saved_objects_management/bulk_delete.ts
-
x-pack/test/api_integration/deployment_agnostic/apis/saved_objects_management/bulk_get.ts


The migration leverages the serverless test file as a basis for the new
deployment-agnostic test.
Necessary modifications are minimal and include FTR context provider &
its services to ensure compatibility across different environments.
Lastly new file has to be loaded into both the serverless and stateful
config files under
`x-pack/test/api_integration/deployment_agnostic/configs`

This approach ensures that the test logic remains consistent while
reducing redundancy and maintenance effort.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
@mbondyra mbondyra closed this Sep 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.