Commit graph

501 commits

Author SHA1 Message Date
Rodney Norris
94e4ede666
[8.14] [Serverless] Playground in Serverless (#181474) (#181988)
# Backport

This will backport the following commits from `main` to `8.14`:
- [[Serverless] Playground in Serverless
(#181474)](https://github.com/elastic/kibana/pull/181474)

<!--- Backport version: 8.9.8 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Samiul
Monir","email":"150824886+Samiul-TheSoccerFan@users.noreply.github.com"},"sourceCommit":{"committedDate":"2024-04-26T18:12:51Z","message":"[Serverless]
Playground in Serverless (#181474)\n\n## Summary\r\n\r\nThis
PR:\r\n\r\n- Integrate Playground into Serverless\r\n- Redesign of
Navigation Menu\r\n- Refactor Playground docs\r\n\r\n## UI
changes:\r\n### Playground in
Serverless\r\n\r\n![img-1](772d5812-e8ea-41ee-a875-4204fff3e948)\r\n\r\n###
Playground with docs and
indices\r\n\r\n![img-2](5545dc3e-bf7d-45c0-9f4a-250dd9c63f75)\r\n\r\n###
Playground in
action\r\n\r\n\r\n![img-3](a7088863-6dd9-4c4a-9760-e168d37f16c2)\r\n\r\n\r\n###
Checklist\r\n\r\nDelete any items that are not applicable to this
PR.\r\n\r\n- [ ] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [ ] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [ ] [Flaky
Test\r\nRunner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1)
was\r\nused on any tests changed\r\n- [ ] Any UI touched in this PR is
usable by keyboard only (learn more\r\nabout [keyboard
accessibility](https://webaim.org/techniques/keyboard/))\r\n- [ ] Any UI
touched in this PR does not create any new axe failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[ ] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[ ] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[ ] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n\r\n###
For maintainers\r\n\r\n- [ ] This was checked for breaking API changes
and was
[labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by:
kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"41fd6432be054eff743bfbf2a3f4402a0ae42733","branchLabelMapping":{"^v8.15.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","Team:EnterpriseSearch","v8.14.0","v8.15.0"],"number":181474,"url":"https://github.com/elastic/kibana/pull/181474","mergeCommit":{"message":"[Serverless]
Playground in Serverless (#181474)\n\n## Summary\r\n\r\nThis
PR:\r\n\r\n- Integrate Playground into Serverless\r\n- Redesign of
Navigation Menu\r\n- Refactor Playground docs\r\n\r\n## UI
changes:\r\n### Playground in
Serverless\r\n\r\n![img-1](772d5812-e8ea-41ee-a875-4204fff3e948)\r\n\r\n###
Playground with docs and
indices\r\n\r\n![img-2](5545dc3e-bf7d-45c0-9f4a-250dd9c63f75)\r\n\r\n###
Playground in
action\r\n\r\n\r\n![img-3](a7088863-6dd9-4c4a-9760-e168d37f16c2)\r\n\r\n\r\n###
Checklist\r\n\r\nDelete any items that are not applicable to this
PR.\r\n\r\n- [ ] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [ ] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [ ] [Flaky
Test\r\nRunner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1)
was\r\nused on any tests changed\r\n- [ ] Any UI touched in this PR is
usable by keyboard only (learn more\r\nabout [keyboard
accessibility](https://webaim.org/techniques/keyboard/))\r\n- [ ] Any UI
touched in this PR does not create any new axe failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[ ] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[ ] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[ ] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n\r\n###
For maintainers\r\n\r\n- [ ] This was checked for breaking API changes
and was
[labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by:
kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"41fd6432be054eff743bfbf2a3f4402a0ae42733"}},"sourceBranch":"main","suggestedTargetBranches":["8.14"],"targetPullRequestStates":[{"branch":"8.14","label":"v8.14.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.15.0","labelRegex":"^v8.15.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/181474","number":181474,"mergeCommit":{"message":"[Serverless]
Playground in Serverless (#181474)\n\n## Summary\r\n\r\nThis
PR:\r\n\r\n- Integrate Playground into Serverless\r\n- Redesign of
Navigation Menu\r\n- Refactor Playground docs\r\n\r\n## UI
changes:\r\n### Playground in
Serverless\r\n\r\n![img-1](772d5812-e8ea-41ee-a875-4204fff3e948)\r\n\r\n###
Playground with docs and
indices\r\n\r\n![img-2](5545dc3e-bf7d-45c0-9f4a-250dd9c63f75)\r\n\r\n###
Playground in
action\r\n\r\n\r\n![img-3](a7088863-6dd9-4c4a-9760-e168d37f16c2)\r\n\r\n\r\n###
Checklist\r\n\r\nDelete any items that are not applicable to this
PR.\r\n\r\n- [ ] Any text added follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [ ] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [ ] [Flaky
Test\r\nRunner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1)
was\r\nused on any tests changed\r\n- [ ] Any UI touched in this PR is
usable by keyboard only (learn more\r\nabout [keyboard
accessibility](https://webaim.org/techniques/keyboard/))\r\n- [ ] Any UI
touched in this PR does not create any new axe failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[ ] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[ ] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[ ] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n\r\n###
For maintainers\r\n\r\n- [ ] This was checked for breaking API changes
and was
[labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by:
kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"41fd6432be054eff743bfbf2a3f4402a0ae42733"}}]}]
BACKPORT-->

Co-authored-by: Samiul Monir <150824886+Samiul-TheSoccerFan@users.noreply.github.com>
2024-04-29 08:23:17 -07:00
Tim Sullivan
e4a32f8f3c
[SharedUX] Remove usage of deprecated React rendering utilities (#180516)
## Summary

Partially addresses https://github.com/elastic/kibana-team/issues/805

Follows https://github.com/elastic/kibana/pull/180003

These changes come up from searching in the code and finding where
certain kinds of deprecated AppEx-SharedUX modules are imported.
**Reviewers: Please interact with critical paths through the UI
components touched in this PR, ESPECIALLY in terms of testing dark mode
and i18n.**

This focuses on code within AppEx-SharedUX. [Reporting changes are
separate](https://github.com/elastic/kibana/pull/).

<img width="1107" alt="image"
src="c0d2ce08-ac35-45a7-8192-0b2256fceb0e">

### Checklist

Delete any items that are not applicable to this PR.

- [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
- [ ] 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)
2024-04-17 07:52:41 -07:00
James Gowdy
ce14d99f3b
[ML] Hides filebeat configuration card for Serverless Search file upload (#178987)
Updates the text on the landing page

**Before**

![image](003a582f-4fe0-4d2a-a0dd-d40bd4ed57f5)

**After**

![image](75afae43-1855-4012-a728-488b6a3d3823)

Adds a new feature flag to allow the `Create filebeat configuration`
card to be hidden. This has been
[requested](https://github.com/elastic/enterprise-search-team/issues/7075)
for the serverless search project and so the `serverless.es.yml` has
been updated to include this flag.

**Before**

![image](add1aa39-186d-4816-9f92-27fa2f6f0378)

**After**


![image](a9ab7243-2fae-48fc-a3a0-0b2b347630be)
2024-04-12 16:52:07 +01:00
Sébastien Loix
72c80ff74c
[Stateful sidenav] Put new nav behind launch darkly flag (#179913) 2024-04-10 13:51:42 +01:00
Dario Gieselaar
52c65b78fc
[AI Assistant] Add setting for preferred type (#179233)
Adds a setting in the `aiAssistantManagementSelection` plugin that
allows users to set the preferred Assistant type. The allowed values
are:

- `default`: the status quo, which is: show the Observability AI
Assistant in Observability apps, the Security AI Assistant in Security
solution apps, and none in the other apps.
- `never`: Never show any AI Assistant.
- `observability`: Show the Observability AI Assistant everywhere,
except for Security solution apps.
- `security`: ~Show the Security AI Assistant everywhere, except for
Observability apps.~

it is up to the solutions to respect the setting. See
[x-pack/plugins/observability_solution/observability_ai_assistant_app/public/hooks/is_nav_control_visible.tsx](https://github.com/elastic/kibana/pull/179233/files#diff-753a9aae298da45c5bd96bc2cacaa437ac53e165069ad6323973dd3c2879d4ae)
for an example. It should also be set in the specific Serverless config:
[config/serverless.oblt.yml](https://github.com/elastic/kibana/pull/179233/files#diff-358680d2b72268283dca4f3efb976cd924b7b5bce822e07c8871d061b4bb339e).

Update: this is now labeled as an Observability-only setting.

![CleanShot 2024-04-05 at 09 28
32@2x](fa6edeea-eaca-4ec3-86ec-f00effa95f93)

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2024-04-08 11:26:23 -07:00
Alejandro Fernández Haro
8f11146f29
[Part of #176153] Rendering FTR core plugin (#179757) 2024-04-02 15:59:41 +02:00
Christiane (Tina) Heiligers
b65a75115d
Adds environment to telemetry config (#179675) 2024-03-29 09:03:59 -07:00
Zacqary Adam Xeper
bfc91b0cb0
[RAM] [Rule Form v2] Add feature flag (#179184)
## Summary

Closes #179110 

This adds a series of feature flags to all plugins that are currently
using the **Rule Form Flyout**, in preparation for development of the
new Create Rule Flow V2 (#175634).

Unfortunately true Kibana feature-flagging is still not yet implemented,
so we need to implement this as a config option for every individual
affected plugin. The following `kibana.yml` config will enable the
upcoming V2 rule form:

```yaml
xpack.trigger_actions_ui.enableExperimental: ['ruleFormV2']
xpack.infra.featureFlags.ruleFormV2Enabled: true
xpack.ml.experimental.ruleFormV2.enabled: true
xpack.transform.experimental.ruleFormV2Enabled: true
xpack.legacy_uptime.experimental.ruleFormV2Enabled: true
xpack.observability.unsafe.ruleFormV2.enabled: true
xpack.slo.experimental.ruleFormV2.enabled: true
xpack.apm.featureFlags.ruleFormV2Enabled: true

discover.experimental.ruleFormV2Enabled: true
``` 

**These feature flags will not enable anything yet.** This PR is for the
sole purpose of adding these browser-enabled flags now, so that we can
reduce the amount of code committed later.

### Why feature flag every plugin?

The V1 rule form is currently exported from Triggers Actions UI. In V2,
we're moving away from this model and exporting the rule form in a KBN
package. Therefore we can't simply export the results of a single
feature flag from Triggers Actions UI, we need to signal to each
individual plugin whether it should be pulling from the new KBN package
or from the old cross-plugin export.

### Plugins affected

#### Triggers Actions UI, Infra, Observability, APM

These plugins already contained interfaces for experimental features or
feature flags, so this PR simply adds a new flag to these existing
structures.

#### Discover, ML, Transform, Uptime, SLO

These plugins did **not** have existing browser-exposed feature flag
systems, so this PR adds these interfaces. The transform plugin notably
did not yet have any config options configured at all.
2024-03-27 13:17:21 -07:00
Elena Stoeva
dbf017ba31
Rename Management team name in codeowners file (#178626)
The AppEx Management team was recently renamed on GitHub from
`platform-deployment-management` to `kibana-management`. This PR updates
the Codeowners file and all references to the team name.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-03-18 15:46:31 +00:00
Sébastien Loix
059e4a57d0
[Stateful sidenav] Breadcrumb switcher (#178112) 2024-03-18 11:01:12 +00:00
Rachel Shen
ff731c3558
[Share Modal Redesign] set up yml setting to show new share modal version (#178035)
## Summary

The goal of this PR is to set up a kibana.yml setting
`share.new_version.enabled: <true|false>`, to toggle the older and new
implementation for the share context menu to modals.

This will allow for easier incremental implementation into main for me
and @eokoneyo without breaking the share context menu until the project
is completed. This setting is false by default and if not specified in
the yml to not disturb others while this project is underway. This
setting can be removed once the redesign is completed.

This PR is focused on just setting up the setting. The new version opens
a modal but subsequent PRs will address opening the modal to a
functioning implementation.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-03-06 10:10:16 -07:00
Sébastien Loix
1f032eb138
[Stateful sidenav] Activation mechanism (#177557) 2024-03-05 19:40:37 +00:00
Tiago Costa
250790e0f1
chore(NA): upgrade typescript into v4.9.5 (#175178)
This PR bumps the Typescript version used on Kibana into v4.9.5. The
full set of changes can be found
[here](https://devblogs.microsoft.com/typescript/announcing-typescript-4-9/).
So far, as long I can see, the performance is better than in the version
we're currently in.

I didn't want to make assumptions for such a diversity of type errors
across the codebase so instead I choose to mark the failures with
`@ts-expect-error` and let each team decide how to handle it.

There is a list below with the files (and teams those belong to) where
the annotations were added. If each team could provide help of fixing
the ones under their domain it would be fantastic. It can be done in
this PR or in subsequent ones.

Here it goes the list for follow up:

@elastic/kibana-core - tracking issue:
https://github.com/elastic/kibana/issues/176153
- [ ]
[packages/analytics/client/src/analytics_client/analytics_client.ts](https://github.com/elastic/kibana/pull/175178/files#diff-57477fa4b8c2fcd5a3159e8a6a9a1db80199dbe94b2917a520d4dcee4f65599b)
- [ ]
[packages/analytics/client/src/analytics_client/context_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b7802a3b9a46305607ff678abde499d9c9e1dd8b1f3f6a76add1a8c3a0b94e43)
- [ ]
[packages/analytics/client/src/analytics_client/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-6584fc2ecf29864805de0f0f82dcff81a850b53aeff25932a598c9157c991d43)
- [ ]
[packages/core/http/core-http-router-server-internal/src/validator.ts](https://github.com/elastic/kibana/pull/175178/files#diff-5a4d386d142b33439aa7c638b7ddc2300da40155c636b4cf3119929b8bb57b72)
- [ ]
[packages/core/http/core-http-server-internal/src/cookie_session_storage.ts](https://github.com/elastic/kibana/pull/175178/files#diff-9efcaa58a5bdbfcac57c68b9c2e108b921c9c5ea88abf90920191b150d56a03a)
- [ ]
[packages/core/plugins/core-plugins-server-internal/src/create_browser_config.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b49a02fac82b32dd34c271d0ed71f7f79f173591e6810b32093975bd50fe11b1)
- [ ]
[packages/core/saved-objects/core-saved-objects-api-server-internal/src/lib/apis/bulk_update.ts](https://github.com/elastic/kibana/pull/175178/files#diff-9a151f7dc25effb6f2bb084075b7d1d8e8ee049dcd91e92a0d27e014d3bc82b8)
- [ ]
[packages/core/saved-objects/core-saved-objects-api-server-internal/src/lib/apis/update.ts](https://github.com/elastic/kibana/pull/175178/files#diff-d5a4ebda74b0c2e2ca625fe395a185e3ff0076bc44614cf640cf33cbc5cba2bd)
- [ ]
[packages/kbn-es-types/src/search.ts](https://github.com/elastic/kibana/pull/175178/files#diff-49222c37a13c4c85c287947aaa8293029513f4a34933fcac6116ad3059ee8fcf)
- [ ]
[packages/kbn-utility-types/src/dot.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f14998302c20ca97ac7f3faa7b542f22670708eac134e6af96c354489a641689)
- [ ]
[src/core/server/mocks.ts](https://github.com/elastic/kibana/pull/175178/files#diff-a3e30603bf537517842354df3548e88a25f4d9e2a6be08f95b88fb8db48e4228)
- [ ]
[test/plugin_functional/test_suites/core_plugins/rendering.ts](https://github.com/elastic/kibana/pull/175178/files#diff-eb6bd8a02c024aa1ab5c3debbeda149e8d2fb2614bca80d09c3f9aa21100ed7d)

@elastic/kibana-presentation 
- [ ]
[packages/content-management/content_editor/src/__jest__/tests.helpers.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-6e56e39c2e9accef38070408bb589fb4cc973e4353098574be142aa8e3da399e)
- [ ]
[src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts](https://github.com/elastic/kibana/pull/175178/files#diff-1aa4b1f585b7a75d996ad7620d8cfef03584e41f77d529172acc5250f5de092f)
- [ ]
[src/plugins/presentation_util/public/services/create/provider.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-baa5fb3d72bf64b6c269155b736f6af387688b0f2f77d804f5fd5ced69d3e2c9)
- [ ]
[x-pack/plugins/canvas/canvas_plugin_src/functions/server/pointseries/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-da216f23664ac188404e9a48cdf33b05ad121512d988da5cd88a72724d5bfff9)
- [ ]
[x-pack/plugins/canvas/server/templates/status_report.ts](https://github.com/elastic/kibana/pull/175178/files#diff-45598e8b99710f8fd7a0a00eb7b0810cb24bf529b7fefb52dfd5f05b82a23578)
- [ ]
[x-pack/plugins/canvas/server/templates/summary_report.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b1eb9cec629f0adcae86dede388d6b343b785970a458fbf57c96dbd32b3fc8b5)
- [ ]
[x-pack/plugins/canvas/types/arguments.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c7d1e4fa5026000bb99d03e5dace364226857c8e1e928a182c14c3f33f0006d9)
- [ ]
[x-pack/plugins/canvas/types/functions.ts](https://github.com/elastic/kibana/pull/175178/files#diff-00548b1936e05f24bc8dcbf453bf5a49f0f129989bab422926d3f4b56e35abae)

@elastic/apm 
- [ ]
[packages/kbn-apm-synthtrace-client/src/lib/interval.ts](https://github.com/elastic/kibana/pull/175178/files#diff-ec08c88331cc24811a3e24cec3aa99d02a707fb1a5848e1fb3a7c3172f99f1e7)
- [ ]
[packages/kbn-apm-synthtrace/src/lib/shared/get_serialize_transform.ts](https://github.com/elastic/kibana/pull/175178/files#diff-98d45df58fce30ac60a87c3a88aa7368ecf16f5b79b68a67419d8546974e42db)
- [ ]
[packages/kbn-apm-synthtrace/src/lib/utils/with_client.ts](https://github.com/elastic/kibana/pull/175178/files#diff-612d609963c9fe7830bc4e522bd3bb614369772906708b163e9854ec85cf879c)
- [ ]
[x-pack/plugins/apm/server/lib/helpers/transactions/get_is_using_transaction_events.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-69ee25aee396b7ccb9cc749b4f9cfad19a380bf3c4eb1f2d1848390b75477732)

@elastic/obs-knowledge-team  
- [ ]
[packages/kbn-io-ts-utils/src/to_json_schema/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-012b20f075e09f40a1839b759082ffea0122aeb79d6b5fd5e642f9abee2435e2)
- [ ]
[packages/kbn-server-route-repository/src/test_types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-a4e28211d0c856831b71488f849f1c9e542373d4a287baa3cbfa032278cc8dc0)

@elastic/security-detection-engine   
- [ ]
[packages/kbn-securitysolution-io-ts-alerting-types/src/threat_mapping/index.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-594114826caa3dee11e8dda5d6a67d4ce852b02f5d4df9721925c19d9c5d97af)
- [ ]
[packages/kbn-securitysolution-utils/src/add_remove_id_to_item/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8a1645d3d66eedeb05f8d954a3855523f8403b7a9c59200ad8184af96bb28cfb)
- [ ]
[x-pack/plugins/lists/server/routes/utils/build_siem_response.ts](https://github.com/elastic/kibana/pull/175178/files#diff-170882f010e12304aec81e167487cfc086c2d6a1d7dbbb36d1db2215d072577e)

@elastic/appex-sharedux 
- [ ]
[packages/shared-ux/router/impl/routes.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-43ba27115faf87c05460364c3b30b32f2794451404c82470653ccd9258e944b8)
- [ ]
[src/plugins/files/server/routes/file_kind/enhance_router.ts](https://github.com/elastic/kibana/pull/175178/files#diff-33258e2bd2f400b53a1366511ec3ef1c83b8f0aee762c1bd83abdea3ff153c2a)
- [ ]
[src/plugins/files/server/routes/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-bad66d1fdd59cf33bfa9a20aa96dde580fab1b7da8252723ee08c4e99203074f)

@elastic/kibana-visualizations 
- [x]
[src/plugins/chart_expressions/expression_legacy_metric/public/__stories__/metric_renderer.stories.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-e66ed20c106e40aee23cbca1980280ef6600797f5d2210486be007d7fe5d72ca)
- [x]
[src/plugins/chart_expressions/expression_legacy_metric/public/components/with_auto_scale.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d45fb549abb422cdd706da86c52a3d9dc3b0517f028b966b20cf2679aabcd24f)
- [x]
[src/plugins/expressions/common/execution/execution_contract.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8817ec58899f80b4bfd6144dc59c3e6dc9a508e31264cd2bdf155a0b1746d9f9)
- [x]
[src/plugins/vis_types/table/public/components/table_vis_basic.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-4de9a68e38b105b862755f59d2d05722bfba6ffc85dcb0b2cf5eaf754a6afb50)
- [x]
[src/plugins/vis_types/timeseries/public/convert_to_lens/lib/convert/percentile.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c5fef6976b67ee678ec2dda15e0bd3ca56bef8404565499b915783a40c3c908d)
- [x]
[src/plugins/vis_types/timeseries/public/convert_to_lens/lib/convert/percentile_rank.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8ad6988492e0ada34f9899f56f40533e41e537d6d79af1cc3794fdb68fbff358)
- [x]
[src/plugins/visualizations/public/vis.ts](https://github.com/elastic/kibana/pull/175178/files#diff-15c314cac8f334b9e9feb83d9f23c0c9e94f4c85405cfa4b4e3b3b445bd6763e)
- [x]
[src/plugins/visualizations/public/vis_async.ts](https://github.com/elastic/kibana/pull/175178/files#diff-d5e129fbb0217fe4da38f828794cd141bc6a4d32d87847713920312a5d27f150)
- [ ]
[x-pack/plugins/lens/public/datasources/form_based/operations/definitions/formula/formula.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-5624778a752c98be20953fd297e58165dab354ddab95bcf0c6b2a91d854a9c71)
- [x]
[x-pack/plugins/lens/public/debounced_component/debounced_component.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-9c14c9f29c5b351993b25d462b1d988e354068a1db9a8651515c3ee85fbd6ce9)
- [ ]
[x-pack/plugins/lens/public/editor_frame_service/editor_frame/workspace_panel/workspace_panel.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-8ca1f3be4f6696d9c05773cfaa23d7489a1c460fffdf39c8ad2ba8aa09f6c194)
- [ ]
[x-pack/plugins/lens/public/embeddable/expression_wrapper.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d3a5ba0620f3712afd6af94b1f4ceea107d356c6812ae245d1b496caf86c54a7)
- [x]
[x-pack/plugins/lens/public/state_management/lens_slice.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8b56f34b3034981765e12503ccd32ca15b2d889ab6acd594737ae5313a5e2312)
- [x]
[x-pack/plugins/lens/server/migrations/common_migrations.ts](https://github.com/elastic/kibana/pull/175178/files#diff-7609127370894696659846e16e36353fda9cc11150c663334236caf597854b24)
- [ ]
[src/plugins/embeddable/public/registry/saved_object_to_panel_methods.ts](bcd925ecb6 (diff-1401b355377c76ab6458756aa0e3177beef5ec56796c58b7a52b5e003f85b5cf))

@elastic/kibana-data-discovery 
- [ ]
[src/plugins/data_view_management/public/components/test_utils.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-60386b173801a1e7fa97b99de49501c4fe7053c099ee06107292461acc7d26a8)
- [ ]
[src/plugins/unified_histogram/public/layout/layout.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-03181d67508c4c66d682a019b9b1e9235ca8a6dc656450e563422c9720bfa24f)

@elastic/platform-deployment-management 
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/components/use_field.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-ef2d4424a31a8d8def4c1c2d9d756cfef9cc58b30837c1b6639e3419e572cdd9)
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/hooks/use_field.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b80eb528652fd57fe88cae03deed4737cba5992b3a9ddf62259e4aa892b2ec68)
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/hooks/use_field_from_props.ts](https://github.com/elastic/kibana/pull/175178/files#diff-ac8d10db6808671a05edbe0e9f4cecf330377cf85aaef8d96019e8e1dc7987ef)
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-3e75c35c5d016b55290a30604c278eaf90bbd5a78a26613dbed19f0abd59212f)

@elastic/kibana-security 
- [x]
[src/plugins/interactive_setup/public/use_form.ts](https://github.com/elastic/kibana/pull/175178/files#diff-afe9ad58c9ccaf628d72ed916620587703bd960ba313e3199fbef4c98ad30841)

@elastic/ml-ui 
- [ ]
[x-pack/packages/ml/cancellable_search/src/use_cancellable_search.ts](https://github.com/elastic/kibana/pull/175178/files#diff-4a366c647aadac020022b1186fa424fa6475b2ba907d9391cfff5e77863dec48)
- [ ]
[x-pack/packages/ml/date_picker/src/components/full_time_range_selector.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-b5dd4c2d53eedbc4d749261001ab2f735f798ec6cbf249c900db517294a4ec59)
- [ ]
[x-pack/plugins/aiops/public/hooks/use_cancellable_search.ts](https://github.com/elastic/kibana/pull/175178/files#diff-361b7df5c49f9b67a897baab531df2456ceba3b57eaee9b2bb193b4d70aed052)
- [ ]
[x-pack/plugins/data_visualizer/public/application/data_drift/use_data_drift_result.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0c1ebe9287033ed3afdbe615c8e95f6091285de5df1455134d9f6d14d3e9b970)

@elastic/response-ops 
- [ ]
[x-pack/plugins/alerting/server/application/rule/methods/create/create_rule.ts](https://github.com/elastic/kibana/pull/175178/files#diff-a4ecdf971673064aa6dc4ab5620e7b128efcc27b3e77804a3753d2839eaa7ba2)
- [ ]
[x-pack/plugins/alerting/server/application/rule/methods/resolve/types/resolved_rule.ts](https://github.com/elastic/kibana/pull/175178/files#diff-fd0549bd17f14e41a3c47a0dfe01a3cbd76f141983aa076ce30537db4edb0f0c)
- [ ]
[x-pack/plugins/alerting/server/routes/get_rule.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-5c8d8530f6a5ebb71ff59f03cb212af6ca2cffe015ee061cd998d11b63f5fd2d)
- [ ]
[x-pack/plugins/alerting/server/routes/lib/rewrite_rule.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-032345b22421e404941669203a41b51b23a5223a555ef286ab29ff1ea199a287)
- [ ]
[x-pack/plugins/alerting/server/routes/rule/apis/create/create_rule_route.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-425f9213402823ce800f9f4400ccce476c1b15d82302f238b3e07312bcacf1fe)
- [ ]
[x-pack/plugins/cases/public/api/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-3b36a4b3a6bcd19c1ee4aa7f83fb50e08ae3715c936c26ca911df9e8da319d63)
- [ ]
[x-pack/plugins/cases/public/components/case_view/components/user_list.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-1ce6d0fd74881ed9a9dd9bbe7ec597083382aee3395fb032c46ec7acd8a201f5)
- [ ]
[x-pack/plugins/stack_connectors/public/connector_types/opsgenie/params.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-e08360892ade8eba65f8e6097525cb749918b8beb9d949d3f9e3a79dfcb9df97)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/lib/suspended_component_with_props.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-2f91d7445dd017643fe50c068a42d4c143ca0208aac42ad35d10401aaf6480c6)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_alerts_filter_timeframe.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-37c30c5d49eaaaeef4e05d01d4e6e73584684ab9707d731c7945aca56cde6091)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_conditions.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-51a33d1d3b082b2615edd649b7ebc3bdb00e9c107cee754e468fa9512d064835)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_conditions_group.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-24314823291cc4b2970c60f3c66c9e1c2d49aa88b668a063dd1d44724cde7080)

@elastic/security-threat-hunting-investigations
- [ ]
[x-pack/plugins/ecs_data_quality_dashboard/server/lib/build_response/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8aefd6c90e985c7a1c8715b4c894be71e3d8abcb58fad0c513b4ab37e23cffbb)

@elastic/security-generative-ai
- [ ]
[x-pack/plugins/elastic_assistant/server/lib/build_response/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0e0fa80b96f36b0daa287213f9f35da73adfd869d33b16a4f44ab1a336f66925)

@elastic/enterprise-search-frontend
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector_total_stats.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-61c41618bb97778cb1fd7d0645ddc07e779f1b1c63a0e7684b0a6df664de0c91)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler_total_stats.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d8651696438142564028406ccab850b316a3fb3b6d5f38ca7e4e6804f6491d1b)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/search_index/pipelines/pipelines_json_configurations_logic.ts](https://github.com/elastic/kibana/pull/175178/files#diff-d77f51637904e4d4672b6b2d7f7ced6df73af142e8ba3fb5a074c700b5cf0fd0)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/accordion_list/accordion_list.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-f19e11825ff7d643f74a9f95cda32843685c28f0a7e7fc8b6d9f05dc659e0ee7)

@elastic/fleet 
- [ ]
[x-pack/plugins/fleet/.storybook/context/fixtures/integration.nginx.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0d84f41c1e7da6af3d1dc869fa722c384247beddf2a58de6c00bdedd3a835ed1)
- [ ]
[x-pack/plugins/fleet/common/authz.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-25b3fe4e87a154100ec03010e9c5f08a00790104352757922f03caf2c24536f8)
- [ ]
[x-pack/plugins/fleet/public/applications/fleet/sections/settings/hooks/use_confirm_modal.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-ea640c827015978c83ae51a221392f57124a6fccb90c977991133baa020f6487)
- [ ]
[x-pack/plugins/fleet/server/services/preconfiguration.ts](https://github.com/elastic/kibana/pull/175178/files#diff-82d451a43233c196f1c527436ec5b4afe16c669d25f912086ef83939fe04fbda)

@elastic/platform-deployment-management
- [ ]
[x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/form/form_errors_context.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-6fdd461892c891ebad0ba30154ecf28479dd10c63b756eb57e658a02cb62ae63)

@elastic/obs-ux-logs-team / @elastic/obs-ux-infra_services-team

- [ ]
[x-pack/plugins/infra/public/containers/metrics_source/source.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-f27b71c245d27489c408611dfd2d2c020e4e881b6db7dcaf0b2f0cf8401ce5a1)
- [ ]
[x-pack/plugins/infra/public/pages/metrics/metric_detail/components/section.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d782e8608b4b6ec1e5de15432ee899be94dfbdbedddc8d94b09c3399e2754294)
- [ ]
[x-pack/plugins/infra/public/pages/metrics/metric_detail/components/sub_section.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-eb598de689a9aa6536795e7f63a7c59a771c2c4e0a0bb81ee0102c8ce864620d)
- [ ]
[x-pack/plugins/logs_shared/public/components/logging/log_text_stream/vertical_scroll_panel.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-68bd0b43320ea3e59359e977d70f1c2e33518c1de5d97f39df17cb0a6a71cb99)
- [x]
[x-pack/plugins/observability_solution/logs_explorer/public/utils/proxies.ts](https://github.com/elastic/kibana/pull/175178/files#diff-134c464cedf12a2a2e1bceb1014d63e9ac7df4fd263ee5fe4ddd13fe3af7382d)
- [x]
[x-pack/plugins/synthetics/public/apps/synthetics/components/monitor_add_edit/form/validation.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-cf41bdb5d7247755b3b5dff0f428d847c9aa2f1ecff14c4e8fbfec5048e3ff91)
- [x]
[x-pack/plugins/synthetics/public/apps/synthetics/state/service_locations/api.ts](https://github.com/elastic/kibana/pull/175178/files#diff-571225171a2250a7b66cdc308eea2308cccdfc5ddf69c454dffd59d890947fe3)
- [x]
[x-pack/plugins/synthetics/public/utils/api_service/api_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-04d770eab9404afbf543d52e1ca2e869e0248f86ca2943d8811ca95a6a37f331)
- [x]
[x-pack/plugins/synthetics/server/routes/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-ddd7e79b79cf790fbd1798174b6f6a25cd869d1afd4ecf53f1a3febaa980f618)
- [x]
[x-pack/plugins/synthetics/server/synthetics_service/service_api_client.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b22608feca8f7a00a94d538f7a51c1be3bbd355d9966e5a1e4b4b2e84c663342)
- [x]
[x-pack/plugins/uptime/public/legacy_uptime/components/common/monitor_tags.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-840db8c32fd91ca5075b60203426a93bff6a3e522f7d65f0a9c5b02733071cf4)
- [x]
[x-pack/plugins/uptime/public/legacy_uptime/state/api/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-576a5e3c17bfaeaaf8f1c3df1cfc7f84021bf7ee234e7df77c38cd0afd90d573)
- [x]
[x-pack/plugins/uptime/public/utils/api_service/api_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-85df170f1ea77dc9faa8aaec88929babd7bd24ee78845ea5bb8e9ed43c19e051)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/get_snapshot_counts.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f80f1cca2be5a43785f840c2705b59732e4eb8b57f8879806600b3220e9bb234)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/search/find_potential_matches.ts](https://github.com/elastic/kibana/pull/175178/files#diff-80c8152e4da9f7d2fa42cd5dcf35a34c70cd86b32da08d0710620272ac4e9f62)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/search/query_context.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8692f1eec652074b463e4b8478116ba796ce5cd0bcc818755300b36e80baeb95)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/search/refine_potential_matches.ts](https://github.com/elastic/kibana/pull/175178/files#diff-7b93319a7e63eb6e09cbb3147b49f40ef794f684be024d62f094c72cfdb2693c)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/routes/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-5618c2b61f704802d87c620000f5500f2340605fbe8abe5a261864e83ed9eded)
- [x]
[x-pack/plugins/ux/public/application/ux_app.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-0bd45972562be4fcdad56b6fe2c2c9800775689067b0c2a956733e5c334b43c9)
- [x]
[x-pack/plugins/ux/public/components/app/rum_dashboard/ux_overview_fetchers.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8bfd9c637261e22d413a95546cb9dd54efcd41930646fbdf8081965f81b4dcf3)

@elastic/kibana-gis 
- [ ]
[x-pack/plugins/maps/public/classes/sources/es_source/es_source.ts](https://github.com/elastic/kibana/pull/175178/files#diff-23b9c9add47e2d51d022faf8e8527b46febf5d265fdddfb383bbc86b58257691)
- [ ]
[x-pack/plugins/maps/public/classes/styles/vector/properties/dynamic_style_property.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-b981aee9ac5aa5b1eb7f811eae5a461f15835f2d81d693b40a402fd55a8b9f59)
- [ ]
[x-pack/plugins/maps/public/classes/styles/vector/symbol_utils.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-94970fa194c5e647c78a36fe6c8894365780f320f77db6065572bec88ac5586b)
- [ ]
[x-pack/plugins/maps/public/lazy_wrapper.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-27e988b8e71057b5c527ff008ca6c92a545bbe29ddeb9ea2a461aeb5bdb498ae)

@elastic/observability-ui 
- [ ]
[x-pack/plugins/observability_shared/public/contexts/inspector/inspector_context.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-cd6617fddf50f9a5e29d8674a54dbd8d65e298f31fec6c2a9635bd39681b6910)

@elastic/security-defend-workflows
- [ ]
[x-pack/plugins/osquery/common/utility_types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-e1aaf9c0e4f18af25b940e2b0aa55fb274022fa5fd2e378276c88da6b0e7c392)

@elastic/security-solution
- [ ]
[x-pack/plugins/security_solution/common/endpoint/generate_data.ts](https://github.com/elastic/kibana/pull/175178/files#diff-12dc63d6524a714b19d487bcf75486270eea7d5d52e6d1ecdeaa935545f33ac0)
- [x]
[x-pack/plugins/security_solution/common/utility_types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8d3ac0c16b9803465d90e48032b32738dfe8ff891b152677542607db57cb684b)
- [ ]
[x-pack/plugins/security_solution/public/common/components/page/manage_query.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-43f472ce0931147aadfa34f11cbb0804c1ef968a999528f3ac70ac39977dde21)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/network/dns_top_domains.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f8273324b45291f2561273d33a0080807a82fb7deb08124d06418f2882360d5b)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentication_metric_failure.ts](https://github.com/elastic/kibana/pull/175178/files#diff-4653e6776fc5d5ab3dba81b9d1df1b23d936975d5770c6456eb6ecda99951b8b)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentications_area.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c69f65409bc0c3c1d986616357292a9506e02d5510f418e3969add19ed5c9073)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentications_bar.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0b2b3087618234227771b2c2c7b905c727225a158f21cdc7f70148ec22938ad8)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentications_metric_success.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c4ccd8146a7b8614dd2b431e552f0a9cdd2fa759e852f16898b1e4ca5ae31520)
- [ ]
[x-pack/plugins/security_solution/public/common/lib/kibana/hooks.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8aba26a2e24f78b4272485f28691a6315422c65537c9ae54ff5754b0bd75bc5d)
- [ ]
[x-pack/plugins/security_solution/public/detection_engine/rule_creation_ui/components/description_step/index.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-cfed12b5fe28617d39f22c2f5e5573e1f7c5bab15bc274245b71fefb0b67540f)
- [ ]
[x-pack/plugins/security_solution/public/management/components/endpoint_response_actions_list/components/actions_log_table.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-e15c09422e069163df1b0e68c612fe7000aa83c817bbca386f5a59a6251ccfab)
- [ ]
[x-pack/plugins/security_solution/scripts/endpoint/common/agent_downloads_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-74090a1d7f0d5bcef92cf0f90c279334c8742fc45dad51dcc733113124689847)
- [ ]
[x-pack/plugins/security_solution/server/endpoint/services/actions/clients/mocks.ts](https://github.com/elastic/kibana/pull/175178/files#diff-cd5726e4db2d4f93c2fa913032e9803facf1ed926ce0ba38864c0342d9ff968e)
- [ ]
[x-pack/plugins/security_solution/server/lib/detection_engine/routes/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-637b99199ff7a5c6e2cc30bf4a460118fc7357afe5f60bdfeb0cb724701fc405)
- [ ]
[x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/bulk_actions/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-288cb69918810a15b715a67fd6d978dfc6aaa64630b3f06ff5c9bf7485cb8cc7)
- [ ]
[x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/bulk_actions/validations.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b6c6d3cff1c78443a0b5d34b6ec820ce9fa8584b1a88c82b7fde100788655381)
- [ ]
[x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_dev_tool_content/routes/read_prebuilt_dev_tool_content_route.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f2f612dd995d2c059b2e28dde1009b16c361ce9e1ae4600343c47d3beacfb0a3)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Nick Partridge <nick.ryan.partridge@gmail.com>
Co-authored-by: Aleh Zasypkin <aleh.zasypkin@elastic.co>
Co-authored-by: Dario Gieselaar <dario.gieselaar@elastic.co>
Co-authored-by: achyutjhunjhunwala <achyut.jhunjhunwala@elastic.co>
Co-authored-by: Justin Kambic <jk@elastic.co>
Co-authored-by: Jan Monschke <jan.monschke@elastic.co>
2024-02-25 01:23:57 +00:00
Kurt
35656542eb
Config to toggle Custom Roles (#176200)
## Summary

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

While the security team works on Custom Roles for serverless, we want to
hide the content behind a feature flag.

An existing config option that was used to hide the Roles UI during the
initial phases of serverless has been repurposed, and will now toggle
both the Roles UI and the Roles Routes

`xpack.security.confg.ui.roleManagementEnabled` has been changed to
`xpack.security.confg.roleManagementEnabled` and will have to be set to
`true` in a config file while in serverless mode to show the Roles card
on the management screen and enable the UI/routes.

## Reviewers

Ive included a `viewer`:`changeme` user for testing (It will be removed
after approval).

## Testing

### xpack.security.config.roleManagementEnabled

1. In your `kibana.yml`, add
`xpack.security.confg.roleManagementEnabled: true`
2. Start up in serverless mode locally, login in with
`elastic_serverless`:`changeme`
3. Click `Project Settings` > `Management`
4. `Roles` card should display under `Other`
5. Navigate to `Roles`, it displays, but the `Edit Roles` page does not
work yet.

### Test as Viewer

1. In your `kibana.yml`, add either above option as you prefer 
2. Start up in serverless mode locally, login in with
`viewer`:`changeme`
3. Click `Project Settings` > `Management`
4. `Roles` card should NOT display under `Other` and the `roles` URL
should not work.

## Screenshots

Roles card
<img width="1281" alt="Screenshot 2024-02-05 at 3 22 12 PM"
src="a1285ada-7ff7-495f-88a6-9847b3245518">

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Aleh Zasypkin <aleh.zasypkin@gmail.com>
2024-02-20 16:40:49 -07:00
Yulia Čech
4d7f5930f4
[Console] Add a dev config for the editor migration (#176520)
## Summary

This PR adds a dev config to Console to enable a migration to the Monaco
editor. The config value is `false` by default and can be changed by
adding `console.dev.enableMonaco: true` to `kibana.dev.yml`. Also a new
custom Monaco language is registered for Console in the package
`kbn/monaco` and will be worked on behind the config flag iteratively in
the next weeks.
To not let the dev config get into 8.13 release, this PR will only be
merged **after** 8.13 has been branched.
After this PR is merged, the team will start re-implementing existing
Console features in the new Monaco editor, see
https://github.com/elastic/kibana/issues/176723 and
https://github.com/elastic/kibana/issues/176926

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-02-19 04:57:17 -07:00
Sébastien Loix
9db8d2558c
[Core] Deprecate nav link status (#176383) 2024-02-16 11:06:33 -07:00
Tre
986116133f
[FTR] Refactor toasts svc (#174222)
### Summary

Refactoring general ui service (test helpers), to a kbn package.
  - Optimize methods and drop some code duplication.
  
### Why 

  - Makes the service easily available from multiple code areas. 
- This is a preparation to potentially moving tests to plugins /
packages, where they would no longer be able to import thing from test
or x-pack/test but only from a package.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-02-14 09:24:20 +00:00
Jill Guyonnet
11fe56b586
[Fleet] Support output and Fleet server proxies on serverless (#175315)
Closes https://github.com/elastic/kibana/issues/165672

### Summary

This PR adds support for custom output and Fleet server hosts with
proxies in serverless mode:
- Proxies are re-enabled in serverless.
- It is possible to add custom Fleet server hosts in serverless, with
the constraint that the host URL must match the Elasticsearch URL of the
default host.
- New Elasticsearch outputs must also have the default host URL.

### Testing

The below requirements should be tested in serverless mode for
observability and security project types:
```sh
# elasticsearch
yarn es serverless --kill
# kibana: one of
yarn serverless-oblt
yarn serverless-security
```

⚠️ In addition, stateful mode should **not** be affected by any of these
changes.

#### Config

In order to test this change, you will need the following configuration
to mirror a serverless setup.

Create a `serverless.dev.yml` if you don't have one already and set a
project id (this is required for Fleet's `cloud.isServerlessEnabled` to
correctly be `true`):
```yaml
xpack.cloud.serverless.project_id: test-123
```

In `kibana.devl.yml`, make sure the default Fleet server hosts and
default output have the expected ids:
```yaml
xpack.fleet.fleetServerHosts:
  - id: default-fleet-server
    name: Default Fleet server
    is_default: true
    host_urls: ['https://host.docker.internal:8220']
xpack.fleet.outputs:
  - id: es-default-output
    name: Default output
    type: elasticsearch
    is_default: true
    is_default_monitoring: true
    hosts: ['https://host.docker.internal:9200']
```

#### Requirements

- [ ] User can create proxy configurations in the Fleet UI and API.
- [ ] User can create new Fleet server host via the UI
- The Fleet Server Hosts dropdown is disabled and set to the default
host URL
- [ ] User can create new Fleet server host via the API
- The request should succeed if the host URL is set the the default one
   - Otherwise the request should fail
- [ ] User can add a proxy config to the Fleet server host config
- [ ] User can select a custom Fleet Server host configuration from the
Agent policy settings page
- [ ] User can create new Fleet Elasticsearch output via the UI
- The Hosts dropdown is disabled and set to the default Elasticsearch
URL
- [ ] User can create new Fleet Elasticsearch output via the API
- The request should succeed if the host URL is set the the default one
   - Otherwise the request should fail
- [ ] User can add a proxy config to the Elasticsearch output
- [ ] User can select a custom Elasticsearch output configuration from
the Agent policy settings page
- [ ] User can create a custom Logstash output with proxy
- [ ] User can create a custom Kafka output with proxy

### Checklist

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

### Screenshots

Fleet settings (proxies available):

![Screenshot 2024-02-02 at 17 21
05](e94d3dfa-0467-48d0-9c99-c0288dfbba92)

![Screenshot 2024-02-02 at 17 21
15](eb815d25-0e4c-497f-899a-036a89a0d126)

Adding and editing a Fleet server host:

![Screenshot 2024-02-05 at 11 54
04](2ad713fd-7992-4285-8605-1841ab7f56ef)

![Screenshot 2024-02-02 at 17 22
00](dae30411-b023-4a3c-bba2-427dd3b8cd2a)

Adding and editing an Elasticsearch output:

![Screenshot 2024-02-02 at 17 22
23](cd6bdb90-d68a-4cf8-a1aa-34cf0eddc978)

![Screenshot 2024-02-02 at 17 22
38](3a9c8f04-2586-4e3a-afd4-7a192245bc15)

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2024-02-05 16:00:53 +01:00
Rodney Norris
c9509540ee
console: introduce config to enable/disable embedded console (#175736)
## Summary

Introduced the console.ui.embeddedEnabled (boolean) value to allow
disabling the embedded console in serverless security and observability
projects.

This also replaces an index management specific config value to do that
same thing which is removed here as well. Adding this console
configuration will allow us to have one value to set instead of N which
was the pattern I had started to use, but then decided against.

### 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)
2024-01-30 14:58:08 -06:00
Giorgos Bamparopoulos
35e7325753
Rename log_explorer and observability_log_explorer plugins (#175510)
- Rename `log_explorer` to `logs_explorer` and move it to an
`observability_solution` subfolder
- Rename `observability_log_explorer` to `observability_logs_explorer`
and move it to an `observability_solution` subfolder
- Use `renameFromRoot` to rename old configs 

Related to https://github.com/elastic/kibana/issues/171991 and
https://github.com/elastic/kibana/pull/170759

This PR is mostly focused on renaming the plugins, follow ups will be
created to change mentions of `log explorer`, `logExplorer` etc.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani01@gmail.com>
2024-01-26 16:10:27 +00:00
Rodney Norris
23135f51ed
[Serverless Search] index_management: show embedded console in serverless search (#175074)
## Summary

Adding the embedded dev console to Index Management pages for Serverless
Search.

### Screenshots
Index Management

![image](49065c9c-7f6d-4baa-a2f1-5b5bad652073)
Index Details Page

![image](8280e387-0278-4ad5-80d4-6bbf8d926423)


### Checklist

Delete any items that are not applicable to this PR.

- [ ]
[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
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
2024-01-26 08:21:23 -06:00
Mykola Harmash
abd3515dda
[Profiling,Infra,APM] Disable Profiling integration by default (#175201)
Closes https://github.com/elastic/kibana/issues/175016

## Summary

This PR disables the Profiling integration in Infra and APM by default
on the plugin configuration level because this integration require users
to first configure the main `profiling` plugin. On-prem users will have
to manually enable both integrations once they enabled the Universal
Profiling for their hosts. Cloud users will have Infra and APM
integrations enabled by default because on Cloud instances Universal
Profiling is already configured. A PR for the default Cloud settings
will follow after this one is merged.

Changes I've made:
* Disabled the Infra integration be default
* Introduced a new APM feature flag for the Profiling integration
* Made sure all the places in APM that rely on Profiling integration
respect the new feature flag
* Fixed a bug in APM when Universal Profiling was shown even though the
integration was disabled in UI settings


65dfbb5b-1850-4d18-a92a-6ad59e0436a3

## How To Test

1. Checkout locally
2. Make sure you don't have `xpack.infra.featureFlags.profilingEnabled`
already enabled in `kibana.yml`
3. Open kibana and make sure you don't see "Universal Profiling" tab in
Host and Service details
4. Enabled both flags in `kibana.yml`:
`xpack.infra.featureFlags.profilingEnabled` and
`xpack.apm.featureFlags.profilingIntegrationAvailable: true`
5. Check that now you see "Universal Profiling" tab in the details
screens in both Infra and APM
6. Go to Infra settings view and disable the Profiling integration, make
sure the tab disappears
7. 6. Go to APM settings view and disable the Profiling integration,
make sure the tab disappears

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2024-01-24 12:44:26 +01:00
Cecilia Bollini
de961a54a7
Remove Gainsight from cloud plugin (#172318)
## Summary
- Remove gainsight plugin from cloud plugin
- add config deprecation in fullstory



Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-01-09 10:21:56 +00:00
Mykola Harmash
3f9b2ce448
[ObsUX] Add Profiling tab to Asset Details (#171764)
## Summary

This adds a new "Universal Profiling" tab to asset details with a
flamegrapth for a selected host. The tab is behind a feature flag and is
disabled by default. It will be enabled by default for clound/onprem
once we implement Profiling empty state, serverless is tbd.

* Added two new endpoints for fetching profiling status (not used by the
FE yet) and flamegraph data.
* Added a `profilingEnabled` feature flag
* Added a new tab in the UI and integrated the Flamegraph embeddable

![CleanShot 2023-11-22 at 16 38
00@2x](acc789df-00c0-45af-878a-39fa5e2064cc)


## How to test

* Connect local kibana to oblt cluster that has Profiling configured
(e.g. edge)
* Add this to your dev `kibana.yml`
```
xpack.profiling.enabled: true
xpack.infra.profilingEnabled: true

# Direct ES URL on the oblt cluster that you're using, in case of edge it's https://edge-oblt.es.us-west2.gcp.elastic-cloud.com:443
xpack.profiling.elasticsearch.hosts: REMOTE_CLUSTER_ES_URL

# If needed create a new user on the remote oblt cluster
xpack.profiling.elasticsearch.username: REMOTE_CLUSTER_USER
xpack.profiling.elasticsearch.password: REMOTE_CLUSTER_PASWORD
```

* Open kibana, go to Hosts
* Open a flyout for one of the hosts and make sure you see the Profiling
tab with a flamegraph
* Open Host details as a full page and also make sure you see the new
tab

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-11-27 10:28:32 +01:00
Gerard Soldevila
1bc5b6f43e
Improve ui applications navigation functional tests (#171314)
## Summary

Fix https://github.com/elastic/kibana/issues/53356

The PR brings a couple of main improvements:
* `apps_menu.clickLink()` the logic is sometimes not able to find the
right element "by partial link name". Adding a `category` parameter
helped narrow it down, but in some scenarios our applications are not
under any section, so we can't leverage this parameter. I have rewritten
the case where no `category` is specified, in order to fetch all side
nav links first, and then filter for the matching ones. This seems to
behave correctly 100% of times (at least confirmed by FTR below).
* Adds the extra `category` parameter for those scenarios where it can
be passed. It helps disambiguate when multiple links might match the
text (e.g. _Recent_), and reduces the odds of tests being flaky.

---

➡️ Flaky Test Runner Pipeline - 200x 🔴

https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/4004

➡️ Rewrite
[apps_menu.clickLink()](5014947f6e)

➡️ Flaky Test Runner Pipeline - 150x 🟢 
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/4011

➡️ CI
[failed](https://buildkite.com/elastic/kibana-pull-request/builds/176461),
so I pushed [this
commit](943d533156).

➡️ One last Flaky Test Runner Pipeline - 200x 🟢
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/4028
2023-11-22 12:20:16 -05:00
Gerard Soldevila
721d68a890
Avoid ECONNRESET errors on idle timeout (#162947)
### Summary

Address https://github.com/elastic/kibana/issues/82002 and
https://github.com/elastic/kibana/issues/75440

I think I found a breakthrough for this flaky behavior. I run the
integration test 800x locally, with different settings:

Adjusting both the delayed emission (send 1 char at a time), and the
socket idle timeout to have exacly the same value (e.g. `10 millis`), I
managed to get the `ECONNRESET` 100% of the times.

Thus, IIUC the ECONNRESET happens when the client tries to send a
character over the socket and at the same time the server responds with
the idle timeout.

Adjusting the values so that the delay between character emissions is
significantly larger than the idle timeout, e.g. 20 vs 5, I get `socket
hang up` 100% of the times.

Flaky Test Runner Pipeline - 300x 🟢
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/4030
2023-11-22 08:53:35 +01:00
Alejandro Fernández Haro
55aebfdd2e
FullStory: use debounce before updating Page Vars (#171450) 2023-11-21 13:46:13 +00:00
Alejandro Fernández Haro
fd09c26d15
async-import plugins in the server side (#170856)
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-11-15 00:55:56 -07:00
Eyo O. Eyo
f27427b949
Removes duplicated RedirectAppLinks component (#170304)
## Summary

This PR removes the [duplicated RedirectAppLinks
component](https://github.com/elastic/kibana/blob/v8.10.4/src/plugins/kibana_react/public/app_links/redirect_app_link.tsx)
which has been marked as deprecated since
74a00fad20.

All references to the previous import declaration from
`@kbn/kibana-react-plugin/public` have been replaced with
`@kbn/shared-ux-link-redirect-app`, this change ensures that the current
app behaviour is preserved, and changes to match the expectation of the
new component have been applied where necessary.

Changes relating to the new `RedirectAppLinks` component; 
- The component does not accept a `className` anymore as it is not a
presentational component despite it being used as one previously,
there's change to make accommodation for how it had been used.
- The component introduces a`data-test-subj` attribute with the value
`kbnRedirectAppLink` on the dom node that wraps it's children.


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

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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-11-13 10:17:13 +01:00
Gerard Soldevila
6c5ffd2efa
Rework application_leave_confirm functional tests (#170449)
## Summary

Reworks https://github.com/elastic/kibana/issues/166838 for better
readability and maintainability.
Refactors `waitForUrlToBe`, moving it as part of the `browser.ts` API.

Flaky test runer pipeline - 100x  

https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3879
🔴 ➡️
be19f7efe4

https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3884
🟢
2023-11-10 10:23:30 +01:00
Nicolas Chaulet
bb3bbc9e94
[cloud plugin] Expose serverless.projectType (#170527) 2023-11-06 09:54:42 -07:00
Gerard Soldevila
8315d8c3fb
[application_deep_links] Unify / improve navigation between apps (#170228)
## Summary

Attempt at fixing https://github.com/elastic/kibana/issues/166893

PR [#168741](https://github.com/elastic/kibana/pull/168741) forgot to
update one of the tests to **exclusively** use `navigateToAppLinks`.
Thus, the impacted test had a duplicated navigation logic.

This PR:
* removes that unintended call (this should hopefully fix flakiness).
* simplifies and unifies test logic, improving readability.

Flaky test runner pipeline - 100x 🟢  
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3840
2023-11-02 10:04:51 +01:00
Mykola Harmash
78d2eda0ff
[ObsUX] Hide Alerts and rules dropdown behind feature flag in serverless (#169611)
Closes https://github.com/elastic/kibana/issues/169339

## Summary

* Hides the "Alerts and rule" dropdown in the Infra header behind a
feature flag in serverless
* Moves serverless infra tests to the `index.feature_flags.ts` to
prevent failures on MKI

![CleanShot 2023-10-24 at 09 38
40@2x](f9d47dcb-4b6c-4a39-a8cd-7fcd1a69ba80)


## How to test

* Run in serverless
* Make sure the Alerts and rules dropdown is not there anymore
* Run in stateful
* Make sure dropdown works as before
2023-10-26 09:39:15 +02:00
Pierre Gayvallet
e398e7bc51
[Core plugin system] Add dynamic contract resolving (#167113)
### Summary

Fix https://github.com/elastic/kibana/issues/166688

Implements dynamic contract resolving for plugins, allowing to retrieve
contracts after their respective lifecycle is completed, and therefore
working around cyclic dependencies.

In term of workflow execution, we're basically going from

<img width="842" alt="Screenshot 2023-09-27 at 08 09 27"
src="251637d1-ec97-4071-a445-2f59512ce187">
 
to:

<img width="1092" alt="Screenshot 2023-09-27 at 08 09 32"
src="de466cda-7e43-4fd3-81ec-4339d05d279d">

### API

This functionality is exposed by the now publicly exposed `plugins`
service contracts:

```ts
setup(core) {
  core.plugins.onSetup<{pluginA: SetupContractA, pluginB: SetupContractA}>('pluginA', 'pluginB')
      .then(({ pluginA, pluginB }) => {
        if(pluginA.found && pluginB.found) {
          // do something with pluginA.contract and pluginB.contract
        }
      });
}
```  

```ts
start(core) {
  core.plugins.onStart<{pluginA: StartContractA, pluginB: StartContractA}>('pluginA', 'pluginB')
      .then(({ pluginA, pluginB }) => {
        if(pluginA.found && pluginB.found) {
          // do something with pluginA.contract and pluginB.contract
        }
      });
}
```

**remark:** the `setup` contract exposed both `onSetup` and `onStart`,
while the `start` contract only exposed `onStart`. The intent is to
avoid fully disrupting the concept of lifecycle stages.

### Guardrails

To prevent developer from abusing this new API, or at least to add some
visibility on its adoption, plugins can only perforn dynamic contract
resolving against dependencies explicitly defined in their manifest:
- any required dependencies (*existing concept*)
- any optional dependencies (*existing concept*)
- any runtime dependencies (**new concept**)

Runtime dependencies must be specified using the new
`runtimePluginDependencies` field of a plugin's manifest.

```json
{
  "type": "plugin",
  "id": "@kbn/some-id",
  "owner": "@elastic/kibana-core",
  "plugin": {
    "id": "some-id",
    "...": "...",
    "runtimePluginDependencies" : ["someOtherPluginId"]
  }
}

```

Using the contract resolving API will throw at call time when trying to
resolve the contract for an undeclared dependency.

E.g this would throw at invocation time (not returning a rejected
promise - throw).

```ts
setup(core) {
  core.plugins.onSetup<{undeclaredDependency: SomeContract}>('undeclaredDependency');
}
```  

The reasoning behind throwing is that these errors should only occur
during the development process, and an hard fail is way more visible
than a promise rejection that should be more easily shallowed.

### Code reviews

This PR defines @elastic/kibana-core as codeowner of all `kibana.jsonc`
files in the `src/plugins` and `x-pack/plugins` directories, so that a
code review will be triggered whenever anyone changes something in any
manifest. The intent is to be able to monitor new usages of the feature,
via the addition of entries in the `runtimePluginDependencies` option of
the manifest.

### Remarks

Exposing this API, and therefore making possible cyclic dependencies
between plugins, opens the door to other questions.

For instance, cross-plugin type imports are not technically possible at
the moment, given that plugins are referencing each others via TS refs,
and refs forbid cyclic dependencies. Which means that to leverage this
to address cyclic dependency issues, the public types of **at least one
of the two** plugins will have to be extracted to a shared place (likely
a package).

Resolving, or trying to improve the developer experience around this
issue, is absolutely out of scope of the current PR (and the issue it
addresses).

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-10-24 02:32:09 -07:00
Elena Stoeva
6a6b83e60c
[Serverless][Index Management] Hide Storage size column in Data streams (#169280)
Fixes https://github.com/elastic/kibana/issues/167654

## Summary

This PR removes the Storage size column in Data stream in serverless as
the data stream stats API on serverless doesn't currently return the
storage size.

### How to test:

Verify that the column is not displayed in serverless:

1. Start Es with `yarn es serverless` and Kibana with `yarn
serverless-{es/oblt/security}`
2. Go to Stack Management -> Index Management -> Data Streams
3. Switch on the "Include stats" toggle
4. Verify that the "Storage size" column is not shown in the table.

Verify that the column is displayed in stateful:

1. Start Es with `yarn es snapshot` and Kibana with `yarn start`
2. Go to Stack Management -> Index Management -> Data Streams
3. Switch on the "Include stats" toggle
4. Verify that the "Storage size" column is shown in the table.


<!---
### 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
- [ ] 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)
-->
2023-10-23 18:05:23 +01:00
Tiago Costa
3ad58e91be
skip flaky suite (#166893) 2023-10-19 23:59:54 +01:00
Tiago Costa
ca81b33c90
skip flaky suite (#53356) 2023-10-19 17:18:07 +01:00
Christiane (Tina) Heiligers
e811b624ff
unskips application leave confirm & application deep links tests (#168741)
fix https://github.com/elastic/kibana/issues/166838
fix https://github.com/elastic/kibana/issues/166893
fix https://github.com/elastic/kibana/issues/75963

I modified the deep links tests because the side nav was overlaying the
in-app nav.
While, theoretically, the side nav should work for the tests, it tends
to be flaky.

I added logs for the url so that if these tests do fail, we'll have a
bit more data to go on for debugging.
These tests pass on local test runs.

latest flaky test runs (50):
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3604


- [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: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-10-19 06:03:24 -07:00
Yulia Čech
11b1bc77a6
[Index Management] Update editable index settings for Serverless (#168884)
## Summary

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

This PR limits which index settings are displayed on the index details
page, "Settings" tab in the edit mode. On serverless only a handful of
index settings will be editable by the user. The UI only prevents
displaying some index settings, but it's still possible for the user to
type in a setting that can't be edited. That is the case on dedicated as
well.

### How to test
1. Start Serverless ES and Kibana
2. Navigate to Index Management and create a test index
3. Click on the index name and on the details page click the tab
"Settings"
4. Toggle the "Edit mode" switch and verify that only editable settings
are displayed.

#### Screenshot
<img width="527" alt="Screenshot 2023-10-16 at 20 25 49"
src="e6678cca-3494-4c63-ae66-ace9c823d12d">
2023-10-18 15:22:54 +02:00
Christiane (Tina) Heiligers
ac80b2af63
Fix failing applications navigation test (#168302)
fix [#166677 ](https://github.com/elastic/kibana/issues/166677) 

- [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: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-10-16 17:19:18 -07:00
Mykola Harmash
3e8058bdf2
[Infra UI] Disable Infrastructure and Metrics alerts in Serverless (#167978)
Closes https://github.com/elastic/kibana/issues/164683

## Summary

This PR disables the infrastructure, metrics and logs alerts rule in
Serverless:
- Deletes the code responsible for the "Metric Anomaly" rule as it was
[previously disabled](https://github.com/elastic/kibana/pull/93813) with
plans to re-enable it as the previous PR describes but that never
happened.
- Adds feature flags for all three types of alert rules
- Prevents rules registration in serverless based on the feature flags
- Adds logic for showing/hiding items in the "Alerts and rules" dropdown
- Disables custom threshold rule in the Infra UI by default in
serverless as the rule needs to first be enabled by default by
@elastic/actionable-observability team
([context](https://elastic.slack.com/archives/C023GDA0WMP/p1696853751040269))

**Dropdown**
![CleanShot 2023-10-05 at 15 22
48@2x](fb7344c6-b5ee-4020-bd69-473dcd6be446)

**Host details**
![CleanShot 2023-10-05 at 15 23
02@2x](8164f82b-323c-4a2a-8cdc-c65a6c0f0c63)

### How to test

- Checkout locally Run in Serveless mode
- Enable, Infra plugin, custom threshold in Infra, and custom threshold
rule in general:
```
xpack.infra.enabled: true
xpack.infra.featureFlags.customThresholdAlertsEnabled: true
xpack.observability.unsafe.thresholdRule.enabled: true
```
- Go to `/app/metrics/hosts` and make sure there are no "Infrastructure"
and "Metrics" items in the "Alerts and rules" dropdown
- Click on "Manage rules" in the "Alerts and rules" dropdown, then
"Create rule" to open the rule selection flyout
- Make sure there are no rules for "Inventory", "Metrics" or "Logs"
threshold
- Run Kibana in traditional mode
- Make sure the "Alerts and rules" dropdown looks as usual and you can
create "Infrastructure" and "Metrics" alerts

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-10-12 15:24:30 +02:00
Vadim Kibana
f2bfbbd23b
Set correct ownership of older app-services code (#168209)
## Summary

Removes `@elastic/kibana-app-services` from `CODEOWNERS` file.

---------

Co-authored-by: Clint Andrew Hall <clint@clintandrewhall.com>
2023-10-09 18:57:26 +02:00
Sergi Massaneda
c7df950bd7
[Security Solution] Static config settings for serverless (#167856)
## Summary

This PR implements a standard way to have different static settings for
the serverless and ess (stateful) environments. It centralizes flags,
which were set using different approaches previously, in a single
configuration.

This aims to make it easier for developers to enable/disable parts of
the application in serverless projects.

Default:
```
  sideNavEnabled: true,
  ILMEnabled: true,
  ESQLEnabled: true,
```

Serverless:
```
xpack.securitySolution.offeringSettings: {
    sideNavEnabled: false, # Internal security side navigation disabled, the serverless global chrome navigation is used instead
    ILMEnabled: false, # Index Lifecycle Management (ILM) functionalities disabled, not supported by serverless Elasticsearch
    ESQLEnabled: false, # ES|QL disabled, not supported by serverless Elasticsearch
  }
```

### Consume the settings

#### Server 
- Plugin parsed `ConfigType`:
`this.config.settings.ESQLEnabled`

#### UI
- Plugin attribute: 
`this.configSettings.ESQLEnabled`.
- Components can access it from Kibana services:
`useKibana().services.configSettings.ESQLEnabled;`

---------

Co-authored-by: Vitalii Dmyterko <92328789+vitaliidm@users.noreply.github.com>
2023-10-09 15:11:51 +02:00
Carlos Crespo
2f8ce938be
[Infra UI] Disable infra logs UI in serverless (#168011)
closes https://github.com/elastic/kibana/issues/166977
## Summary

This PR creates a feature flag to disable logs UI features in
serverless.

_Serverless_

**Frontend routes**

<img width="1466" alt="image"
src="a856055b-f78b-4d47-b27e-678e19bdfae4">


`/logs/stream`
<img width="1714" alt="image"
src="83d50be2-ed3a-4441-b31c-1afe6f8fd0b9">

`/logs/log-categories`
<img width="1714" alt="image"
src="85cd369d-55b2-46a2-a61a-135c5f18e299">

`/logs/anomalies`
<img width="1714" alt="image"
src="d68e6f91-fe29-483f-931d-d05f4303effa">

**Server routes**

These will return 404

```
POST kbn://api/infra/log_analysis/results/log_entry_anomalies_datasets

POST kbn://api/infra/log_analysis/results/log_entry_anomalies

POST kbn://api/infra/log_analysis/results/log_entry_categories

POST kbn://api/infra/log_analysis/results/latest_log_entry_category_datasets_stats

POST kbn://api/infra/log_analysis/results/log_entry_category_datasets

POST kbn://api/infra/log_analysis/results/log_entry_category_examples

POST kbn://api/infra/log_analysis/results/log_entry_examples

POST kbn://api/infra/log_analysis/results/log_entry_datasets

POST kbn://api/infra/log_analysis/results/log_entry_rate_indices

POST kbn://api/infra/log_alerts/chart_preview_data                            
```


_Stateful_

<img width="1716" alt="image"
src="4406434f-78e4-437f-b3b5-1b03dc23f3c0">

**Server routes**

These will return 400 - currently there is no way to pass `version` via
dev tools

```
POST kbn://api/infra/log_analysis/results/log_entry_anomalies_datasets

POST kbn://api/infra/log_analysis/results/log_entry_anomalies

POST kbn://api/infra/log_analysis/results/log_entry_categories

POST kbn://api/infra/log_analysis/results/latest_log_entry_category_datasets_stats

POST kbn://api/infra/log_analysis/results/log_entry_category_datasets

POST kbn://api/infra/log_analysis/results/log_entry_category_examples

POST kbn://api/infra/log_analysis/results/log_entry_examples

POST kbn://api/infra/log_analysis/results/log_entry_datasets

POST kbn://api/infra/log_analysis/results/log_entry_rate_indices

POST kbn://api/infra/log_alerts/chart_preview_data                            
```

### How to test

### How to test

- Start a local es instance: `yarn es serverless --kill --clean
--license trial --ssl`
- Enable `infra` in the `serverless.oblt.dev.yml` file:
  - `xpack.infra.enabled: true`
- Start a local kibana instance: `yarn serverless-oblt --ssl` 
- Verify the items listed above both on serverless and stateful
2023-10-06 10:15:43 +02:00
Jeramy Soucy
335a751c00
Fixes rendering service config keys test (#167937)
Closes #167142
Closes #157126

## Summary

Fortifies the rendering service tests by introducing a retry loop to get
injected metadata after navigation. The `kbn-injected-metadata` tag that
we're relying on in this test gets removed some time after navigation
(e.g. to `.../render/core`). It appears that occasionally this test
fails to read the tag before it is removed.

Flaky test runner:
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3363

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-10-05 13:59:19 -04:00
Hannah Mudge
4d1bd84309
[Dashboard] Fix flaky pluggable actions test (#167926)
Closes https://github.com/elastic/kibana/issues/136460

## Summary

Similar to https://github.com/elastic/kibana/pull/167836, navigation
through `header.clickDashboard()` was flaky in the attached test because
the same `data-test-subj` was re-used for both the application-specific
top navigation **and** the reusable application listing page component:


8b6ba3d15f/src/plugins/navigation/public/top_nav_menu/top_nav_menu.tsx (L120-L124)


8b6ba3d15f/packages/content-management/table_list_view/src/table_list_view.tsx (L91-L96)

This meant that, when the referenced flaky test tried to navigation from
the Visualization listing page to the dashboard app in
`clearSavedObjectsFromAppLinks` via the header page object's
`clickDashboard` method, it wasn't actually waiting to navigate to the
dashboard app because it detected the `top-nav` data test subject from
the **visualization** listing page **and not** from the dashboard app.

Therefore, instead of navigating through the `header` method, I switched
to the new `navigateToAppFromAppsMenu`, which relies on the URL to
update to ensure navigation has occured rather than the `top-nav` data
test subject. I also added logic to close the flyout as part of the test
cleanup, since it was remaining open even after navigating to the
Visualizations listing page, which was getting in the way of the failure
screenshot.


### Flaky Test Runner

- Without closing of flyout:
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3323


![image](628f0da9-1e2a-45a9-b58b-dab92e345118)

- With closing of flyout:
https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3336
    

![image](3456db1a-9cee-4db9-a28d-4c0d1520a5ec)


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

### 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)
2023-10-04 11:21:02 -06:00
Mykola Harmash
48be97bea2
[Infra UI] Add custom threshold alerts for serverless (#167639)
Closes https://github.com/elastic/kibana/issues/166612

## Summary

- Adds a `customThresholdAlertsEnabled` feature flag
- Based on the feature flag shows an additional menu item in the alerts
dropdown
- Adds flyout component for rendering the custom alerts flyout

**Serverless**
<video
src="4fc79427-1e0c-4692-8525-b3b35e8a04e9"
controls="controls"></video>

**Traditional**

![Traditional](b2c16478-a40d-4312-a41e-5e34c98daa47)

## How to test

- Checkout locally and run in serverless mode (infra plugin on)
- Make sure you see the "Create custom threshold alert" menu item in the
"Alerts and rules" dropdown
- Click on the item and make sure you can create an alert
- Run Kibana in traditional mode and make sure the dropdown item is not
there
2023-10-04 15:06:55 +02:00
Carlos Crespo
ede81cfdb0
[Infra UI] Disable Osquery in serverless (#167233)
closes https://github.com/elastic/kibana/issues/163280

## Summary

Disables OSquery in serverless. 


<img width="1670" alt="image"
src="0ece0503-a5f3-46a1-a99b-29285088526c">

<img width="1670" alt="image"
src="5d20aaa4-7bdc-47e5-b9c2-469ecf62ab1f">


<img width="1670" alt="image"
src="97874aee-be98-4f0a-984a-562abbd4187d">

Osquery is now only used in the Asset Details flyout/full-page view. The
header component in the Asset Details now checks the feature flag object
to show/hide the OSquery tab.

### How to test

- Start a local es instance: `yarn es serverless --kill --clean
--license trial --ssl`
- Enable `infra` in the `serverless.oblt.dev.yml` file:
  - `xpack.infra.enabled: true`
- Start a local kibana instance: `yarn serverless-oblt --ssl` and see if
the side nav contains the Infrastructure item
- Navigate to `https://0.0.0.0:5601/ftw/app/metrics` and open the Asset
Details flyout from Inventory and Hosts View. Navigate to the details
view and check that Osquery tab isn't present.

- Confirm if OSquery tab is present in stateful.

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-10-04 12:48:30 +02:00
Faisal Kanout
d28227ca6a
[AO] Set the Custom Threshold ONLY available on stateful as Tech Preview (#167782)
## Summary
It fixes https://github.com/elastic/kibana/issues/167650
2023-10-02 20:34:16 +03:00
Kibana Machine
6d343316a4 skip failing test suite (#167142) 2023-10-02 12:35:50 -04:00