Skip to content

[Fleet] Add xpack.fleet.experimentalFeatures config setting#238840

Merged
jillguyonnet merged 8 commits intoelastic:mainfrom
jillguyonnet:fleet/238084-add-experimentalFeatures-fleet-config
Oct 17, 2025
Merged

[Fleet] Add xpack.fleet.experimentalFeatures config setting#238840
jillguyonnet merged 8 commits intoelastic:mainfrom
jillguyonnet:fleet/238084-add-experimentalFeatures-fleet-config

Conversation

@jillguyonnet
Copy link
Contributor

@jillguyonnet jillguyonnet commented Oct 14, 2025

Summary

Relates #238084

This PR adds a new xpack.fleet.experimentalFeatures config setting to allow enabling or disabling Fleet experimental features. Explicitly enabling or disabling using this setting overrides the default values defined here:

const _allowedExperimentalValues = {
showExperimentalShipperOptions: false,
useSpaceAwareness: true,
enableAutomaticAgentUpgrades: true,
enableSyncIntegrationsOnRemote: true,
enableSSLSecrets: false,
installedIntegrationsTabularUI: true,
enabledUpgradeAgentlessDeploymentsTask: true,
enablePackageRollback: false,
enableAutoInstallContentPackages: true,
enableOtelIntegrations: true,
enableAgentStatusAlerting: true,
enableAgentPrivilegeLevelChange: false,
};

Furthermore, this new setting takes precedence over the existing xpack.fleet.enableExperimental setting. The latter is now marked as deprecated to encourage users to use the new setting.

I have attempted to replace existing references to xpack.fleet.enableExperimental accordingly.

Docs change

Preview: docs/reference/configuration-reference/fleet-settings.md

Screenshot 2025-10-15 at 14 30 50

Checklist

  • Documentation was added for features that require explanation or tutorials
  • Unit or functional tests were updated or added to match the most common scenarios
  • If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the docker list
  • The PR description includes the appropriate Release Notes section, and the correct release_note:* label is applied per the guidelines
  • Review the backport guidelines and apply applicable backport:* labels.

Identify risks

Low probability risk of Fleet experimental features incorrectly enabled or disabled.

@jillguyonnet jillguyonnet added Team:Fleet Team label for Observability Data Collection Fleet team backport:skip This PR does not require backporting release_note:enhancement labels Oct 14, 2025
@jillguyonnet jillguyonnet self-assigned this Oct 14, 2025
@jillguyonnet jillguyonnet force-pushed the fleet/238084-add-experimentalFeatures-fleet-config branch from b5e0070 to 062b1d8 Compare October 14, 2025 14:12
@github-actions

This comment was marked as outdated.

@jillguyonnet jillguyonnet force-pushed the fleet/238084-add-experimentalFeatures-fleet-config branch from 062b1d8 to ba13441 Compare October 14, 2025 14:16
Copy link
Contributor

@MichelLosier MichelLosier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good so far! Just a few things to consider.

@jillguyonnet jillguyonnet marked this pull request as ready for review October 15, 2025 13:32
@jillguyonnet jillguyonnet requested review from a team as code owners October 15, 2025 13:32
@elasticmachine
Copy link
Contributor

Pinging @elastic/fleet (Team:Fleet)

@jillguyonnet jillguyonnet requested a review from nchaulet October 15, 2025 13:32
@nchaulet
Copy link
Member

nchaulet commented Oct 15, 2025

Looks like there is still some usage of the config directly in public https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/fleet/public/applications/fleet/sections/agent_policy/create_package_policy_page/components/steps/components/package_policy_input_stream.tsx#L93 (probably can clean as I do not think that experimenal feature exists anymore)

Copy link
Contributor

@florent-leborgne florent-leborgne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Docs update LGTM! Thank you

Copy link
Contributor

@juliaElastic juliaElastic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jillguyonnet
Copy link
Contributor Author

@elasticmachine merge upstream

@jillguyonnet
Copy link
Contributor Author

@elasticmachine merge upstream

@elasticmachine
Copy link
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
fleet 2.1MB 2.1MB -122.0B

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
fleet 178.6KB 178.7KB +180.0B

History

cc @jillguyonnet

@jillguyonnet jillguyonnet merged commit 0f27afc into elastic:main Oct 17, 2025
12 checks passed
@jillguyonnet jillguyonnet deleted the fleet/238084-add-experimentalFeatures-fleet-config branch October 17, 2025 14:40
nickpeihl pushed a commit to nickpeihl/kibana that referenced this pull request Oct 23, 2025
…c#238840)

## Summary

Relates elastic#238084

This PR adds a new `xpack.fleet.experimentalFeatures` config setting to
allow enabling or disabling Fleet experimental features. Explicitly
enabling or disabling using this setting overrides the default values
defined here:

https://github.com/elastic/kibana/blob/82b2d2d7b9c4a5d78fb12b53c655a8a72378a234/x-pack/platform/plugins/shared/fleet/common/experimental_features.ts#L10-L23

Furthermore, this new setting takes precedence over the existing
`xpack.fleet.enableExperimental` setting. The latter is now marked as
deprecated to encourage users to use the new setting.

I have attempted to replace existing references to
`xpack.fleet.enableExperimental` accordingly.

### Docs change

Preview:
[docs/reference/configuration-reference/fleet-settings.md](https://docs-v3-preview.elastic.dev/elastic/kibana/pull/238840/reference/configuration-reference/fleet-settings)

<img width="913" height="554" alt="Screenshot 2025-10-15 at 14 30 50"
src="https://github.com/user-attachments/assets/43815fa6-f7a4-4dcf-8cf5-34058e29d163"
/>

### Checklist

- [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
- [ ] 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] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
- [x] Review the [backport
guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)
and apply applicable `backport:*` labels.

### Identify risks

Low probability risk of Fleet experimental features incorrectly enabled
or disabled.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
NicholasPeretti pushed a commit to NicholasPeretti/kibana that referenced this pull request Oct 27, 2025
…c#238840)

## Summary

Relates elastic#238084

This PR adds a new `xpack.fleet.experimentalFeatures` config setting to
allow enabling or disabling Fleet experimental features. Explicitly
enabling or disabling using this setting overrides the default values
defined here:

https://github.com/elastic/kibana/blob/82b2d2d7b9c4a5d78fb12b53c655a8a72378a234/x-pack/platform/plugins/shared/fleet/common/experimental_features.ts#L10-L23

Furthermore, this new setting takes precedence over the existing
`xpack.fleet.enableExperimental` setting. The latter is now marked as
deprecated to encourage users to use the new setting.

I have attempted to replace existing references to
`xpack.fleet.enableExperimental` accordingly.

### Docs change

Preview:
[docs/reference/configuration-reference/fleet-settings.md](https://docs-v3-preview.elastic.dev/elastic/kibana/pull/238840/reference/configuration-reference/fleet-settings)

<img width="913" height="554" alt="Screenshot 2025-10-15 at 14 30 50"
src="https://github.com/user-attachments/assets/43815fa6-f7a4-4dcf-8cf5-34058e29d163"
/>

### Checklist

- [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
- [ ] 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] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
- [x] Review the [backport
guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)
and apply applicable `backport:*` labels.

### Identify risks

Low probability risk of Fleet experimental features incorrectly enabled
or disabled.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:skip This PR does not require backporting release_note:enhancement Team:Fleet Team label for Observability Data Collection Fleet team v9.3.0

10 participants