# Backport
This will backport the following commits from `main` to `8.19`:
- [Update TTFMP documentation for meta fields.
(#221807)](https://github.com/elastic/kibana/pull/221807)
<!--- Backport version: 9.6.6 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)
<!--BACKPORT [{"author":{"name":"Abdul Wahab
Zahid","email":"awahab07@yahoo.com"},"sourceCommit":{"committedDate":"2025-06-10T22:14:05Z","message":"Update
TTFMP documentation for meta fields. (#221807)\n\nEnhances the
performance metrics documentation by explaining how\nto use the
`meta.description` field for contextualizing render time\nevents and how
to track subsequent page or section loads
using\n`onPageRefreshStart`.\n\n\n- Added a section describing the
default meaning of render time and how\nto provide a custom
`description` in the `meta` field of `onPageReady`\nfor more precise
event context.\n- Documented the use of `onPageRefreshStart` to
distinguish between\ninitial loads and subsequent refreshes, clarifying
that\n`meta.isInitialLoad` is set to `false` for refreshes and `true`
by\ndefault.\n- Included code examples and sample indexed event
structures for
both\nfeatures.","sha":"ca05a06f00e013a18198cb46ce051d64f0d3f4b1","branchLabelMapping":{"^v9.1.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","backport:prev-minor","v8.18.0","v9.1.0","v8.19.0"],"title":"Update
TTFMP documentation for meta
fields.","number":221807,"url":"https://github.com/elastic/kibana/pull/221807","mergeCommit":{"message":"Update
TTFMP documentation for meta fields. (#221807)\n\nEnhances the
performance metrics documentation by explaining how\nto use the
`meta.description` field for contextualizing render time\nevents and how
to track subsequent page or section loads
using\n`onPageRefreshStart`.\n\n\n- Added a section describing the
default meaning of render time and how\nto provide a custom
`description` in the `meta` field of `onPageReady`\nfor more precise
event context.\n- Documented the use of `onPageRefreshStart` to
distinguish between\ninitial loads and subsequent refreshes, clarifying
that\n`meta.isInitialLoad` is set to `false` for refreshes and `true`
by\ndefault.\n- Included code examples and sample indexed event
structures for
both\nfeatures.","sha":"ca05a06f00e013a18198cb46ce051d64f0d3f4b1"}},"sourceBranch":"main","suggestedTargetBranches":["9.0","8.18","8.19"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"8.18","label":"v8.18.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/221807","number":221807,"mergeCommit":{"message":"Update
TTFMP documentation for meta fields. (#221807)\n\nEnhances the
performance metrics documentation by explaining how\nto use the
`meta.description` field for contextualizing render time\nevents and how
to track subsequent page or section loads
using\n`onPageRefreshStart`.\n\n\n- Added a section describing the
default meaning of render time and how\nto provide a custom
`description` in the `meta` field of `onPageReady`\nfor more precise
event context.\n- Documented the use of `onPageRefreshStart` to
distinguish between\ninitial loads and subsequent refreshes, clarifying
that\n`meta.isInitialLoad` is set to `false` for refreshes and `true`
by\ndefault.\n- Included code examples and sample indexed event
structures for
both\nfeatures.","sha":"ca05a06f00e013a18198cb46ce051d64f0d3f4b1"}},{"branch":"8.19","label":"v8.19.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
Co-authored-by: Abdul Wahab Zahid <awahab07@yahoo.com>
# Backport
This will backport the following commits from `main` to `8.19`:
- [[Security Assistant] Adds BuildKite pipeline for running Security
GenAI Evaluations weekly
(#215254)](https://github.com/elastic/kibana/pull/215254)
<!--- Backport version: 9.6.6 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)
<!--BACKPORT [{"author":{"name":"Garrett
Spong","email":"spong@users.noreply.github.com"},"sourceCommit":{"committedDate":"2025-04-24T17:46:57Z","message":"[Security
Assistant] Adds BuildKite pipeline for running Security GenAI
Evaluations weekly (#215254)\n\n## Summary\n\nIntroduces a new
`security_solution/gen_ai_evals.yml` BuildKite pipeline\nfor
automatically running our Assistant and Attack Discovery
evaluation\nsuites weekly.\n\n### To Run Locally:\nEnsure you are
authenticated with vault for LLM + LangSmith creds:\n\n> See
[internal\ndocs](https://github.com/elastic/infra/blob/master/docs/vault/README.md#login-with-your-okta)\nfor
setup/login instructions.\n\nFetch Connectors and LangSmith creds:\n\n>
[!NOTE]\n> In discussion with @elastic/kibana-operations it was
preferred to use\nthe ci-prod secrets vault, so we cannot self-manage
the secrets. To test\nthis locally though, you can grab the secrets and
follow the\ninstructions in this
[paste\nbin](https://p.elstc.co/paste/q7k+zYOc#PN0kasw11u2J0XWC2Ls5PMNWreKzKTpgWA1wtsPzeH+).\n\n```\ncd
x-pack/test/security_solution_api_integration\nnode
scripts/genai/vault/retrieve_secrets.js \n```\n\n\nNavigate to api
integration directory, load the env vars, and start\nserver:\n```\ncd
x-pack/test/security_solution_api_integration\nexport
KIBANA_SECURITY_TESTING_AI_CONNECTORS=$(base64 -w 0 <
scripts/genai/vault/connector_config.json) && export
KIBANA_SECURITY_TESTING_LANGSMITH_KEY=$(base64 -w 0 <
scripts/genai/vault/langsmith_key.txt)\nyarn
genai_evals:server:ess\n```\n\nThen in another terminal, load vars and
run the tests:\n```\ncd
x-pack/test/security_solution_api_integration\nexport
KIBANA_SECURITY_TESTING_AI_CONNECTORS=$(base64 -w 0 <
scripts/genai/vault/connector_config.json) && export
KIBANA_SECURITY_TESTING_LANGSMITH_KEY=$(base64 -w 0 <
scripts/genai/vault/langsmith_key.txt)\nyarn
genai_evals🏃ess\n```\n\n### To manually run on
BuildKite:\nNavigate
to\n[BuildKite](https://buildkite.com/elastic?filter=ftr-security-solution-gen-ai-evaluations)\nand
run `ftr-security-solution-gen-ai-evaluations` pipeline.\n\n### To
manually run on BuildKite for specific PR:\nIn
`.buildkite/ftr_security_stateful_configs.yml`, temporarily move
the\n`genai/evaluations/trial_license_complete_tier/configs/ess.config.ts`\nline
down to the `enabled` section. Will see if we can do this
without\nrequiring a commit. @elastic/kibana-operations is it possible
to set a\nbuildkite env var that can be read in FTR tests when a
specific GitHub\nlabel is added to the PR? I.e. can I create a
`SecurityGenAI:Run Evals`\nlabel that when added will run this suite as
part of the build?\n\n> [!NOTE]\n> Currently the connectors secrets only
include `gpt-4o` and\n`gpt-4o-mini`. Waiting on finalized list w/
credentials from @jamesspi\nand @peluja1012 and then we can have ops
update using the scripts\nincluded in this
PR.\n\n---------\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\nCo-authored-by:
Patryk Kopycinski
<patryk.kopycinski@elastic.co>","sha":"e57663a0cf5a1692a5be10413c1d745dd260a24f","branchLabelMapping":{"^v9.1.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","Team:Security
Generative AI","Feature:Assistant
Evaluation","backport:version","v9.1.0","v8.19.0","ci:security-genai-run-evals"],"title":"[Security
Assistant] Adds BuildKite pipeline for running Security GenAI
Evaluations
weekly","number":215254,"url":"https://github.com/elastic/kibana/pull/215254","mergeCommit":{"message":"[Security
Assistant] Adds BuildKite pipeline for running Security GenAI
Evaluations weekly (#215254)\n\n## Summary\n\nIntroduces a new
`security_solution/gen_ai_evals.yml` BuildKite pipeline\nfor
automatically running our Assistant and Attack Discovery
evaluation\nsuites weekly.\n\n### To Run Locally:\nEnsure you are
authenticated with vault for LLM + LangSmith creds:\n\n> See
[internal\ndocs](https://github.com/elastic/infra/blob/master/docs/vault/README.md#login-with-your-okta)\nfor
setup/login instructions.\n\nFetch Connectors and LangSmith creds:\n\n>
[!NOTE]\n> In discussion with @elastic/kibana-operations it was
preferred to use\nthe ci-prod secrets vault, so we cannot self-manage
the secrets. To test\nthis locally though, you can grab the secrets and
follow the\ninstructions in this
[paste\nbin](https://p.elstc.co/paste/q7k+zYOc#PN0kasw11u2J0XWC2Ls5PMNWreKzKTpgWA1wtsPzeH+).\n\n```\ncd
x-pack/test/security_solution_api_integration\nnode
scripts/genai/vault/retrieve_secrets.js \n```\n\n\nNavigate to api
integration directory, load the env vars, and start\nserver:\n```\ncd
x-pack/test/security_solution_api_integration\nexport
KIBANA_SECURITY_TESTING_AI_CONNECTORS=$(base64 -w 0 <
scripts/genai/vault/connector_config.json) && export
KIBANA_SECURITY_TESTING_LANGSMITH_KEY=$(base64 -w 0 <
scripts/genai/vault/langsmith_key.txt)\nyarn
genai_evals:server:ess\n```\n\nThen in another terminal, load vars and
run the tests:\n```\ncd
x-pack/test/security_solution_api_integration\nexport
KIBANA_SECURITY_TESTING_AI_CONNECTORS=$(base64 -w 0 <
scripts/genai/vault/connector_config.json) && export
KIBANA_SECURITY_TESTING_LANGSMITH_KEY=$(base64 -w 0 <
scripts/genai/vault/langsmith_key.txt)\nyarn
genai_evals🏃ess\n```\n\n### To manually run on
BuildKite:\nNavigate
to\n[BuildKite](https://buildkite.com/elastic?filter=ftr-security-solution-gen-ai-evaluations)\nand
run `ftr-security-solution-gen-ai-evaluations` pipeline.\n\n### To
manually run on BuildKite for specific PR:\nIn
`.buildkite/ftr_security_stateful_configs.yml`, temporarily move
the\n`genai/evaluations/trial_license_complete_tier/configs/ess.config.ts`\nline
down to the `enabled` section. Will see if we can do this
without\nrequiring a commit. @elastic/kibana-operations is it possible
to set a\nbuildkite env var that can be read in FTR tests when a
specific GitHub\nlabel is added to the PR? I.e. can I create a
`SecurityGenAI:Run Evals`\nlabel that when added will run this suite as
part of the build?\n\n> [!NOTE]\n> Currently the connectors secrets only
include `gpt-4o` and\n`gpt-4o-mini`. Waiting on finalized list w/
credentials from @jamesspi\nand @peluja1012 and then we can have ops
update using the scripts\nincluded in this
PR.\n\n---------\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\nCo-authored-by:
Patryk Kopycinski
<patryk.kopycinski@elastic.co>","sha":"e57663a0cf5a1692a5be10413c1d745dd260a24f"}},"sourceBranch":"main","suggestedTargetBranches":["8.19"],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/215254","number":215254,"mergeCommit":{"message":"[Security
Assistant] Adds BuildKite pipeline for running Security GenAI
Evaluations weekly (#215254)\n\n## Summary\n\nIntroduces a new
`security_solution/gen_ai_evals.yml` BuildKite pipeline\nfor
automatically running our Assistant and Attack Discovery
evaluation\nsuites weekly.\n\n### To Run Locally:\nEnsure you are
authenticated with vault for LLM + LangSmith creds:\n\n> See
[internal\ndocs](https://github.com/elastic/infra/blob/master/docs/vault/README.md#login-with-your-okta)\nfor
setup/login instructions.\n\nFetch Connectors and LangSmith creds:\n\n>
[!NOTE]\n> In discussion with @elastic/kibana-operations it was
preferred to use\nthe ci-prod secrets vault, so we cannot self-manage
the secrets. To test\nthis locally though, you can grab the secrets and
follow the\ninstructions in this
[paste\nbin](https://p.elstc.co/paste/q7k+zYOc#PN0kasw11u2J0XWC2Ls5PMNWreKzKTpgWA1wtsPzeH+).\n\n```\ncd
x-pack/test/security_solution_api_integration\nnode
scripts/genai/vault/retrieve_secrets.js \n```\n\n\nNavigate to api
integration directory, load the env vars, and start\nserver:\n```\ncd
x-pack/test/security_solution_api_integration\nexport
KIBANA_SECURITY_TESTING_AI_CONNECTORS=$(base64 -w 0 <
scripts/genai/vault/connector_config.json) && export
KIBANA_SECURITY_TESTING_LANGSMITH_KEY=$(base64 -w 0 <
scripts/genai/vault/langsmith_key.txt)\nyarn
genai_evals:server:ess\n```\n\nThen in another terminal, load vars and
run the tests:\n```\ncd
x-pack/test/security_solution_api_integration\nexport
KIBANA_SECURITY_TESTING_AI_CONNECTORS=$(base64 -w 0 <
scripts/genai/vault/connector_config.json) && export
KIBANA_SECURITY_TESTING_LANGSMITH_KEY=$(base64 -w 0 <
scripts/genai/vault/langsmith_key.txt)\nyarn
genai_evals🏃ess\n```\n\n### To manually run on
BuildKite:\nNavigate
to\n[BuildKite](https://buildkite.com/elastic?filter=ftr-security-solution-gen-ai-evaluations)\nand
run `ftr-security-solution-gen-ai-evaluations` pipeline.\n\n### To
manually run on BuildKite for specific PR:\nIn
`.buildkite/ftr_security_stateful_configs.yml`, temporarily move
the\n`genai/evaluations/trial_license_complete_tier/configs/ess.config.ts`\nline
down to the `enabled` section. Will see if we can do this
without\nrequiring a commit. @elastic/kibana-operations is it possible
to set a\nbuildkite env var that can be read in FTR tests when a
specific GitHub\nlabel is added to the PR? I.e. can I create a
`SecurityGenAI:Run Evals`\nlabel that when added will run this suite as
part of the build?\n\n> [!NOTE]\n> Currently the connectors secrets only
include `gpt-4o` and\n`gpt-4o-mini`. Waiting on finalized list w/
credentials from @jamesspi\nand @peluja1012 and then we can have ops
update using the scripts\nincluded in this
PR.\n\n---------\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\nCo-authored-by:
Patryk Kopycinski
<patryk.kopycinski@elastic.co>","sha":"e57663a0cf5a1692a5be10413c1d745dd260a24f"}},{"branch":"8.19","label":"v8.19.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
# Backport
This will backport the following commits from `main` to `8.x`:
- [[Performance] Refactor TTFMP query `from`, `to` fields
(#213911)](https://github.com/elastic/kibana/pull/213911)
<!--- Backport version: 9.6.6 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)
<!--BACKPORT [{"author":{"name":"Abdul Wahab
Zahid","email":"awahab07@yahoo.com"},"sourceCommit":{"committedDate":"2025-03-20T10:40:24Z","message":"[Performance]
Refactor TTFMP query `from`, `to` fields (#213911)\n\nCurrently Kibana
forwards `query_range_secs` and `query_offset_secs` to\nmark the
selected time range when reporting TTFMP event. This format\ncaused some
challenges to identify `from`, `to` date offsets
in\nvisualizations.\n\nTo simplify, the PR renames and sends the three
fields explicitly:\n- `query_from_offset_secs` offset to `0` (now), with
-ve for past and\n+ve for future dates\n- `query_to_offset_secs` offset
to `0` (now), with -ve for past and +ve\nfor future dates\n-
`query_range_secs` same as previously sent\n\n_This approach is followed
after a discussion, and based on
the\n[gist](https://gist.github.com/andrewvc/1f04a57a336d768e4ec5ff2eff06ba54)\nexcerpt:_\n\n```\nEarliest
date -> QueryFrom\nNewest date -> QueryTo\nDuration ->
QueryRange\n```\n\n### Indexing\nThese fields then should be mapped in
the EBT indexer to ingest in the\ntop level of the document, eventually
removing the need to create\nruntime fields in data views for
visualizations.\n\nAlso, runtime fields in data views should be updated
to reflect this\nchange. For backward compatibility, the runtime fields
can cater both\nthe old and new field names conditionally.\n\n###
Testing\n- Ensure that the TTFMP events are correctly reporting the date
ranges.\n\n###
Example\n\n","sha":"e6e78ac6d83fe9c4a83785c717fb1b7f3fedbf0e","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","backport
missing","v9.1.0","v8.19.0"],"title":"[Performance] Refactor TTFMP query
`from`, `to`
fields","number":213911,"url":"https://github.com/elastic/kibana/pull/213911","mergeCommit":{"message":"[Performance]
Refactor TTFMP query `from`, `to` fields (#213911)\n\nCurrently Kibana
forwards `query_range_secs` and `query_offset_secs` to\nmark the
selected time range when reporting TTFMP event. This format\ncaused some
challenges to identify `from`, `to` date offsets
in\nvisualizations.\n\nTo simplify, the PR renames and sends the three
fields explicitly:\n- `query_from_offset_secs` offset to `0` (now), with
-ve for past and\n+ve for future dates\n- `query_to_offset_secs` offset
to `0` (now), with -ve for past and +ve\nfor future dates\n-
`query_range_secs` same as previously sent\n\n_This approach is followed
after a discussion, and based on
the\n[gist](https://gist.github.com/andrewvc/1f04a57a336d768e4ec5ff2eff06ba54)\nexcerpt:_\n\n```\nEarliest
date -> QueryFrom\nNewest date -> QueryTo\nDuration ->
QueryRange\n```\n\n### Indexing\nThese fields then should be mapped in
the EBT indexer to ingest in the\ntop level of the document, eventually
removing the need to create\nruntime fields in data views for
visualizations.\n\nAlso, runtime fields in data views should be updated
to reflect this\nchange. For backward compatibility, the runtime fields
can cater both\nthe old and new field names conditionally.\n\n###
Testing\n- Ensure that the TTFMP events are correctly reporting the date
ranges.\n\n###
Example\n\n","sha":"e6e78ac6d83fe9c4a83785c717fb1b7f3fedbf0e"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/213911","number":213911,"mergeCommit":{"message":"[Performance]
Refactor TTFMP query `from`, `to` fields (#213911)\n\nCurrently Kibana
forwards `query_range_secs` and `query_offset_secs` to\nmark the
selected time range when reporting TTFMP event. This format\ncaused some
challenges to identify `from`, `to` date offsets
in\nvisualizations.\n\nTo simplify, the PR renames and sends the three
fields explicitly:\n- `query_from_offset_secs` offset to `0` (now), with
-ve for past and\n+ve for future dates\n- `query_to_offset_secs` offset
to `0` (now), with -ve for past and +ve\nfor future dates\n-
`query_range_secs` same as previously sent\n\n_This approach is followed
after a discussion, and based on
the\n[gist](https://gist.github.com/andrewvc/1f04a57a336d768e4ec5ff2eff06ba54)\nexcerpt:_\n\n```\nEarliest
date -> QueryFrom\nNewest date -> QueryTo\nDuration ->
QueryRange\n```\n\n### Indexing\nThese fields then should be mapped in
the EBT indexer to ingest in the\ntop level of the document, eventually
removing the need to create\nruntime fields in data views for
visualizations.\n\nAlso, runtime fields in data views should be updated
to reflect this\nchange. For backward compatibility, the runtime fields
can cater both\nthe old and new field names conditionally.\n\n###
Testing\n- Ensure that the TTFMP events are correctly reporting the date
ranges.\n\n###
Example\n\n","sha":"e6e78ac6d83fe9c4a83785c717fb1b7f3fedbf0e"}},{"branch":"8.x","label":"v8.19.0","branchLabelMappingKey":"^v8.19.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
# Backport
This will backport the following commits from `main` to `8.x`:
- [[FIPS][Cloud][Build] Add FIPS cloud image. Convert base image to
Wolfi. (#213163)](https://github.com/elastic/kibana/pull/213163)
<!--- Backport version: 9.6.6 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)
<!--BACKPORT [{"author":{"name":"Brad
White","email":"Ikuni17@users.noreply.github.com"},"sourceCommit":{"committedDate":"2025-03-27T15:01:08Z","message":"[FIPS][Cloud][Build]
Add FIPS cloud image. Convert base image to Wolfi. (#213163)\n\n##
Summary\n\n- Closes elastic/kibana-operations#245\n- Convert FIPS base
image from UBI to `chainguard-base-fips`\n- Add FIPS base image updates
to Renovate\n- Adjust naming scheme for FIPS image from
`kibana-ubi-fips` to\n`kibana-fips`\n- Adds new image flavor
`kibana-cloud-fips`\n- Adds support for `ci:build-cloud-fips-image`
label\n- Move Cloud image building to its own step instead of being part
of\n`Build Kibana Distribution` step so it will be triggered when the
build\nis reused and the `build` step is
skipped.","sha":"8601ec3072173ed6745fe892000cb4d1ab7fa89b","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Operations","release_note:skip","v9.0.0","ci:build-cloud-image","ci:build-docker-fips","backport:version","v9.1.0","v8.19.0","ci:build-cloud-fips-image"],"title":"[FIPS][Cloud][Build]
Add FIPS cloud image. Convert base image to
Wolfi.","number":213163,"url":"https://github.com/elastic/kibana/pull/213163","mergeCommit":{"message":"[FIPS][Cloud][Build]
Add FIPS cloud image. Convert base image to Wolfi. (#213163)\n\n##
Summary\n\n- Closes elastic/kibana-operations#245\n- Convert FIPS base
image from UBI to `chainguard-base-fips`\n- Add FIPS base image updates
to Renovate\n- Adjust naming scheme for FIPS image from
`kibana-ubi-fips` to\n`kibana-fips`\n- Adds new image flavor
`kibana-cloud-fips`\n- Adds support for `ci:build-cloud-fips-image`
label\n- Move Cloud image building to its own step instead of being part
of\n`Build Kibana Distribution` step so it will be triggered when the
build\nis reused and the `build` step is
skipped.","sha":"8601ec3072173ed6745fe892000cb4d1ab7fa89b"}},"sourceBranch":"main","suggestedTargetBranches":["9.0","8.x"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/213163","number":213163,"mergeCommit":{"message":"[FIPS][Cloud][Build]
Add FIPS cloud image. Convert base image to Wolfi. (#213163)\n\n##
Summary\n\n- Closes elastic/kibana-operations#245\n- Convert FIPS base
image from UBI to `chainguard-base-fips`\n- Add FIPS base image updates
to Renovate\n- Adjust naming scheme for FIPS image from
`kibana-ubi-fips` to\n`kibana-fips`\n- Adds new image flavor
`kibana-cloud-fips`\n- Adds support for `ci:build-cloud-fips-image`
label\n- Move Cloud image building to its own step instead of being part
of\n`Build Kibana Distribution` step so it will be triggered when the
build\nis reused and the `build` step is
skipped.","sha":"8601ec3072173ed6745fe892000cb4d1ab7fa89b"}},{"branch":"8.x","label":"v8.19.0","branchLabelMappingKey":"^v8.19.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
# Backport
This will backport the following commits from `main` to `8.x`:
- [[Dev Docs] Add VS Code configurations to Dev Docs Debugging Tutorial
(#212807)](https://github.com/elastic/kibana/pull/212807)
<!--- Backport version: 9.6.6 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)
<!--BACKPORT [{"author":{"name":"Nick
Peihl","email":"nick.peihl@elastic.co"},"sourceCommit":{"committedDate":"2025-03-06T15:14:19Z","message":"[Dev
Docs] Add VS Code configurations to Dev Docs Debugging Tutorial
(#212807)\n\n## Summary\n\nAdds to the Dev Docs Debugging tutorial
suggested configurations for VS\nCode users for debugging Kibana server
code, Jest unit tests, and\nfunctional tests.\n\n\n###
Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers
should verify this PR satisfies this list as well.\n\n- [x] Any text
added follows [EUI's
writing\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\nsentence case text and includes
[i18n\nsupport](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)\n-
[x] The PR description includes the appropriate Release Notes
section,\nand the correct `release_note:*` label is applied per
the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)","sha":"d2412a5f98f341cf59e02e7340d718493d0492e7","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Docs","release_note:skip","DevDocs","backport:prev-major","v9.1.0"],"title":"[Dev
Docs] Add VS Code configurations to Dev Docs Debugging
Tutorial","number":212807,"url":"https://github.com/elastic/kibana/pull/212807","mergeCommit":{"message":"[Dev
Docs] Add VS Code configurations to Dev Docs Debugging Tutorial
(#212807)\n\n## Summary\n\nAdds to the Dev Docs Debugging tutorial
suggested configurations for VS\nCode users for debugging Kibana server
code, Jest unit tests, and\nfunctional tests.\n\n\n###
Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers
should verify this PR satisfies this list as well.\n\n- [x] Any text
added follows [EUI's
writing\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\nsentence case text and includes
[i18n\nsupport](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)\n-
[x] The PR description includes the appropriate Release Notes
section,\nand the correct `release_note:*` label is applied per
the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)","sha":"d2412a5f98f341cf59e02e7340d718493d0492e7"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/212807","number":212807,"mergeCommit":{"message":"[Dev
Docs] Add VS Code configurations to Dev Docs Debugging Tutorial
(#212807)\n\n## Summary\n\nAdds to the Dev Docs Debugging tutorial
suggested configurations for VS\nCode users for debugging Kibana server
code, Jest unit tests, and\nfunctional tests.\n\n\n###
Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers
should verify this PR satisfies this list as well.\n\n- [x] Any text
added follows [EUI's
writing\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\nsentence case text and includes
[i18n\nsupport](https://github.com/elastic/kibana/blob/main/src/platform/packages/shared/kbn-i18n/README.md)\n-
[x] The PR description includes the appropriate Release Notes
section,\nand the correct `release_note:*` label is applied per
the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)","sha":"d2412a5f98f341cf59e02e7340d718493d0492e7"}}]}]
BACKPORT-->
Co-authored-by: Nick Peihl <nick.peihl@elastic.co>
# Backport
This will backport the following commits from `main` to `8.x`:
- [SKA: Relocate "platform" packages that remain on `/packages`
(#208704)](https://github.com/elastic/kibana/pull/208704)
<!--- Backport version: 9.6.6 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)
<!--BACKPORT [{"author":{"name":"Gerard
Soldevila","email":"gerard.soldevila@elastic.co"},"sourceCommit":{"committedDate":"2025-02-24T11:03:30Z","message":"SKA:
Relocate \"platform\" packages that remain on `/packages`
(#208704)\n\n## Summary\n\nThe `/packages` folder at the root of the
Kibana repository used to\ncontain a lot of packages.\nIn the context of
SKA, they have been gradually moved to various\nlocations:\n*
`src/platform/packages`\n* `x-pack/platform/packages`\n*
`src/core/packages`\n\nCurrently, only `devOnly: true` packages are left
in this folder. This\ncomprises libraries for CLI scripts as well as
testing utilities.\n\nWith this PR, we are moving ~half of these
packages under\n`src/platform/packages/(private|shared)/`.\nIn
particular, we are moving those packages that are being used
from\nplatform and/or solutions.\n\nSince they are `\"devOnly\": true`,
this means they are ONLY used from\ntests, cypress tests, storybook
configs, ./scripts/ folders inside some\nmodules, or other non-prod-time
logic. Nonetheless, they are effectively\nreferenced from platform
and/or solutions code, hence I decided they\nshould be placed under
`platform` folders.\n\n---------\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"6a7c904f921434fe21dfa00eceabfb5e64e915dc","branchLabelMapping":{"^v9.1.0$":"main","^v8.19.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Core","release_note:skip","v9.0.0","ci:project-deploy-observability","Team:obs-ux-infra_services","backport:version","v8.18.0","v9.1.0","v8.19.0"],"title":"SKA:
Relocate \"platform\" packages that remain on
`/packages`","number":208704,"url":"https://github.com/elastic/kibana/pull/208704","mergeCommit":{"message":"SKA:
Relocate \"platform\" packages that remain on `/packages`
(#208704)\n\n## Summary\n\nThe `/packages` folder at the root of the
Kibana repository used to\ncontain a lot of packages.\nIn the context of
SKA, they have been gradually moved to various\nlocations:\n*
`src/platform/packages`\n* `x-pack/platform/packages`\n*
`src/core/packages`\n\nCurrently, only `devOnly: true` packages are left
in this folder. This\ncomprises libraries for CLI scripts as well as
testing utilities.\n\nWith this PR, we are moving ~half of these
packages under\n`src/platform/packages/(private|shared)/`.\nIn
particular, we are moving those packages that are being used
from\nplatform and/or solutions.\n\nSince they are `\"devOnly\": true`,
this means they are ONLY used from\ntests, cypress tests, storybook
configs, ./scripts/ folders inside some\nmodules, or other non-prod-time
logic. Nonetheless, they are effectively\nreferenced from platform
and/or solutions code, hence I decided they\nshould be placed under
`platform` folders.\n\n---------\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"6a7c904f921434fe21dfa00eceabfb5e64e915dc"}},"sourceBranch":"main","suggestedTargetBranches":["8.18","8.x"],"targetPullRequestStates":[{"branch":"9.0","label":"v9.0.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"url":"https://github.com/elastic/kibana/pull/212224","number":212224,"state":"OPEN"},{"branch":"8.18","label":"v8.18.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.1.0","branchLabelMappingKey":"^v9.1.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/208704","number":208704,"mergeCommit":{"message":"SKA:
Relocate \"platform\" packages that remain on `/packages`
(#208704)\n\n## Summary\n\nThe `/packages` folder at the root of the
Kibana repository used to\ncontain a lot of packages.\nIn the context of
SKA, they have been gradually moved to various\nlocations:\n*
`src/platform/packages`\n* `x-pack/platform/packages`\n*
`src/core/packages`\n\nCurrently, only `devOnly: true` packages are left
in this folder. This\ncomprises libraries for CLI scripts as well as
testing utilities.\n\nWith this PR, we are moving ~half of these
packages under\n`src/platform/packages/(private|shared)/`.\nIn
particular, we are moving those packages that are being used
from\nplatform and/or solutions.\n\nSince they are `\"devOnly\": true`,
this means they are ONLY used from\ntests, cypress tests, storybook
configs, ./scripts/ folders inside some\nmodules, or other non-prod-time
logic. Nonetheless, they are effectively\nreferenced from platform
and/or solutions code, hence I decided they\nshould be placed under
`platform` folders.\n\n---------\n\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>","sha":"6a7c904f921434fe21dfa00eceabfb5e64e915dc"}},{"branch":"8.x","label":"v8.19.0","branchLabelMappingKey":"^v8.19.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
# Backport
This will backport the following commits from `main` to `8.x`:
- [SKA: Update broken references and URLs
(#206836)](https://github.com/elastic/kibana/pull/206836)
<!--- Backport version: 9.6.4 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)
<!--BACKPORT [{"author":{"name":"Gerard
Soldevila","email":"gerard.soldevila@elastic.co"},"sourceCommit":{"committedDate":"2025-01-28T03:32:48Z","message":"SKA:
Update broken references and URLs (#206836)\n\n## Summary\r\n\r\nUpdates
a number of broken file references and broken
links.\r\n\r\n---------\r\n\r\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\r\nCo-authored-by:
Alejandro Fernández Haro
<afharo@gmail.com>","sha":"fb26c1c683453faa7f8218df094f90d9ad070a23","branchLabelMapping":{"^v9.0.0$":"main","^v8.18.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Core","Feature:ExpressionLanguage","release_note:skip","Team:Fleet","v9.0.0","backport:prev-minor","ci:project-deploy-observability","Team:obs-ux-infra_services","Team:obs-ux-management"],"title":"SKA:
Update broken references and
URLs","number":206836,"url":"https://github.com/elastic/kibana/pull/206836","mergeCommit":{"message":"SKA:
Update broken references and URLs (#206836)\n\n## Summary\r\n\r\nUpdates
a number of broken file references and broken
links.\r\n\r\n---------\r\n\r\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\r\nCo-authored-by:
Alejandro Fernández Haro
<afharo@gmail.com>","sha":"fb26c1c683453faa7f8218df094f90d9ad070a23"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/206836","number":206836,"mergeCommit":{"message":"SKA:
Update broken references and URLs (#206836)\n\n## Summary\r\n\r\nUpdates
a number of broken file references and broken
links.\r\n\r\n---------\r\n\r\nCo-authored-by: kibanamachine
<42973632+kibanamachine@users.noreply.github.com>\r\nCo-authored-by:
Alejandro Fernández Haro
<afharo@gmail.com>","sha":"fb26c1c683453faa7f8218df094f90d9ad070a23"}}]}]
BACKPORT-->
# Backport
This will backport the following commits from `main` to `8.x`:
- [Fix typo in documentation
(#204814)](https://github.com/elastic/kibana/pull/204814)
<!--- Backport version: 9.4.3 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT
[{"author":{"name":"Katerina","email":"aikaterini.patticha@elastic.co"},"sourceCommit":{"committedDate":"2024-12-19T00:20:59Z","message":"Fix
typo in documentation (#204814)\n\nFix typo introduced in
https://github.com/elastic/kibana/pull/204179#pullrequestreview-2512105404","sha":"7d4bf216ab59258a1d26dfd6c240978b00027c87","branchLabelMapping":{"^v9.0.0$":"main","^v8.18.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","backport:prev-minor"],"title":"Fix
typo in
documentation","number":204814,"url":"https://github.com/elastic/kibana/pull/204814","mergeCommit":{"message":"Fix
typo in documentation (#204814)\n\nFix typo introduced in
https://github.com/elastic/kibana/pull/204179#pullrequestreview-2512105404","sha":"7d4bf216ab59258a1d26dfd6c240978b00027c87"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/204814","number":204814,"mergeCommit":{"message":"Fix
typo in documentation (#204814)\n\nFix typo introduced in
https://github.com/elastic/kibana/pull/204179#pullrequestreview-2512105404","sha":"7d4bf216ab59258a1d26dfd6c240978b00027c87"}}]}]
BACKPORT-->
Co-authored-by: Katerina <aikaterini.patticha@elastic.co>
# Backport
This will backport the following commits from `main` to `8.x`:
- [[Performance] Update `onPageReady` documentation
(#204179)](https://github.com/elastic/kibana/pull/204179)
<!--- Backport version: 9.4.3 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT
[{"author":{"name":"Katerina","email":"aikaterini.patticha@elastic.co"},"sourceCommit":{"committedDate":"2024-12-18T15:06:54Z","message":"[Performance]
Update `onPageReady` documentation (#204179)\n\n## Summary\r\nRelated to
this: https://github.com/elastic/kibana/pull/202889\r\n\r\nUpdate the
documentation with the recent
changes","sha":"860d5b6b3599dcdf1a090923224b5c315156c1a5","branchLabelMapping":{"^v9.0.0$":"main","^v8.18.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","backport:prev-minor"],"title":"[Performance]
Update `onPageReady`
documentation","number":204179,"url":"https://github.com/elastic/kibana/pull/204179","mergeCommit":{"message":"[Performance]
Update `onPageReady` documentation (#204179)\n\n## Summary\r\nRelated to
this: https://github.com/elastic/kibana/pull/202889\r\n\r\nUpdate the
documentation with the recent
changes","sha":"860d5b6b3599dcdf1a090923224b5c315156c1a5"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/204179","number":204179,"mergeCommit":{"message":"[Performance]
Update `onPageReady` documentation (#204179)\n\n## Summary\r\nRelated to
this: https://github.com/elastic/kibana/pull/202889\r\n\r\nUpdate the
documentation with the recent
changes","sha":"860d5b6b3599dcdf1a090923224b5c315156c1a5"}}]}]
BACKPORT-->
Co-authored-by: Katerina <aikaterini.patticha@elastic.co>
# Backport
This will backport the following commits from `main` to `8.x`:
- [Enhance documentation on accessing hidden SO types
(#199046)](https://github.com/elastic/kibana/pull/199046)
<!--- Backport version: 9.4.3 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Christiane (Tina)
Heiligers","email":"christiane.heiligers@elastic.co"},"sourceCommit":{"committedDate":"2024-11-06T01:51:45Z","message":"Enhance
documentation on accessing hidden SO types (#199046)\n\nSaved objects
declared as `hidden` can only be accessed with a client\r\nthat
explicitly includes hidden types.\r\n\r\n### Checklist\r\n\r\n-
[x]\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\r\n---------\r\n\r\nCo-authored-by: Alejandro Fernández
Haro
<afharo@gmail.com>","sha":"73f31549cd0ae6c4aa5cc505907e455d16307190","branchLabelMapping":{"^v9.0.0$":"main","^v8.17.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Core","Feature:Saved
Objects","release_note:skip","v9.0.0","DevDocs","backport:prev-minor","v8.17.0"],"title":"Enhance
documentation on accessing hidden SO
types","number":199046,"url":"https://github.com/elastic/kibana/pull/199046","mergeCommit":{"message":"Enhance
documentation on accessing hidden SO types (#199046)\n\nSaved objects
declared as `hidden` can only be accessed with a client\r\nthat
explicitly includes hidden types.\r\n\r\n### Checklist\r\n\r\n-
[x]\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\r\n---------\r\n\r\nCo-authored-by: Alejandro Fernández
Haro
<afharo@gmail.com>","sha":"73f31549cd0ae6c4aa5cc505907e455d16307190"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/199046","number":199046,"mergeCommit":{"message":"Enhance
documentation on accessing hidden SO types (#199046)\n\nSaved objects
declared as `hidden` can only be accessed with a client\r\nthat
explicitly includes hidden types.\r\n\r\n### Checklist\r\n\r\n-
[x]\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\r\n---------\r\n\r\nCo-authored-by: Alejandro Fernández
Haro
<afharo@gmail.com>","sha":"73f31549cd0ae6c4aa5cc505907e455d16307190"}},{"branch":"8.x","label":"v8.17.0","branchLabelMappingKey":"^v8.17.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
Co-authored-by: Christiane (Tina) Heiligers <christiane.heiligers@elastic.co>
# Backport
This will backport the following commits from `main` to `8.x`:
- [[performance] support triggering subset of journeys against KIbana PR
in CI (#193175)](https://github.com/elastic/kibana/pull/193175)
<!--- Backport version: 9.4.3 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Dzmitry
Lemechko","email":"dzmitry.lemechko@elastic.co"},"sourceCommit":{"committedDate":"2024-09-18T12:53:02Z","message":"[performance]
support triggering subset of journeys against KIbana PR in CI
(#193175)\n\n## Summary\r\n\r\nIt’s common request for Dev teams to run
specific journeys on a PR to\r\ncompare performance metrics against the
`main` branch. These requests\r\nusually focus on a particular area,
such as the Dashboard or Discover\r\napp.\r\n\r\nTo streamline the
process, this PR groups relevant journeys into\r\ncategories that can be
triggered through an environment variable. For\r\nexample, setting
`JOURNEYS_GROUP=dashboard` will execute only the
three\r\ndashboard-specific journeys, which are (usually) sufficient
for\r\nevaluating the performance impact of code changes within the
Dashboard\r\napp.\r\n\r\nCurrent Process for Triggering Performance
Builds:\r\n- Create a new
kibana-single-user-performance\r\n[build](https://buildkite.com/elastic/kibana-single-user-performance#new)\r\n-
Provide the following arguments:\r\n\r\nBranch:
`refs/pull/<PR_number>/head`\r\nUnder Options, set the environment
variable:\r\n`JOURNEYS_GROUP=<group_name>`\r\n\r\nCurrently supported
journey groups:\r\n- kibanaStartAndLoad\r\n- crud\r\n- dashboard\r\n-
discover\r\n- maps\r\n- ml\r\n\r\n[Build
example\r\n\r\n](https://buildkite.com/elastic/kibana-single-user-performance/builds/14427)\r\nEach
group focuses on a specific set of journeys tied to its
respective\r\narea in Kibana, allowing for more targeted performance
testing. Since\r\nrunning group takes ~5-10 min on bare metal worker, it
should not delay\r\nthe regular (every 3h) runs against `main`
branch\r\n\r\n\r\ntest locally with `node scripts/run_performance.js
--group
<group_name>`","sha":"f5975d28fa06d6de6193d5e518084c45c65b5aed","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","v8.16.0","backport:version"],"title":"[performance]
support triggering subset of journeys against KIbana PR in
CI","number":193175,"url":"https://github.com/elastic/kibana/pull/193175","mergeCommit":{"message":"[performance]
support triggering subset of journeys against KIbana PR in CI
(#193175)\n\n## Summary\r\n\r\nIt’s common request for Dev teams to run
specific journeys on a PR to\r\ncompare performance metrics against the
`main` branch. These requests\r\nusually focus on a particular area,
such as the Dashboard or Discover\r\napp.\r\n\r\nTo streamline the
process, this PR groups relevant journeys into\r\ncategories that can be
triggered through an environment variable. For\r\nexample, setting
`JOURNEYS_GROUP=dashboard` will execute only the
three\r\ndashboard-specific journeys, which are (usually) sufficient
for\r\nevaluating the performance impact of code changes within the
Dashboard\r\napp.\r\n\r\nCurrent Process for Triggering Performance
Builds:\r\n- Create a new
kibana-single-user-performance\r\n[build](https://buildkite.com/elastic/kibana-single-user-performance#new)\r\n-
Provide the following arguments:\r\n\r\nBranch:
`refs/pull/<PR_number>/head`\r\nUnder Options, set the environment
variable:\r\n`JOURNEYS_GROUP=<group_name>`\r\n\r\nCurrently supported
journey groups:\r\n- kibanaStartAndLoad\r\n- crud\r\n- dashboard\r\n-
discover\r\n- maps\r\n- ml\r\n\r\n[Build
example\r\n\r\n](https://buildkite.com/elastic/kibana-single-user-performance/builds/14427)\r\nEach
group focuses on a specific set of journeys tied to its
respective\r\narea in Kibana, allowing for more targeted performance
testing. Since\r\nrunning group takes ~5-10 min on bare metal worker, it
should not delay\r\nthe regular (every 3h) runs against `main`
branch\r\n\r\n\r\ntest locally with `node scripts/run_performance.js
--group
<group_name>`","sha":"f5975d28fa06d6de6193d5e518084c45c65b5aed"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/193175","number":193175,"mergeCommit":{"message":"[performance]
support triggering subset of journeys against KIbana PR in CI
(#193175)\n\n## Summary\r\n\r\nIt’s common request for Dev teams to run
specific journeys on a PR to\r\ncompare performance metrics against the
`main` branch. These requests\r\nusually focus on a particular area,
such as the Dashboard or Discover\r\napp.\r\n\r\nTo streamline the
process, this PR groups relevant journeys into\r\ncategories that can be
triggered through an environment variable. For\r\nexample, setting
`JOURNEYS_GROUP=dashboard` will execute only the
three\r\ndashboard-specific journeys, which are (usually) sufficient
for\r\nevaluating the performance impact of code changes within the
Dashboard\r\napp.\r\n\r\nCurrent Process for Triggering Performance
Builds:\r\n- Create a new
kibana-single-user-performance\r\n[build](https://buildkite.com/elastic/kibana-single-user-performance#new)\r\n-
Provide the following arguments:\r\n\r\nBranch:
`refs/pull/<PR_number>/head`\r\nUnder Options, set the environment
variable:\r\n`JOURNEYS_GROUP=<group_name>`\r\n\r\nCurrently supported
journey groups:\r\n- kibanaStartAndLoad\r\n- crud\r\n- dashboard\r\n-
discover\r\n- maps\r\n- ml\r\n\r\n[Build
example\r\n\r\n](https://buildkite.com/elastic/kibana-single-user-performance/builds/14427)\r\nEach
group focuses on a specific set of journeys tied to its
respective\r\narea in Kibana, allowing for more targeted performance
testing. Since\r\nrunning group takes ~5-10 min on bare metal worker, it
should not delay\r\nthe regular (every 3h) runs against `main`
branch\r\n\r\n\r\ntest locally with `node scripts/run_performance.js
--group
<group_name>`","sha":"f5975d28fa06d6de6193d5e518084c45c65b5aed"}},{"branch":"8.x","label":"v8.16.0","branchLabelMappingKey":"^v8.16.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
Co-authored-by: Dzmitry Lemechko <dzmitry.lemechko@elastic.co>
## Summary
Added documentation explaining how SO migrations on serverless work
## Preview
<img width="741" alt="Screenshot 2024-03-22 at 16 15 13"
src="2217c01f-8447-4f22-a782-a07ff221aa42">
## Summary
Moving synthtrace clients init inside kbn-journeys:
esArchiver does not always solve the issue with data generation. We
already have afew journeys using Synthtrace instead and expect more to
come.
In order to simplify the process of creating new journeys, this PR moves
Synthtrace client initialisation into kbn-journey package and exposes a
way to define client type, generator function & its input arguments:
```
import { Journey, SynthtraceOptions } from '@kbn/journeys';
import { subj } from '@kbn/test-subj-selector';
import { generateApmData } from '../synthtrace_data/apm_data';
export const journey = new Journey({
synthtrace: {
type: 'apm',
generator: generateApmData,
options: {
from: new Date(Date.now() - 1000 * 60 * 15),
to: new Date(Date.now() + 1000 * 60 * 15),
},
},
})
```
PR also needs review from teams who use Synthtrace to understand if the implementation is matching expectations.
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
The source code classifier we currently have was incorrectly classifying
e2e journey files as `non-package` instead of `tests or mocks` as it was
not using the name standards we used for FTR files.
We could have created a `functional-tests` package for the performance
folder (which is what we want to do in the future) but because we don't
have the feature to create ownerless packages it would not be easy to
find a given owner for that folder.
As such I'm just opting for a second solution which is applying the same
name standards to this journeys folder as we have for FTR and changing a
little the classifier to recognise it.
This should fix the problem found at
https://github.com/elastic/kibana/pull/178017.
Co-authored-by: Alex Szabo <alex.szabo@elastic.co>
## Summary
Closes elastic/kibana-operations/issues/24
This adds a second flavor of UBI image (`kibana-ubi-fips`) which has a
FIPS compliant version of OpenSSL compiled and linked to Node. Using the
label `ci:build-docker-fips` will create the image in CI and push to the
registry.
The FIPS image start the Kibana NodeJS process using the FIPS compliant
OpenSSL version. Kibana will start in this state but crash during
runtime because there are many code changes required for it to be FIPS
compliant, including `node_module` usage. I attempted numerous ways to
load other OpenSSL providers alongside the FIPS provider, but it always
led to Kibana crashing on invalid algorithm usage.
---------
Co-authored-by: Tiago Costa <tiago.costa@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
## Summary
I had to change `waitForRender` since `page.waitForFunction` tries to
run a script on page and it is not working due to CSP settings on Cloud.
Instead of injecting a script, we use a classical API to find
elements/attributes in the DOM.
Since `PUT /internal/core/_settings` is merged in 8.11.0, journeys run
on Cloud with on-fly labels update is supported starting deployments
8.11.0+. I added error message for 404 code just in case someone runs it
on earlier version.
`many_fields_discover` journey was update since on Cloud the data view
used by scenario is not selected by default.
How it works:
Create a deployment with QAF and re-configure it for journey run:
```
export EC_DEPLOYMENT_NAME=my-run-8.11
qaf elastic-cloud deployments create --stack-version 8.11.0-SNAPSHOT --environment staging --region gcp-us-central1
qaf elastic-cloud deployments configure-for-performance-journeys
```
Run any journey, e.g. many_fields_discover
```
TEST_CLOUD=1 TEST_ES_URL=https://username:pswd@es_url:443 TEST_KIBANA_URL=https://username:pswd@kibana-ur_url node scripts/functional_test_runner --config x-pack/performance/journeys/many_fields_discover.ts
```
You should see a log about labels being updated:
```
Updating telemetry & APM labels: {"testJobId":"local-a3272047-6724-44d1-9a61-5c79781b06a1","testBuildId":"local-d8edbace-f441-4ba9-ac83-5909be3acf2a","journeyName":"many_fields_discover","ftrConfig":"x-pack/performance/journeys/many_fields_discover.ts"}
```
And then able to find APM logs for the journey in
[Ops](https://kibana-ops-e2e-perf.kb.us-central1.gcp.cloud.es.io:9243/app/apm/services?comparisonEnabled=true&environment=ENVIRONMENT_ALL&kuery=labels.testJobId%20%3A%20%22local-d79a878c-cc7a-423b-b884-c9b6b1a8d781%22&latencyAggregationType=avg&offset=1d&rangeFrom=now-24h%2Fh&rangeTo=now&serviceGroup=&transactionType=request)
cluster
## Summary
Expands on the HTTP versioning tutorial with more information about
`internal` vs `public` endpoints.
## Screenshots
<img width="875" alt="Screenshot 2023-06-01 at 15 52 18"
src="f8f790a0-31ec-4123-89db-b1f01aa17845">
<img width="923" alt="Screenshot 2023-06-01 at 15 52 33"
src="f97ad89b-face-4176-a814-8e17ecd3d2a5">
* Add deferred migrations parameter.
* Update outdated documents query to take into account deferred migrations.
* Update outdated documents query to take into account the core migration version.
* Update read operations in the saved objects repository to perform deferred migrations.
## Summary
This PR adds changes and instructions how to run existing performance
journeys against ESS instances.
As previously discussed with @pheyos , there are few manual steps to be
done before running the actual journey:
1. Create cloud deployment and re-configure it the way APM traces are
reported the monitoring cluster
2. Check out the branch matching deployment version (main ->
8.9.0-SNAPSHOT), create user with `superuser` role (we don't test
functional features, only performance metrics)
Then you can run the journey like a regular cloud test suite:
```
export TEST_KIBANA_URL=https://<username>:<password>@<kibana_url>
export TEST_ES_URL=https://<username>:<password>@j<elasticsearch_url>:<port>
export TEST_CLOUD=1
node scripts/functional_test_runner.js --config x-pack/performance/journeys/$YOUR_JOURNEY_NAME.ts
```
<img width="1357" alt="image"
src="https://user-images.githubusercontent.com/10977896/236499836-2738fecb-a5a9-4e58-a10b-915b962af037.png">
---------
Co-authored-by: Jon <jon@budzenski.me>
## Summary
This contribution adds a new tutorial for how plugin developers must
approach developing and maintaining versionable HTTP APIs.
## How to review
1. Pull down the changes
2. Run `./scripts/dev_docs.sh`
3. Open http://localhost:3000 in your browser
4. Go to "Versioning HTTP APIs" in the side nav
## Summary
Adds a dev docs guide for the core-approved versioning strategy. This
strategy is subject to some iteration but is based on the work we did
for the Saved Objects Management plugin in
https://github.com/elastic/kibana/pull/149495.
Closes https://github.com/elastic/kibana/issues/149929
## How to test
1. Run `./scripts/dev_docs.sh`
2. Navigate to "Versioning interfaces" in the side nav menu
---------
Co-authored-by: Luke Elmers <lukeelmers@gmail.com>
This PR updates docs around Kibana performance effort:
- how to create single user performance journeys, custom metrics with
EBT and review test results
- how to create api capacity test and where to find its test results
* Update all usages of EuiPageTemplate to EuiPageTemplate_Deprecated
* EuiPageContent_Deprecated as EuiPageContent
* EuiPageContentBody_Deprecated as EuiPageContentBody
* EuiPageContentHeader_Deprecated as EuiPageContentHeader
* EuiPageContentHeaderSection_Deprecated as EuiPageContentHeaderSection
* EuiPageSideBar_Deprecated as EuiPageSideBar
* EuiPageContent__Deprecated to EuiPageContent_Deprecated
* Fix rogue semi-colons
* WIP: NoDataConfigPage & NoDataPage converted to new template
- `withSolutionNav` not yet handled
* WIP: KibanaPageTemplateInner converted to use new template
- Pushes existing `pageHeader` prompts onto created EuiPageTemplate.PageHeader
- Uses `isEmptyState` to push `pageHeader` props to EuiPageTemplate.EmptyPrompt instead (if `children` are not supplied)
* WIP: `withSolutionNav` now renders the sidebar content properly
- Collapsing isn’t working (minWidth isn’t updating)
* Fixing stickiness of sidebar
* [Security] Fixed SecuritySolutionTemplateWrapper’s usage
- Moved `bottomBar` to EuiPageTemplate.BottomBar (now contained in just the page contents)
- Change EuiPanel children wrapper with EuiPageTemplate.Section
* [O11y] Wrap `children` with EuiPageTemplate.Section
* Fix getting_started usage
* WIP: Fixing types
* Removing `template` pass through
* Set EUI to 63.0.0
* [CI] Auto-commit changed files from 'node scripts/eslint --no-cache --fix'
* More import fixes
* Sidebar component update
* Expand `KibanaPageTemplate` to all namespaced EUI counterparts
- Updated `docs/tutorials` mdx page
- Fixed SolutionNav prop types
* Updated the tutorial mdx page
* [Stack Management] Updated app layout to new template
- Some temporary props applied for BWC until all other pages can be converted
- Converted `API Keys` page’s layout (and especially prompt usags) to new paradigm
* Fix circular dep
* Fix new circular dependency
- copying and pasting types from KibanaPageTemplateProps, but ah well
* [Security Solution] Remove `template` prop - no longer a prop on Kibana/EuiPageTemplate
* [O11y] Allow customizing EuiPageTemplate.Section wrapper
- converts pageBodyProps
- fixes non-centered loading template
* [Enterprise Search] Update page templates
- fix layouts by auto-wrapping an EuiPageSection for padding, while adding a `customPageSections` prop for more custom sections/layouts
- re-center 404 errors
- update tests
* Update KibanaPageTemplate tests
* Update snapshots
* Fix FTR test with removed EUI classNames
* Fix FTR tests with changed kbn classNames
* Update failing dashboard snapshots
- drop shadow changed slightly in EUI
* Fix failing Security Cypress test
* [O11y] Fix Inventory page using deprecated CSS hooks
* [O11y][Uptime] Fix missing bottom bars
- Modifies ObservabilityPageTemplate to accept a `bottomBar` prop (a la the old EuiPageTemplate behavior)
NOTE: This opinionated page layout structure is starting to feel like it could be potentially limiting / have all the same pitfalls the previous EuiPageTemplate did. If so, consider something closer to the Enterprise Search page template conversion (`customPageSections`).
- Misc cleanup: Use `KibanaPageTemplate` over `EuiPageTemplate`
* [O11y] Fix route template typing
- Since theObservabilityPageTemplate is using the new Eui/KibanaPageTemplate, its child templates and types need to be updated accordingly
* Fix broken minWidth behavior
- was an EUI issue that required a patch release
+ update snapshots
* [Security Solution] Type fixes, restore empty state
- Fix empty state logic removed in a previous commit
- bogarts KibanaPageTemplate's `isEmptyState` prop instead of using `template="noData"`
- extend template wrappers to past ...rest to underlying Kibana/EuiPageTemplate
+ replace EuiPageTemplate with KibanaPageTemplate for consistency
* Fix failing synthetics selector
* Grab EUI v63.0.6
- for deprecation tags and section tag support
* Fix Kibana Overview plugin layout
- needs to use KibanaPageTemplate.Section to get padding back
- use `bottomBorder` prop over horizontal rules
- restore previous page color via panelled=false
* Convert Home plugin to new KibanaPageTemplate
- use KibanaPageTemplate.Section instead to preserve page width/paddings
- use `bottomBorder` instead of `EuiHorizontalRule`
- NOTE: This causes margins to decrease slightly from xxl to xl (largest padding available for EuiPageSection) - this can be restored by CSS overrides if desired
- update CSS to preserve previous looks, + convert to logical properties
* [O11y] Fix non-centered empty/loading states
* [O11y] Restore subdued background on various empty state prompts
* [O11y] Fix all instances of views that require a scrollable full-height child
+ restore comment for inventory view
* [O11y][ux] Fix broken sidebar
- The entire app was missing a wrapping EuiProvider, and as such breakpoint utils were not working, and the sidebar was missing
+ misc cleanup
- remove unnecessary fragment
- remove role="main" attr - now that EuiPageTemplate sets a `main` tag, they'll conflict
- add isEmptyState to center loading component
* [APM Cypress tests] harden flaky test
* [APM Cypress tests] Fix failing Cypress test, again
Co-authored-by: cchaos <caroline.horn@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>