Skip to content

Commit 48171f4

Browse files
committed
Merge remote-tracking branch 'upstream/main' into task/trusted-devices-ui-update
2 parents 1bcf308 + 0778d0c commit 48171f4

1,239 files changed

Lines changed: 39671 additions & 16354 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.buildkite/ftr-manifests/ftr_platform_stateful_configs.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,6 @@ enabled:
234234
- x-pack/platform/test/functional_basic/apps/transform/edit_clone/config.ts
235235
- x-pack/platform/test/functional_basic/apps/transform/creation/runtime_mappings_saved_search/config.ts
236236
- x-pack/platform/test/functional_basic/apps/transform/permissions/config.ts
237-
- x-pack/platform/test/functional_basic/apps/transform/feature_controls/config.ts
238237
- x-pack/platform/test/functional_cors/config.ts
239238
- x-pack/platform/test/functional_embedded/config.ts
240239
- x-pack/platform/test/functional_execution_context/config.ts
@@ -252,13 +251,11 @@ enabled:
252251
- x-pack/platform/test/functional/apps/aiops/config.ts
253252
- x-pack/platform/test/functional/apps/api_keys/config.ts
254253
- x-pack/platform/test/functional/apps/canvas/config.ts
255-
- x-pack/platform/test/functional/apps/cross_cluster_replication/config.ts
256254
- x-pack/platform/test/functional/apps/dashboard/group1/config.ts
257255
- x-pack/platform/test/functional/apps/dashboard/group3/config.ts
258256
- x-pack/platform/test/functional/apps/discover/group1/config.ts
259257
- x-pack/platform/test/functional/apps/discover/group2/config.ts
260258
- x-pack/platform/test/functional/apps/discover/group3/config.ts
261-
- x-pack/platform/test/functional/apps/index_lifecycle_management/config.ts
262259
- x-pack/platform/test/functional/apps/index_management/config.ts
263260
- x-pack/platform/test/functional/apps/lens/group1/config.ts
264261
- x-pack/platform/test/functional/apps/lens/group2/config.ts
@@ -287,7 +284,6 @@ enabled:
287284
- x-pack/platform/test/functional/apps/license_management/config.ts
288285
- x-pack/platform/test/functional/apps/logstash/config.ts
289286
- x-pack/platform/test/functional/apps/managed_content/config.ts
290-
- x-pack/platform/test/functional/apps/management/config.ts
291287
- x-pack/platform/test/functional/apps/maps/group1/config.ts
292288
- x-pack/platform/test/functional/apps/maps/group2/config.ts
293289
- x-pack/platform/test/functional/apps/maps/group3/config.ts
@@ -325,7 +321,6 @@ enabled:
325321
- x-pack/platform/test/functional/apps/transform/actions/config.ts
326322
- x-pack/platform/test/functional/apps/transform/edit_clone/config.ts
327323
- x-pack/platform/test/functional/apps/transform/permissions/config.ts
328-
- x-pack/platform/test/functional/apps/transform/feature_controls/config.ts
329324
- x-pack/platform/test/functional/apps/user_profiles/config.ts
330325
- x-pack/platform/test/functional/apps/visualize/config.ts
331326
- x-pack/platform/test/functional/apps/watcher/config.ts

.buildkite/scout_ci_config.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,12 @@ plugins:
1212
- cloud_security_posture
1313
- console
1414
- contentManagementExamples
15+
- cross_cluster_replication
1516
- custom_branding
1617
- dashboard
1718
- dashboard_markdown
1819
- data
20+
- data_view_editor
1921
- data_views
2022
- data_view_management
2123
- dev_tools
@@ -31,6 +33,7 @@ plugins:
3133
- graph
3234
- grokdebugger
3335
- home
36+
- index_lifecycle_management
3437
- index_management
3538
- infra
3639
- ingest_hub
@@ -39,6 +42,7 @@ plugins:
3942
- kibana_overview
4043
- lens
4144
- logstash
45+
- management
4246
- maps
4347
- ml
4448
- monitoring

.buildkite/scripts/steps/kbn_ui_publish.sh

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -96,14 +96,11 @@ if [[ "${DRY_RUN:-}" == "1" ]]; then
9696
fi
9797

9898
report_step "Fetching Artifactory credentials"
99-
# The secret is stored at `kv/ci-shared/serverless/cloud-ui/kbn-ui-artifactory-registry`,
100-
# so that engineering orgs and CIs from kibana and cloud-ui can both access it without
101-
# granting broader vault permissions.
102-
# Secret layout:
99+
# Secret layout at `secret/ci/elastic-kibana/kbn-ui-artifactory`:
103100
# registry - full npm registry URL
104101
# npm_token - auth token
105-
NPM_REGISTRY="$(vault_kv_get kv/ci-shared/serverless/cloud-ui/kbn-ui-artifactory-registry registry_url)"
106-
NPM_TOKEN="$(vault_kv_get kv/ci-shared/serverless/cloud-ui/kbn-ui-artifactory-registry npm_token)"
102+
NPM_REGISTRY="$(vault_get kbn-ui-artifactory registry)"
103+
NPM_TOKEN="$(vault_get kbn-ui-artifactory npm_token)"
107104
if [[ -z "$NPM_REGISTRY" || -z "$NPM_TOKEN" ]]; then
108105
echo "ERROR: Artifactory credentials missing from vault." >&2
109106
exit 1

.eslintrc.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3002,8 +3002,8 @@ module.exports = {
30023002
'@kbn/*',
30033003
'!@kbn/i18n',
30043004
'!@kbn/i18n-react',
3005-
'!@kbn/core-chrome-layout-constants',
3006-
'!@kbn/core-chrome-layout-utils',
3005+
'!@kbn/ui-chrome-layout-constants',
3006+
'!@kbn/ui-chrome-layout-utils',
30073007
],
30083008
},
30093009
],

.github/CODEOWNERS

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -360,6 +360,8 @@ src/core/packages/user-storage/server-mocks @elastic/appex-sharedux
360360
src/core/test-helpers/kbn-server @elastic/kibana-core
361361
src/core/test-helpers/model-versions @elastic/kibana-core
362362
src/platform/kbn-ui/chrome-layout @elastic/appex-sharedux
363+
src/platform/kbn-ui/chrome-layout-constants @elastic/appex-sharedux
364+
src/platform/kbn-ui/chrome-layout-utils @elastic/appex-sharedux
363365
src/platform/kbn-ui/side-navigation @elastic/appex-sharedux
364366
src/platform/packages/private/analytics/utils/analytics_collection_utils @elastic/kibana-core
365367
src/platform/packages/private/dashboard/dashboard-navigation-options-common @elastic/kibana-presentation
@@ -846,6 +848,7 @@ src/platform/plugins/shared/data_view_editor @elastic/kibana-data-discovery
846848
src/platform/plugins/shared/data_view_field_editor @elastic/kibana-data-discovery
847849
src/platform/plugins/shared/data_view_management @elastic/kibana-data-discovery
848850
src/platform/plugins/shared/data_views @elastic/kibana-data-discovery
851+
src/platform/plugins/shared/data_views_as_code @elastic/kibana-data-discovery
849852
src/platform/plugins/shared/dev_tools @elastic/kibana-management
850853
src/platform/plugins/shared/developer_toolbar @elastic/appex-sharedux
851854
src/platform/plugins/shared/discover @elastic/kibana-data-discovery
@@ -914,7 +917,6 @@ src/platform/test/plugin_functional/plugins/core_plugin_route_timeouts @elastic/
914917
src/platform/test/plugin_functional/plugins/core_provider_plugin @elastic/kibana-core
915918
src/platform/test/plugin_functional/plugins/data_search @elastic/kibana-data-discovery
916919
src/platform/test/plugin_functional/plugins/elasticsearch_client_plugin @elastic/kibana-core
917-
src/platform/test/plugin_functional/plugins/eui_provider_dev_warning @elastic/appex-sharedux
918920
src/platform/test/plugin_functional/plugins/hardening @elastic/kibana-security
919921
src/platform/test/plugin_functional/plugins/index_patterns @elastic/kibana-data-discovery
920922
src/platform/test/plugin_functional/plugins/kbn_sample_panel_action @elastic/appex-sharedux
@@ -1188,6 +1190,7 @@ x-pack/platform/plugins/shared/inbox @elastic/security-genai-research-and-develo
11881190
x-pack/platform/plugins/shared/index_management @elastic/kibana-management
11891191
x-pack/platform/plugins/shared/inference @elastic/search-kibana
11901192
x-pack/platform/plugins/shared/inference_endpoint @elastic/search-kibana
1193+
x-pack/platform/plugins/shared/inference_workflows @elastic/search-kibana
11911194
x-pack/platform/plugins/shared/ingest_hub @elastic/obs-onboarding-team
11921195
x-pack/platform/plugins/shared/ingest_pipelines @elastic/kibana-management
11931196
x-pack/platform/plugins/shared/lens @elastic/kibana-visualizations
@@ -3404,6 +3407,8 @@ x-pack/solutions/observability/plugins/observability_shared/public/components/pr
34043407
/src/core/packages/chrome @elastic/appex-sharedux
34053408
/src/platform/kbn-ui/_tooling @elastic/appex-sharedux
34063409
/src/platform/kbn-ui/chrome-layout @elastic/appex-sharedux
3410+
/src/platform/kbn-ui/chrome-layout-constants @elastic/appex-sharedux
3411+
/src/platform/kbn-ui/chrome-layout-utils @elastic/appex-sharedux
34073412
/src/platform/kbn-ui/side-navigation @elastic/appex-sharedux
34083413
/x-pack/platform/test/serverless/api_integration/test_suites/favorites @elastic/appex-sharedux # Assigned per https://github.com/elastic/kibana/pull/200985
34093414
/src/platform/test/api_integration/apis/short_url/**/*.ts @elastic/appex-sharedux # Assigned per https://github.com/elastic/kibana/pull/200209/files#r1846654156

docs/extend/plugin-list.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ mapped_pages:
3232
| [dataViewFieldEditor](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/data_view_field_editor/README.md) | The reusable field editor across Kibana! |
3333
| [dataViewManagement](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/data_view_management) | WARNING: Missing or empty README. |
3434
| [dataViews](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/data_views/README.mdx) | The data views API provides a consistent method of structuring and formatting documents and field lists across the various Kibana apps. It's typically used in conjunction with <DocLink id="kibDevTutorialDataSearchAndSessions" section="high-level-search" text="SearchSource" /> for composing queries. |
35+
| [dataViewsAsCode](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/data_views_as_code/README.md) | This plugin contains the defined endpoints for data views as code, following the as code standards. |
3536
| [developerToolbar](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/developer_toolbar/README.md) | Plugin that enables the developer toolbar in Kibana development mode only. Other plugins can register custom items in the toolbar using the plugin contract. |
3637
| [devTools](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/dev_tools/README.md) | The ui/registry/dev_tools is removed in favor of the devTools plugin which exposes a register method in the setup contract. Registering app works mostly the same as registering apps in core.application.register. Routing will be handled by the id of the dev tool - your dev tool will be mounted when the URL matches /app/dev_tools#/<YOUR ID>. This API doesn't support angular, for registering angular dev tools, bootstrap a local module on mount into the given HTML element. |
3738
| [discover](https://github.com/elastic/kibana/blob/main/src/platform/plugins/shared/discover/README.md) | Contains the Discover application and the saved search embeddable. |
@@ -172,6 +173,7 @@ mapped_pages:
172173
| [indicesMetadata](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/private/indices_metadata/README.md) | Plugin for managing and retrieving metadata about indices in Kibana. This plugin collects and processes metadata from Elasticsearch indices, data streams, ILM policies, and index templates. |
173174
| [inference](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/inference/README.md) | The inference plugin is a central place to handle all interactions with the Elasticsearch Inference API and external LLM APIs. Its goals are: |
174175
| [inferenceEndpoint](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/inference_endpoint/README.md) | A Kibana plugin |
176+
| [inferenceWorkflows](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/inference_workflows/README.md) | Registers AI workflow steps (ai.prompt, ai.summarize, ai.classify) that use the inference plugin to power LLM-based automation in Kibana Workflows. |
175177
| [infra](https://github.com/elastic/kibana/blob/main/x-pack/solutions/observability/plugins/infra/README.md) | This is the home of the infra plugin, which aims to provide a solution for the infrastructure monitoring use-case within Kibana. |
176178
| [ingestHub](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/ingest_hub/README.md) | Cross-solution onboarding page for adding data sources and integrations. Gated behind the ingestHub.enabled feature flag. |
177179
| [ingestPipelines](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/ingest_pipelines/README.md) | The ingest_pipelines plugin provides Kibana support for Elasticsearch's ingest pipelines. |

docs/reference/configuration-reference/internationalization-settings.md

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,40 @@ When a user sets a preferred language, it is stored in their user profile and ta
3030

3131
{{kib}} resolves the display language using the following priority chain:
3232

33-
1. **User profile setting** — The language selected by the user in their profile or the user menu (must be one of `i18n.locales`).
34-
2. **`i18n.defaultLocale` config** — The server-wide default set in `kibana.yml`.
33+
1. **User profile setting** — The language selected by the user in their
34+
profile or the user menu (must be one of `i18n.locales`).
35+
2. **`KBN_LOCALE` cookie** — The most recently rendered locale on this
36+
browser. {{kib}} writes this cookie on every rendered response, so it
37+
tracks profile changes automatically. The cookie is the fallback used
38+
on surfaces where the profile isn't available — login pages, error
39+
pages, and any browsing the user does after signing out. Only used
40+
when the cookie value matches a locale {{kib}} can serve.
41+
3. **`Accept-Language` header** {applies_to}`serverless: ga` — On
42+
serverless deployments, {{kib}} consults the browser's
43+
`Accept-Language` preferences when neither the profile setting nor
44+
the cookie produces a match. The first weighted preference that's an
45+
exact match (region included) for an entry in `i18n.locales` wins.
46+
This step is skipped on traditional/self-managed deployments to keep
47+
existing users' language stable across upgrades.
48+
4. **`i18n.defaultLocale` config** — The server-wide default set in `kibana.yml`.
49+
50+
#### About the `KBN_LOCALE` cookie
51+
52+
{{kib}} sets a `KBN_LOCALE` cookie on every rendered response containing
53+
the resolved locale id (for example, `KBN_LOCALE=ja-JP`). Attributes:
54+
55+
- Path scoped to the {{kib}} `serverBasePath`.
56+
- `SameSite=Lax`, `Max-Age` of one year, and `Secure` when the response is over HTTPS.
57+
- `HttpOnly`. The value is a preference, not a secret, but {{kib}} does not need browser-side JavaScript to read it.
58+
59+
Privacy posture: `KBN_LOCALE` is a strictly-necessary preference cookie.
60+
It does not track the user, store identity, or enable cross-site activity.
61+
62+
To disable the cookie entirely, set `i18n.allowLocaleCookie: false` in
63+
`kibana.yml`. When disabled, the per-user language selection still works via
64+
user profiles; however, anonymous pages and pages visited after signing out
65+
will always fall back to `i18n.defaultLocale` (or `Accept-Language` on
66+
serverless deployments) rather than remembering the previously resolved locale.
3567

3668
## Example configurations
3769

@@ -51,4 +83,7 @@ i18n.defaultLocale: "en"
5183

5284
# 4. Legacy form — still works, logs a deprecation warning at startup:
5385
i18n.locale: "ja-JP"
54-
```
86+
87+
# 5. Disable the KBN_LOCALE cookie:
88+
i18n.allowLocaleCookie: false
89+
```

docs/reference/configuration-reference/internationalization-settings.yml

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
# This file is used to generate "i18n settings" page in the product docs
3-
# For the schema and an example refer to the automated settings reference:
3+
# For the schema and an example refer to the automated settings reference:
44
# https://github.com/elastic/docs-builder/blob/main/docs/syntax/automated_settings.md
55

66
product: Kibana
@@ -39,6 +39,19 @@ groups:
3939
ech: ga
4040
self: ga
4141

42+
- setting: i18n.allowLocaleCookie
43+
description: |
44+
When `true` (the default), {{kib}} writes a `KBN_LOCALE` cookie on every
45+
rendered response so the browser remembers the resolved locale across
46+
page loads, anonymous pages, and post-logout browsing. Set to `false`
47+
to disable the cookie.
48+
datatype: boolean
49+
default: "true"
50+
applies_to:
51+
stack: ga 9.5+
52+
ech: ga
53+
self: ga
54+
4255
- setting: i18n.locale
4356
description: |
4457
Set the {{kib}} interface language.
@@ -59,4 +72,4 @@ groups:
5972
applies_to:
6073
stack: deprecated 9.5+
6174
ech: ga
62-
self: ga
75+
self: ga

fleet_packages.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
},
3131
{
3232
"name": "elastic_agent",
33-
"version": "2.9.2"
33+
"version": "2.9.3"
3434
},
3535
{
3636
"name": "endpoint",

0 commit comments

Comments
 (0)