Skip to content

Commit 4504f2f

Browse files
authored
Merge branch 'main' into security/attack-alerts-alignment/POC-adhoc-attacks
2 parents aaacf1f + a067907 commit 4504f2f

1,172 files changed

Lines changed: 42174 additions & 15920 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.

.agents/skills/evals-write-spec/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ evaluate.describe('Suite name', { tag: tags.serverless.observability.complete },
2424

2525
evaluate('test name', async ({ executorClient, connector }) => {
2626
await executorClient.runExperiment(
27-
{ dataset, task },
27+
{ datasets: [dataset], task },
2828
evaluators
2929
);
3030
});
@@ -202,7 +202,7 @@ export function createEvaluateDataset({
202202
return async ({ dataset }) => {
203203
await executorClient.runExperiment(
204204
{
205-
dataset,
205+
datasets: [dataset],
206206
task: async ({ input }) => {
207207
const response = await chatClient.converse({ messages: [{ message: input.question }] });
208208
return { messages: response.messages, steps: response.steps };

.agents/skills/evals-write-spec/references/evaluator-patterns.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ type MyTaskOutput = TaskOutput & {
2020
};
2121

2222
await executorClient.runExperiment(
23-
{ dataset, task },
23+
{ datasets: [dataset], task },
2424
selectEvaluators<MyExample, MyTaskOutput>([
2525
{
2626
name: 'NonEmptyDocuments',
@@ -246,7 +246,7 @@ A common pattern passes both CODE and LLM evaluators to `runExperiment`:
246246

247247
```ts
248248
await executorClient.runExperiment(
249-
{ dataset, task },
249+
{ datasets: [dataset], task },
250250
[
251251
createCriteriaEvaluator({ evaluators }),
252252
createToolCallsEvaluator({ evaluators }),

.buildkite/scripts/common/setup_job_env.sh

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ EOF
130130
# Set up Kibana Evals secrets
131131
{
132132
if [[ "${KBN_EVALS:-}" =~ ^(1|true)$ ]]; then
133-
echo "KBN_EVALS was set - exposing evals connectors and ES export credentials"
133+
echo "KBN_EVALS was set - exposing evals connectors and export credentials"
134134

135135
KBN_EVALS_CONFIG_JSON="$(vault_get kbn-evals config | base64 -d)"
136136
# Validate config shape (safe; does not print secrets)
@@ -145,10 +145,6 @@ EOF
145145
export KBN_EVALS_CONFIG_B64
146146
KBN_EVALS_CONFIG_B64="$(printf '%s' "$KBN_EVALS_CONFIG_JSON" | base64)"
147147

148-
# Elasticsearch cluster for evaluation results export
149-
export EVALUATIONS_ES_URL="$(jq -r '.evaluationsEs.url // empty' <<<"$KBN_EVALS_CONFIG_JSON")"
150-
export EVALUATIONS_ES_API_KEY="$(jq -r '.evaluationsEs.apiKey // empty' <<<"$KBN_EVALS_CONFIG_JSON")"
151-
152148
# Optional: separate cluster for trace-based evaluators
153149
export TRACING_ES_URL="$(jq -r '.tracingEs.url // empty' <<<"$KBN_EVALS_CONFIG_JSON")"
154150
export TRACING_ES_API_KEY="$(jq -r '.tracingEs.apiKey // empty' <<<"$KBN_EVALS_CONFIG_JSON")"

.buildkite/scripts/steps/evals/run_suite.sh

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@ fi
1818
# The value should be the platform-level `pluginId` use-case identifier.
1919
# `@kbn/evals` defaults this to `kbn_evals`, but you can override via KBN_EVALS_TELEMETRY_PLUGIN_ID.
2020

21-
# Set a base run id from the Buildkite build. The evaluator fixture appends the
22-
# connector id to produce a unique run_id per model (e.g. bk-<build>-<connector>).
23-
# Correlation across models in the same build uses ci.buildkite.build_id which
24-
# is populated automatically from BUILDKITE_BUILD_ID in score_repository.ts.
21+
# Set a base build run ID from the Buildkite build. This is used as a seed for
22+
# generating deterministic per-task experiment IDs (not as the experiment_id itself).
23+
# Suite-run grouping in the UI uses metadata.ci.build_id which is populated
24+
# automatically from BUILDKITE_BUILD_ID in the Buildkite metadata.
2525
if [[ -z "${TEST_RUN_ID:-}" ]] && [[ -n "${BUILDKITE_BUILD_ID:-}" ]]; then
2626
export TEST_RUN_ID="bk-${BUILDKITE_BUILD_ID}"
2727
fi

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1190,6 +1190,7 @@ x-pack/platform/plugins/shared/inbox @elastic/security-genai-research-and-develo
11901190
x-pack/platform/plugins/shared/index_management @elastic/kibana-management
11911191
x-pack/platform/plugins/shared/inference @elastic/search-kibana
11921192
x-pack/platform/plugins/shared/inference_endpoint @elastic/search-kibana
1193+
x-pack/platform/plugins/shared/inference_workflows @elastic/search-kibana
11931194
x-pack/platform/plugins/shared/ingest_hub @elastic/obs-onboarding-team
11941195
x-pack/platform/plugins/shared/ingest_pipelines @elastic/kibana-management
11951196
x-pack/platform/plugins/shared/lens @elastic/kibana-visualizations

docs/extend/plugin-list.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ mapped_pages:
153153
| [enterpriseSearch](https://github.com/elastic/kibana/blob/main/x-pack/solutions/search/plugins/enterprise_search/README.md) | This plugin provides Kibana user interfaces for managing the Enterprise Search solution and its products, App Search and Workplace Search. |
154154
| [entityManager](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/entity_manager/README.md) | This plugin provides access to observed entity data, such as information about hosts, pods, containers, services, and more. |
155155
| [entityStore](https://github.com/elastic/kibana/blob/main/x-pack/solutions/security/plugins/entity_store/README.md) | Central place for Entities management and logs extraction. |
156-
| [evals](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/evals/README.md) | The Evals plugin provides an in-Kibana UI for browsing LLM evaluation run results, per-evaluator statistics, and OpenTelemetry traces produced by the @kbn/evals evaluation framework. |
156+
| [evals](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/evals/README.md) | The Evals plugin provides an in-Kibana UI for browsing LLM evaluation experiment results, per-evaluator statistics, and OpenTelemetry traces produced by the @kbn/evals evaluation framework. |
157157
| [eventLog](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/event_log/README.md) | The event log plugin provides a persistent history of alerting and action activities. |
158158
| [exploratoryView](https://github.com/elastic/kibana/blob/main/x-pack/solutions/observability/plugins/exploratory_view/README.md) | A shared component for visualizing observability data types via lens embeddable. For further details. |
159159
| [features](https://github.com/elastic/kibana/blob/main/x-pack/platform/plugins/shared/features/README.md) | The features plugin enhance Kibana with a per-feature privilege system. |
@@ -173,6 +173,7 @@ mapped_pages:
173173
| [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. |
174174
| [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: |
175175
| [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. |
176177
| [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. |
177178
| [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. |
178179
| [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

oas_docs/output/kibana.serverless.yaml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71975,6 +71975,7 @@ components:
7197571975
references:
7197671976
items:
7197771977
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
71978+
maxItems: 10000
7197871979
type: array
7197971980
rows:
7198071981
description: Array of operations to split the datatable rows by
@@ -73240,6 +73241,7 @@ components:
7324073241
references:
7324173242
items:
7324273243
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
73244+
maxItems: 10000
7324373245
type: array
7324473246
rows:
7324573247
description: Array of operations to split the datatable rows by
@@ -75705,6 +75707,7 @@ components:
7570575707
references:
7570675708
items:
7570775709
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
75710+
maxItems: 10000
7570875711
type: array
7570975712
sampling:
7571075713
default: 1
@@ -76588,6 +76591,7 @@ components:
7658876591
references:
7658976592
items:
7659076593
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
76594+
maxItems: 10000
7659176595
type: array
7659276596
sampling:
7659376597
default: 1
@@ -77772,6 +77776,7 @@ components:
7777277776
references:
7777377777
items:
7777477778
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
77779+
maxItems: 10000
7777577780
type: array
7777677781
sampling:
7777777782
default: 1
@@ -78470,6 +78475,7 @@ components:
7847078475
references:
7847178476
items:
7847278477
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
78478+
maxItems: 10000
7847378479
type: array
7847478480
sampling:
7847578481
default: 1
@@ -81597,6 +81603,7 @@ components:
8159781603
references:
8159881604
items:
8159981605
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
81606+
maxItems: 10000
8160081607
type: array
8160181608
time_range:
8160281609
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-es-query-server-timeRangeSchema'
@@ -82478,6 +82485,7 @@ components:
8247882485
references:
8247982486
items:
8248082487
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
82488+
maxItems: 10000
8248182489
type: array
8248282490
sampling:
8248382491
default: 1
@@ -83977,6 +83985,7 @@ components:
8397783985
references:
8397883986
items:
8397983987
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
83988+
maxItems: 10000
8398083989
type: array
8398183990
sampling:
8398283991
default: 1
@@ -84199,6 +84208,7 @@ components:
8419984208
references:
8420084209
items:
8420184210
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
84211+
maxItems: 10000
8420284212
type: array
8420384213
sampling:
8420484214
default: 1
@@ -87810,6 +87820,7 @@ components:
8781087820
references:
8781187821
items:
8781287822
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
87823+
maxItems: 10000
8781387824
type: array
8781487825
sampling:
8781587826
default: 1
@@ -88876,6 +88887,7 @@ components:
8887688887
references:
8887788888
items:
8887888889
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
88890+
maxItems: 10000
8887988891
type: array
8888088892
sampling:
8888188893
default: 1
@@ -92112,6 +92124,7 @@ components:
9211292124
references:
9211392125
items:
9211492126
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
92127+
maxItems: 10000
9211592128
type: array
9211692129
sampling:
9211792130
default: 1
@@ -93005,6 +93018,7 @@ components:
9300593018
references:
9300693019
items:
9300793020
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
93021+
maxItems: 10000
9300893022
type: array
9300993023
sampling:
9301093024
default: 1
@@ -93412,6 +93426,7 @@ components:
9341293426
references:
9341393427
items:
9341493428
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
93429+
maxItems: 10000
9341593430
type: array
9341693431
region:
9341793432
additionalProperties: false
@@ -93585,6 +93600,7 @@ components:
9358593600
references:
9358693601
items:
9358793602
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
93603+
maxItems: 10000
9358893604
type: array
9358993605
region:
9359093606
anyOf:
@@ -96748,6 +96764,7 @@ components:
9674896764
references:
9674996765
items:
9675096766
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
96767+
maxItems: 10000
9675196768
type: array
9675296769
sampling:
9675396770
default: 1
@@ -97343,6 +97360,7 @@ components:
9734397360
references:
9734497361
items:
9734597362
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
97363+
maxItems: 10000
9734697364
type: array
9734797365
sampling:
9734897366
default: 1
@@ -98206,6 +98224,7 @@ components:
9820698224
references:
9820798225
items:
9820898226
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
98227+
maxItems: 10000
9820998228
type: array
9821098229
sampling:
9821198230
default: 1
@@ -99099,6 +99118,7 @@ components:
9909999118
references:
9910099119
items:
9910199120
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
99121+
maxItems: 10000
9910299122
type: array
9910399123
sampling:
9910499124
default: 1
@@ -100624,6 +100644,7 @@ components:
100624100644
references:
100625100645
items:
100626100646
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
100647+
maxItems: 10000
100627100648
type: array
100628100649
sampling:
100629100650
default: 1
@@ -101523,6 +101544,7 @@ components:
101523101544
references:
101524101545
items:
101525101546
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
101547+
maxItems: 10000
101526101548
type: array
101527101549
sampling:
101528101550
default: 1
@@ -103404,6 +103426,7 @@ components:
103404103426
references:
103405103427
items:
103406103428
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
103429+
maxItems: 10000
103407103430
type: array
103408103431
styling:
103409103432
$ref: '#/components/schemas/Kibana_HTTP_APIs_xyStyling'
@@ -103543,6 +103566,7 @@ components:
103543103566
references:
103544103567
items:
103545103568
$ref: '#/components/schemas/Kibana_HTTP_APIs_kbn-content-management-utils-referenceSchema'
103569+
maxItems: 10000
103546103570
type: array
103547103571
styling:
103548103572
$ref: '#/components/schemas/Kibana_HTTP_APIs_xyStyling'

0 commit comments

Comments
 (0)