# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Fixing blocked jobs polling interval
(#171878)](https://github.com/elastic/kibana/pull/171878)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"James
Gowdy","email":"jgowdy@elastic.co"},"sourceCommit":{"committedDate":"2023-11-23T17:56:19Z","message":"[ML]
Fixing blocked jobs polling interval (#171878)\n\nThere is a bug with
the way we check whether or not to start polling for\r\nblocked jobs. We
should only start polling there isn't an existing
poll\r\nrunning.\r\nThis causes the polling to run as possible and to
refresh the full jobs\r\nlist on every check.\r\nNow the blocked jobs
polling correctly runs at the interval of 2s and\r\nthe full jobs list
is only updated when there is a change in the list of\r\nblocked
jobs.\r\n\r\nPartially fixes
https://github.com/elastic/kibana/issues/171626\r\n\r\nA more in-depth
change as specified in the issue can be done in follow\r\nup work. It's
good to get this change in for the next release just in\r\ncase we run
out of time for the larger
change.","sha":"e7c793e0d74f2c48c788e7daf37dfc3b7cd68c9f","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix",":ml","Feature:Anomaly
Detection","v8.12.0","v8.11.2"],"number":171878,"url":"https://github.com/elastic/kibana/pull/171878","mergeCommit":{"message":"[ML]
Fixing blocked jobs polling interval (#171878)\n\nThere is a bug with
the way we check whether or not to start polling for\r\nblocked jobs. We
should only start polling there isn't an existing
poll\r\nrunning.\r\nThis causes the polling to run as possible and to
refresh the full jobs\r\nlist on every check.\r\nNow the blocked jobs
polling correctly runs at the interval of 2s and\r\nthe full jobs list
is only updated when there is a change in the list of\r\nblocked
jobs.\r\n\r\nPartially fixes
https://github.com/elastic/kibana/issues/171626\r\n\r\nA more in-depth
change as specified in the issue can be done in follow\r\nup work. It's
good to get this change in for the next release just in\r\ncase we run
out of time for the larger
change.","sha":"e7c793e0d74f2c48c788e7daf37dfc3b7cd68c9f"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/171878","number":171878,"mergeCommit":{"message":"[ML]
Fixing blocked jobs polling interval (#171878)\n\nThere is a bug with
the way we check whether or not to start polling for\r\nblocked jobs. We
should only start polling there isn't an existing
poll\r\nrunning.\r\nThis causes the polling to run as possible and to
refresh the full jobs\r\nlist on every check.\r\nNow the blocked jobs
polling correctly runs at the interval of 2s and\r\nthe full jobs list
is only updated when there is a change in the list of\r\nblocked
jobs.\r\n\r\nPartially fixes
https://github.com/elastic/kibana/issues/171626\r\n\r\nA more in-depth
change as specified in the issue can be done in follow\r\nup work. It's
good to get this change in for the next release just in\r\ncase we run
out of time for the larger
change.","sha":"e7c793e0d74f2c48c788e7daf37dfc3b7cd68c9f"}},{"branch":"8.11","label":"v8.11.2","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
Co-authored-by: James Gowdy <jgowdy@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [Always throw error objects - never strings
(#171498)](https://github.com/elastic/kibana/pull/171498)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Thomas
Watson","email":"watson@elastic.co"},"sourceCommit":{"committedDate":"2023-11-20T14:23:16Z","message":"Always
throw error objects - never strings
(#171498)","sha":"4f9094caf3cc4781137b7cfccbe2e1858f4f39c0","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","backport:all-open","v8.12.0"],"number":171498,"url":"https://github.com/elastic/kibana/pull/171498","mergeCommit":{"message":"Always
throw error objects - never strings
(#171498)","sha":"4f9094caf3cc4781137b7cfccbe2e1858f4f39c0"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/171498","number":171498,"mergeCommit":{"message":"Always
throw error objects - never strings
(#171498)","sha":"4f9094caf3cc4781137b7cfccbe2e1858f4f39c0"}}]}]
BACKPORT-->
Co-authored-by: Thomas Watson <watson@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Disable anomaly detection job creation from ES|QL lens
visualizations (#170711)](https://github.com/elastic/kibana/pull/170711)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"James
Gowdy","email":"jgowdy@elastic.co"},"sourceCommit":{"committedDate":"2023-11-08T09:37:10Z","message":"[ML]
Disable anomaly detection job creation from ES|QL lens visualizations
(#170711)\n\nFixes
https://github.com/elastic/kibana/issues/170670\r\n\r\nWe currently do
not support ES|QL in anomaly detection jobs.\r\n\r\nAn ES|QL Lens vis
cannot have mixed layers, as in one layer using ES|QL\r\nand another
using DSL, therefore we need to completely disable the ML\r\naction item
in the menu.\r\n\r\nCo-authored-by: Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"c1681c8d49304f324895acbe73323ffacad3fcbc","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix",":ml","Feature:Anomaly
Detection","v8.12.0","v8.11.1"],"number":170711,"url":"https://github.com/elastic/kibana/pull/170711","mergeCommit":{"message":"[ML]
Disable anomaly detection job creation from ES|QL lens visualizations
(#170711)\n\nFixes
https://github.com/elastic/kibana/issues/170670\r\n\r\nWe currently do
not support ES|QL in anomaly detection jobs.\r\n\r\nAn ES|QL Lens vis
cannot have mixed layers, as in one layer using ES|QL\r\nand another
using DSL, therefore we need to completely disable the ML\r\naction item
in the menu.\r\n\r\nCo-authored-by: Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"c1681c8d49304f324895acbe73323ffacad3fcbc"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/170711","number":170711,"mergeCommit":{"message":"[ML]
Disable anomaly detection job creation from ES|QL lens visualizations
(#170711)\n\nFixes
https://github.com/elastic/kibana/issues/170670\r\n\r\nWe currently do
not support ES|QL in anomaly detection jobs.\r\n\r\nAn ES|QL Lens vis
cannot have mixed layers, as in one layer using ES|QL\r\nand another
using DSL, therefore we need to completely disable the ML\r\naction item
in the menu.\r\n\r\nCo-authored-by: Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"c1681c8d49304f324895acbe73323ffacad3fcbc"}},{"branch":"8.11","label":"v8.11.1","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
Co-authored-by: James Gowdy <jgowdy@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [Update UI copy for `tech preview`
(#170143)](https://github.com/elastic/kibana/pull/170143)
<!--- Backport version: 8.9.8 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"James
Rodewig","email":"james.rodewig@elastic.co"},"sourceCommit":{"committedDate":"2023-11-02T20:48:53Z","message":"Update
UI copy for `tech preview`
(#170143)","sha":"0997cb25238f812a3eff67733bb16ef1521abea4","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Docs","Team:APM","release_note:skip","Team:Fleet","v8.12.0","v8.11.1","v8.10.5"],"number":170143,"url":"https://github.com/elastic/kibana/pull/170143","mergeCommit":{"message":"Update
UI copy for `tech preview`
(#170143)","sha":"0997cb25238f812a3eff67733bb16ef1521abea4"}},"sourceBranch":"main","suggestedTargetBranches":["8.11","8.10"],"targetPullRequestStates":[{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/170143","number":170143,"mergeCommit":{"message":"Update
UI copy for `tech preview`
(#170143)","sha":"0997cb25238f812a3eff67733bb16ef1521abea4"}},{"branch":"8.11","label":"v8.11.1","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"8.10","label":"v8.10.5","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->
# Backport
This will backport the following commits from `main` to `8.11`:
- [[OAS] Simplify server declaration in ML APIs
(#169885)](https://github.com/elastic/kibana/pull/169885)
<!--- Backport version: 8.9.8 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Lisa
Cawley","email":"lcawley@elastic.co"},"sourceCommit":{"committedDate":"2023-10-26T20:45:47Z","message":"[OAS]
Simplify server declaration in ML APIs
(#169885)","sha":"8924218d6ad5cb0c96f7ac7fe08d8f5a97fa2e48","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Docs","release_note:skip","docs","backport:prev-minor","v8.12.0"],"number":169885,"url":"https://github.com/elastic/kibana/pull/169885","mergeCommit":{"message":"[OAS]
Simplify server declaration in ML APIs
(#169885)","sha":"8924218d6ad5cb0c96f7ac7fe08d8f5a97fa2e48"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/169885","number":169885,"mergeCommit":{"message":"[OAS]
Simplify server declaration in ML APIs
(#169885)","sha":"8924218d6ad5cb0c96f7ac7fe08d8f5a97fa2e48"}}]}]
BACKPORT-->
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Fix the model state column in the Trained Models UI
(#169068)](https://github.com/elastic/kibana/pull/169068)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Dima
Arnautov","email":"dmitrii.arnautov@elastic.co"},"sourceCommit":{"committedDate":"2023-10-17T11:02:30Z","message":"[ML]
Fix the model state column in the Trained Models UI (#169068)\n\n##
Summary\r\n\r\nFixes an issue when the `Ready to deploy` download state
was overriding\r\nthe `starting` and `stopping` deployment
states.","sha":"3164eca0dc8ef4f5201f79d29d330488013e98d9","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":[":ml","release_note:skip","Team:ML","v8.11.0","v8.12.0"],"number":169068,"url":"https://github.com/elastic/kibana/pull/169068","mergeCommit":{"message":"[ML]
Fix the model state column in the Trained Models UI (#169068)\n\n##
Summary\r\n\r\nFixes an issue when the `Ready to deploy` download state
was overriding\r\nthe `starting` and `stopping` deployment
states.","sha":"3164eca0dc8ef4f5201f79d29d330488013e98d9"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/169068","number":169068,"mergeCommit":{"message":"[ML]
Fix the model state column in the Trained Models UI (#169068)\n\n##
Summary\r\n\r\nFixes an issue when the `Ready to deploy` download state
was overriding\r\nthe `starting` and `stopping` deployment
states.","sha":"3164eca0dc8ef4f5201f79d29d330488013e98d9"}}]}]
BACKPORT-->
Co-authored-by: Dima Arnautov <dmitrii.arnautov@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [Fix ML swimlane embeddable titles
(#168647)](https://github.com/elastic/kibana/pull/168647)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Devon
Thomson","email":"devon.thomson@elastic.co"},"sourceCommit":{"committedDate":"2023-10-13T13:28:57Z","message":"Fix
ML swimlane embeddable titles (#168647)\n\nStops the ML Embeddables from
setting the default title and default description on their outputs
during
initialization.","sha":"7cb153d4d7344212c437553655d980b02b4b355b","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Feature:Embedding",":ml","Feature:Anomaly
Detection","Team:Presentation","loe:small","release_note:skip","impact:medium","v8.11.0","v8.12.0"],"number":168647,"url":"https://github.com/elastic/kibana/pull/168647","mergeCommit":{"message":"Fix
ML swimlane embeddable titles (#168647)\n\nStops the ML Embeddables from
setting the default title and default description on their outputs
during
initialization.","sha":"7cb153d4d7344212c437553655d980b02b4b355b"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/168647","number":168647,"mergeCommit":{"message":"Fix
ML swimlane embeddable titles (#168647)\n\nStops the ML Embeddables from
setting the default title and default description on their outputs
during
initialization.","sha":"7cb153d4d7344212c437553655d980b02b4b355b"}}]}]
BACKPORT-->
Co-authored-by: Devon Thomson <devon.thomson@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Add functional tests for Data Drift view
(#167911)](https://github.com/elastic/kibana/pull/167911)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Quynh Nguyen
(Quinn)","email":"43350163+qn895@users.noreply.github.com"},"sourceCommit":{"committedDate":"2023-10-12T22:52:25Z","message":"[ML]
Add functional tests for Data Drift view (#167911)\n\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f28349faf19d78bb679918297742a0bf7cb064f5","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":[":ml","test_ui_functional","release_note:skip","v8.11.0","v8.12.0","v8.11.1"],"number":167911,"url":"https://github.com/elastic/kibana/pull/167911","mergeCommit":{"message":"[ML]
Add functional tests for Data Drift view (#167911)\n\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f28349faf19d78bb679918297742a0bf7cb064f5"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/167911","number":167911,"mergeCommit":{"message":"[ML]
Add functional tests for Data Drift view (#167911)\n\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"f28349faf19d78bb679918297742a0bf7cb064f5"}}]}]
BACKPORT-->
Co-authored-by: Quynh Nguyen (Quinn) <43350163+qn895@users.noreply.github.com>
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] API integration tests for start and stop model deployment
(#168460)](https://github.com/elastic/kibana/pull/168460)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Dima
Arnautov","email":"dmitrii.arnautov@elastic.co"},"sourceCommit":{"committedDate":"2023-10-10T16:59:33Z","message":"[ML]
API integration tests for start and stop model deployment
(#168460)\n\n## Summary\r\n\r\nPart of #164562\r\n\r\nAdds API
integration tests for `_start` and `_stop` trained
model\r\ndeployment.\r\n\r\n### Checklist\r\n\r\n- [x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"9ba0e710a545ae3bb6f54303a5989619ea8f64ee","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":[":ml","release_note:skip","test-api-integration","Team:ML","v8.11.0","v8.12.0"],"number":168460,"url":"https://github.com/elastic/kibana/pull/168460","mergeCommit":{"message":"[ML]
API integration tests for start and stop model deployment
(#168460)\n\n## Summary\r\n\r\nPart of #164562\r\n\r\nAdds API
integration tests for `_start` and `_stop` trained
model\r\ndeployment.\r\n\r\n### Checklist\r\n\r\n- [x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"9ba0e710a545ae3bb6f54303a5989619ea8f64ee"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/168460","number":168460,"mergeCommit":{"message":"[ML]
API integration tests for start and stop model deployment
(#168460)\n\n## Summary\r\n\r\nPart of #164562\r\n\r\nAdds API
integration tests for `_start` and `_stop` trained
model\r\ndeployment.\r\n\r\n### Checklist\r\n\r\n- [x] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"9ba0e710a545ae3bb6f54303a5989619ea8f64ee"}}]}]
BACKPORT-->
Co-authored-by: Dima Arnautov <dmitrii.arnautov@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Remove the Tech Preview label from ELSER v2
(#168192)](https://github.com/elastic/kibana/pull/168192)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Dima
Arnautov","email":"dmitrii.arnautov@elastic.co"},"sourceCommit":{"committedDate":"2023-10-06T18:00:05Z","message":"[ML]
Remove the Tech Preview label from ELSER v2 (#168192)\n\n##
Summary\r\n\r\nRemoves the Tech Preview label from ELSER v2 models.
\r\n\r\n### Checklist\r\n\r\n- [
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [x] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"0636610217d570608eaf7cbfc06432a5b581d497","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":[":ml","release_note:skip","Team:ML","v8.11.0","v8.12.0"],"number":168192,"url":"https://github.com/elastic/kibana/pull/168192","mergeCommit":{"message":"[ML]
Remove the Tech Preview label from ELSER v2 (#168192)\n\n##
Summary\r\n\r\nRemoves the Tech Preview label from ELSER v2 models.
\r\n\r\n### Checklist\r\n\r\n- [
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [x] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"0636610217d570608eaf7cbfc06432a5b581d497"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/168192","number":168192,"mergeCommit":{"message":"[ML]
Remove the Tech Preview label from ELSER v2 (#168192)\n\n##
Summary\r\n\r\nRemoves the Tech Preview label from ELSER v2 models.
\r\n\r\n### Checklist\r\n\r\n- [
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [x] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"0636610217d570608eaf7cbfc06432a5b581d497"}}]}]
BACKPORT-->
Co-authored-by: Dima Arnautov <dmitrii.arnautov@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Fix Anomaly charts embeddable fails to load if partition value
is empty string
(#167827)](https://github.com/elastic/kibana/pull/167827)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Quynh Nguyen
(Quinn)","email":"43350163+qn895@users.noreply.github.com"},"sourceCommit":{"committedDate":"2023-10-06T16:49:32Z","message":"[ML]
Fix Anomaly charts embeddable fails to load if partition value is empty
string (#167827)\n\n## Summary\r\n\r\nFix
https://github.com/elastic/kibana/issues/165847. This PR
fixes\r\nAnomaly charts embeddable failing to load if partition value is
an empty\r\nstring. This bug is caused by invalid kuery string when a
field value is\r\nempty.\r\n\r\nPreviously, embeddable input was
receiving the following kql query\r\n`{exampleFieldName}:` if the value
is empty. The fix in this PR makes it\r\nso it's
`{exampleFieldName}:\"\"`. So a new
function\r\ngetEscapedKueryForSelectionInfluencer is added for this
specific\r\nscenario.\r\n\r\nMaking a new function here instead of
updating\r\n`escapeKueryForFieldValuePair` because all the other usages
of that\r\nfunction are related to opening a URL so it requires a
special escape.\r\n\r\n###
After:\r\n\r\n\r\nf09b207f-1c4c-42a5-aaea-dad50512676c\r\n\r\n\r\n\r\n\r\n###
Steps to reproduce:\r\n\r\n- In a data view, create a new runtime field.
For this runtime field,\r\nset to `keyword` type, and use following
script to mimic having an empty\r\nfield for certain docs.\r\n```\r\ndef
source = doc['ampersand&name'].value;\r\nif (source == \"AWE\")
{\r\n\temit(\"\");\r\n}\r\nelse
{\r\n\temit(doc['ampersand&name'].value);\r\n}\r\n```\r\n- Create an
Anomaly detection using that data view, using the runtime\r\nfield as a
split field or partition field.\r\n\r\n### Checklist\r\n\r\nDelete any
items that are not applicable to this PR.\r\n\r\n- [ ] Any text added
follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [x] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [ ] Any UI
touched in this PR is usable by keyboard only (learn more\r\nabout
[keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n-
[ ] Any UI touched in this PR does not create any new axe
failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[ ] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[ ] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[ ] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n\r\n###
Risk Matrix\r\n\r\nDelete this section if it is not applicable to this
PR.\r\n\r\nBefore closing this PR, invite QA, stakeholders, and other
developers to\r\nidentify risks that should be tested prior to the
change/feature\r\nrelease.\r\n\r\nWhen forming the risk matrix, consider
some of the following examples\r\nand how they may potentially impact
the change:\r\n\r\n| Risk | Probability | Severity | Mitigation/Notes
|\r\n\r\n|---------------------------|-------------|----------|-------------------------|\r\n|
Multiple Spaces—unexpected behavior in non-default Kibana
Space.\r\n| Low | High | Integration tests will verify that all features
are still\r\nsupported in non-default Kibana Space and when user
switches between\r\nspaces. |\r\n| Multiple nodes—Elasticsearch
polling might have race conditions\r\nwhen multiple Kibana nodes are
polling for the same tasks. | High | Low\r\n| Tasks are idempotent, so
executing them multiple times will not result\r\nin logical error, but
will degrade performance. To test for this case we\r\nadd plenty of unit
tests around this logic and document manual testing\r\nprocedure. |\r\n|
Code should gracefully handle cases when feature X or plugin Y
are\r\ndisabled. | Medium | High | Unit tests will verify that any
feature flag\r\nor plugin combination still results in our service
operational. |\r\n| [See more potential
risk\r\nexamples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
|\r\n\r\n\r\n### For maintainers\r\n\r\n- [ ] This was checked for
breaking API changes and was
[labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"ecc9d9f267e6f60509805bfdc01e8eed2858a586","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix",":ml","Feature:Anomaly
Detection","v8.11.0","v8.12.0"],"number":167827,"url":"https://github.com/elastic/kibana/pull/167827","mergeCommit":{"message":"[ML]
Fix Anomaly charts embeddable fails to load if partition value is empty
string (#167827)\n\n## Summary\r\n\r\nFix
https://github.com/elastic/kibana/issues/165847. This PR
fixes\r\nAnomaly charts embeddable failing to load if partition value is
an empty\r\nstring. This bug is caused by invalid kuery string when a
field value is\r\nempty.\r\n\r\nPreviously, embeddable input was
receiving the following kql query\r\n`{exampleFieldName}:` if the value
is empty. The fix in this PR makes it\r\nso it's
`{exampleFieldName}:\"\"`. So a new
function\r\ngetEscapedKueryForSelectionInfluencer is added for this
specific\r\nscenario.\r\n\r\nMaking a new function here instead of
updating\r\n`escapeKueryForFieldValuePair` because all the other usages
of that\r\nfunction are related to opening a URL so it requires a
special escape.\r\n\r\n###
After:\r\n\r\n\r\nf09b207f-1c4c-42a5-aaea-dad50512676c\r\n\r\n\r\n\r\n\r\n###
Steps to reproduce:\r\n\r\n- In a data view, create a new runtime field.
For this runtime field,\r\nset to `keyword` type, and use following
script to mimic having an empty\r\nfield for certain docs.\r\n```\r\ndef
source = doc['ampersand&name'].value;\r\nif (source == \"AWE\")
{\r\n\temit(\"\");\r\n}\r\nelse
{\r\n\temit(doc['ampersand&name'].value);\r\n}\r\n```\r\n- Create an
Anomaly detection using that data view, using the runtime\r\nfield as a
split field or partition field.\r\n\r\n### Checklist\r\n\r\nDelete any
items that are not applicable to this PR.\r\n\r\n- [ ] Any text added
follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [x] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [ ] Any UI
touched in this PR is usable by keyboard only (learn more\r\nabout
[keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n-
[ ] Any UI touched in this PR does not create any new axe
failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[ ] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[ ] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[ ] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n\r\n###
Risk Matrix\r\n\r\nDelete this section if it is not applicable to this
PR.\r\n\r\nBefore closing this PR, invite QA, stakeholders, and other
developers to\r\nidentify risks that should be tested prior to the
change/feature\r\nrelease.\r\n\r\nWhen forming the risk matrix, consider
some of the following examples\r\nand how they may potentially impact
the change:\r\n\r\n| Risk | Probability | Severity | Mitigation/Notes
|\r\n\r\n|---------------------------|-------------|----------|-------------------------|\r\n|
Multiple Spaces—unexpected behavior in non-default Kibana
Space.\r\n| Low | High | Integration tests will verify that all features
are still\r\nsupported in non-default Kibana Space and when user
switches between\r\nspaces. |\r\n| Multiple nodes—Elasticsearch
polling might have race conditions\r\nwhen multiple Kibana nodes are
polling for the same tasks. | High | Low\r\n| Tasks are idempotent, so
executing them multiple times will not result\r\nin logical error, but
will degrade performance. To test for this case we\r\nadd plenty of unit
tests around this logic and document manual testing\r\nprocedure. |\r\n|
Code should gracefully handle cases when feature X or plugin Y
are\r\ndisabled. | Medium | High | Unit tests will verify that any
feature flag\r\nor plugin combination still results in our service
operational. |\r\n| [See more potential
risk\r\nexamples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
|\r\n\r\n\r\n### For maintainers\r\n\r\n- [ ] This was checked for
breaking API changes and was
[labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"ecc9d9f267e6f60509805bfdc01e8eed2858a586"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/167827","number":167827,"mergeCommit":{"message":"[ML]
Fix Anomaly charts embeddable fails to load if partition value is empty
string (#167827)\n\n## Summary\r\n\r\nFix
https://github.com/elastic/kibana/issues/165847. This PR
fixes\r\nAnomaly charts embeddable failing to load if partition value is
an empty\r\nstring. This bug is caused by invalid kuery string when a
field value is\r\nempty.\r\n\r\nPreviously, embeddable input was
receiving the following kql query\r\n`{exampleFieldName}:` if the value
is empty. The fix in this PR makes it\r\nso it's
`{exampleFieldName}:\"\"`. So a new
function\r\ngetEscapedKueryForSelectionInfluencer is added for this
specific\r\nscenario.\r\n\r\nMaking a new function here instead of
updating\r\n`escapeKueryForFieldValuePair` because all the other usages
of that\r\nfunction are related to opening a URL so it requires a
special escape.\r\n\r\n###
After:\r\n\r\n\r\nf09b207f-1c4c-42a5-aaea-dad50512676c\r\n\r\n\r\n\r\n\r\n###
Steps to reproduce:\r\n\r\n- In a data view, create a new runtime field.
For this runtime field,\r\nset to `keyword` type, and use following
script to mimic having an empty\r\nfield for certain docs.\r\n```\r\ndef
source = doc['ampersand&name'].value;\r\nif (source == \"AWE\")
{\r\n\temit(\"\");\r\n}\r\nelse
{\r\n\temit(doc['ampersand&name'].value);\r\n}\r\n```\r\n- Create an
Anomaly detection using that data view, using the runtime\r\nfield as a
split field or partition field.\r\n\r\n### Checklist\r\n\r\nDelete any
items that are not applicable to this PR.\r\n\r\n- [ ] Any text added
follows [EUI's
writing\r\nguidelines](https://elastic.github.io/eui/#/guidelines/writing),
uses\r\nsentence case text and includes
[i18n\r\nsupport](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)\r\n-
[
]\r\n[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)\r\nwas
added for features that require explanation or tutorials\r\n- [x] [Unit
or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common scenarios\r\n- [ ] Any UI
touched in this PR is usable by keyboard only (learn more\r\nabout
[keyboard accessibility](https://webaim.org/techniques/keyboard/))\r\n-
[ ] Any UI touched in this PR does not create any new axe
failures\r\n(run axe in
browser:\r\n[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),\r\n[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))\r\n-
[ ] If a plugin configuration key changed, check if it needs to
be\r\nallowlisted in the cloud and added to the
[docker\r\nlist](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)\r\n-
[ ] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[ ] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\n\r\n###
Risk Matrix\r\n\r\nDelete this section if it is not applicable to this
PR.\r\n\r\nBefore closing this PR, invite QA, stakeholders, and other
developers to\r\nidentify risks that should be tested prior to the
change/feature\r\nrelease.\r\n\r\nWhen forming the risk matrix, consider
some of the following examples\r\nand how they may potentially impact
the change:\r\n\r\n| Risk | Probability | Severity | Mitigation/Notes
|\r\n\r\n|---------------------------|-------------|----------|-------------------------|\r\n|
Multiple Spaces—unexpected behavior in non-default Kibana
Space.\r\n| Low | High | Integration tests will verify that all features
are still\r\nsupported in non-default Kibana Space and when user
switches between\r\nspaces. |\r\n| Multiple nodes—Elasticsearch
polling might have race conditions\r\nwhen multiple Kibana nodes are
polling for the same tasks. | High | Low\r\n| Tasks are idempotent, so
executing them multiple times will not result\r\nin logical error, but
will degrade performance. To test for this case we\r\nadd plenty of unit
tests around this logic and document manual testing\r\nprocedure. |\r\n|
Code should gracefully handle cases when feature X or plugin Y
are\r\ndisabled. | Medium | High | Unit tests will verify that any
feature flag\r\nor plugin combination still results in our service
operational. |\r\n| [See more potential
risk\r\nexamples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
|\r\n\r\n\r\n### For maintainers\r\n\r\n- [ ] This was checked for
breaking API changes and was
[labeled\r\nappropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\r\n\r\n---------\r\n\r\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"ecc9d9f267e6f60509805bfdc01e8eed2858a586"}}]}]
BACKPORT-->
Co-authored-by: Quynh Nguyen (Quinn) <43350163+qn895@users.noreply.github.com>
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Fix anomaly charts when partition field contains an empty string
(#168102)](https://github.com/elastic/kibana/pull/168102)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Dima
Arnautov","email":"dmitrii.arnautov@elastic.co"},"sourceCommit":{"committedDate":"2023-10-06T07:49:25Z","message":"[ML]
Fix anomaly charts when partition field contains an empty string
(#168102)\n\n## Summary\r\n\r\nFixes #168067.\r\n\r\nFixes anomaly
charts fetching by replacing logical OR operator with\r\nnullish
coalescing.\r\n\r\n\r\n\r\n\r\n\r\n###
Checklist\r\n\r\n- [ ] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"efa4e76203a1c20977994559b0e57c09d7751310","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix",":ml","Feature:Anomaly
Detection","Team:ML","v8.11.0","v8.12.0"],"number":168102,"url":"https://github.com/elastic/kibana/pull/168102","mergeCommit":{"message":"[ML]
Fix anomaly charts when partition field contains an empty string
(#168102)\n\n## Summary\r\n\r\nFixes #168067.\r\n\r\nFixes anomaly
charts fetching by replacing logical OR operator with\r\nnullish
coalescing.\r\n\r\n\r\n\r\n\r\n\r\n###
Checklist\r\n\r\n- [ ] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"efa4e76203a1c20977994559b0e57c09d7751310"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/168102","number":168102,"mergeCommit":{"message":"[ML]
Fix anomaly charts when partition field contains an empty string
(#168102)\n\n## Summary\r\n\r\nFixes #168067.\r\n\r\nFixes anomaly
charts fetching by replacing logical OR operator with\r\nnullish
coalescing.\r\n\r\n\r\n\r\n\r\n\r\n###
Checklist\r\n\r\n- [ ] [Unit or
functional\r\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\r\nwere
updated or added to match the most common
scenarios","sha":"efa4e76203a1c20977994559b0e57c09d7751310"}}]}]
BACKPORT-->
Co-authored-by: Dima Arnautov <dmitrii.arnautov@elastic.co>
# Backport
This will backport the following commits from `main` to `8.11`:
- [[ML] Data Frame analytics outlier detection results: ensure
scatterplot matrix adheres to bounding box
(#167941)](https://github.com/elastic/kibana/pull/167941)
<!--- Backport version: 8.9.7 -->
### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)
<!--BACKPORT [{"author":{"name":"Melissa
Alvarez","email":"melissa.alvarez@elastic.co"},"sourceCommit":{"committedDate":"2023-10-05T15:02:22Z","message":"[ML]
Data Frame analytics outlier detection results: ensure scatterplot
matrix adheres to bounding box (#167941)\n\n## Summary\r\n\r\nFixes
https://github.com/elastic/kibana/issues/144709\r\n\r\nEnsures
scatterplot matrix does not over flow bounding box. \r\nThe css already
had an overflow property for 'mlScatterplotMatrix' but\r\nthe class was
never added to the parent div. This PR adds the class to\r\nthe
appropriate div so scatterplot matrix does not overlfow.\r\n\r\n<img
width=\"1102\"
alt=\"image\"\r\nsrc=\"08cbcec2-e1cb-41a4-a570-258071219320\">\r\n\r\n<img
width=\"914\"
alt=\"image\"\r\nsrc=\"ac885ed7-926b-4afe-b270-9b6035d9dc74\">\r\n\r\n\r\n\r\n###
Checklist\r\n\r\n- [x] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[x] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"93b67fe732ec09fcb049b269d0750044161c97d1","branchLabelMapping":{"^v8.12.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix",":ml","Feature:Data
Frame
Analytics","v8.11.0","v8.12.0"],"number":167941,"url":"https://github.com/elastic/kibana/pull/167941","mergeCommit":{"message":"[ML]
Data Frame analytics outlier detection results: ensure scatterplot
matrix adheres to bounding box (#167941)\n\n## Summary\r\n\r\nFixes
https://github.com/elastic/kibana/issues/144709\r\n\r\nEnsures
scatterplot matrix does not over flow bounding box. \r\nThe css already
had an overflow property for 'mlScatterplotMatrix' but\r\nthe class was
never added to the parent div. This PR adds the class to\r\nthe
appropriate div so scatterplot matrix does not overlfow.\r\n\r\n<img
width=\"1102\"
alt=\"image\"\r\nsrc=\"08cbcec2-e1cb-41a4-a570-258071219320\">\r\n\r\n<img
width=\"914\"
alt=\"image\"\r\nsrc=\"ac885ed7-926b-4afe-b270-9b6035d9dc74\">\r\n\r\n\r\n\r\n###
Checklist\r\n\r\n- [x] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[x] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"93b67fe732ec09fcb049b269d0750044161c97d1"}},"sourceBranch":"main","suggestedTargetBranches":["8.11"],"targetPullRequestStates":[{"branch":"8.11","label":"v8.11.0","labelRegex":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v8.12.0","labelRegex":"^v8.12.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/167941","number":167941,"mergeCommit":{"message":"[ML]
Data Frame analytics outlier detection results: ensure scatterplot
matrix adheres to bounding box (#167941)\n\n## Summary\r\n\r\nFixes
https://github.com/elastic/kibana/issues/144709\r\n\r\nEnsures
scatterplot matrix does not over flow bounding box. \r\nThe css already
had an overflow property for 'mlScatterplotMatrix' but\r\nthe class was
never added to the parent div. This PR adds the class to\r\nthe
appropriate div so scatterplot matrix does not overlfow.\r\n\r\n<img
width=\"1102\"
alt=\"image\"\r\nsrc=\"08cbcec2-e1cb-41a4-a570-258071219320\">\r\n\r\n<img
width=\"914\"
alt=\"image\"\r\nsrc=\"ac885ed7-926b-4afe-b270-9b6035d9dc74\">\r\n\r\n\r\n\r\n###
Checklist\r\n\r\n- [x] This renders correctly on smaller devices using a
responsive\r\nlayout. (You can test this [in
your\r\nbrowser](https://www.browserstack.com/guide/responsive-testing-on-local-server))\r\n-
[x] This was checked for
[cross-browser\r\ncompatibility](https://www.elastic.co/support/matrix#matrix_browsers)\r\n\r\nCo-authored-by:
Kibana Machine
<42973632+kibanamachine@users.noreply.github.com>","sha":"93b67fe732ec09fcb049b269d0750044161c97d1"}}]}]
BACKPORT-->
Co-authored-by: Melissa Alvarez <melissa.alvarez@elastic.co>
Part of #166796.
Depends on https://github.com/elastic/elasticsearch/pull/99738.
Uses the `delete_dest_index` flag instead of ES call to delete
destination index in the transforms UI when deleting transforms.
The PR also fixes some code related to destination indices for
transforms and data frame analytics. A destination index can be just a
single string. Before the properly typed transform APIs were available
via `estypes`, we accidentally treated destination indices similar to
source indices which might also be arrays of indices.
Add serverless functional tests for each project.
**Search**
Opens the trained models page and checks that there are 4 models listed.
**Observability**
Creates a AD job and then navigates to the AD jobs list and checks that
the job is listed.
**Security**
Creates a AD job and then navigates to the AD jobs list and checks that
the job is listed.
Creates a DFA job and then navigates to the DFA jobs list and checks
that the job is listed.
Navigates to the trained models page and checks that there are no
trained models listed.
Also adds tests for each project to ensure that kibana search bar only
lists the pages which are enabled.
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
We register our cases integration after checking that the license level
is platinum or trial, however if the license changes from platinum ->
basic and then back again, we attempt to register them again. This
throws an error during kibana start up.
To test, change the license level platinum/trial -> basic and then basic
-> platinum.
There will now be a warning the log `ML failed to register cases
persistable state for ml_anomaly_swimlane`
Also updates the AIOPs change point cases registration which also should
only be registered when running with a platinum or trial license.
## Summary
Resolves: https://github.com/elastic/kibana/issues/166301
Adds support for solution/category filtering to maintenance windows by
adding a new property: `category_ids`. Selecting one or more solutions
when creating/updating a maintenance window will cause the maintenance
window to only suppress rule types belonging to said solutions. In order
to achieve filtering by solution/category, we are adding a new field to
the rule types schema called `category`. This field should map to the
feature category that the rule type belongs to (`observability`,
`securitySolution` or `management`).
Our initial plan was to use feature IDs or rule type IDs to accomplish
this filtering, we decided against using rule type IDs because if a new
rule type gets added, we need to change the API to support this new rule
type. We decided against feature IDs because it's a very anti-serverless
way of accomplishing this feature, as we don't want to expose feature
IDs to APIs. We decided on app categories because it works well with
serverless and should be much easier to maintain if new rule types are
added in the future.
This means the `rule_types` API has to be changed to include this new
field, although it shouldn't be a breaking change since we're just
adding a new field. No migrations are needed since rule types are in
memory and maintenance windows are backwards compatible.

### Error state:

### Checklist
Delete any items that are not applicable to this PR.
- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [x]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Dima Arnautov <arnautov.dima@gmail.com>
Updates the text for the info callouts which are displayed when anomaly
detection jobs are waiting for a node.
@szabosteve would you mind having a review of the text?
**Jobs list**

**Creating a new job**

Fixes https://github.com/elastic/kibana/issues/165472
---------
Co-authored-by: István Zoltán Szabó <istvan.szabo@elastic.co>
## Summary
We're breaking https://github.com/elastic/kibana/pull/166813 up into
smaller PRs in the interest of getting PRs through sooner for type
fixes. These are the changes for ML UI.
---------
Co-authored-by: Dima Arnautov <dmitrii.arnautov@elastic.co>
Removed `isServerless` flag which lived in our global context and had to
be passed about to the various components which create their own version
of the context using `getMlGlobalServices`
This PR adds a new context which contains flags for all of the features
which can be toggled when in serverless mode.
Flags added:
```
showNodeInfo
showMLNavMenu
showLicenseInfo
isADEnabled
isDFAEnabled
isNLPEnabled
```
The enabled features flags are now read from the config file client
side, rather than using capabilities.
Additional changes:
- Changes the wording of the awaiting ML node callout in serverless.
- In the search project, the default ML page is the trained models list
and not Overview
- Reenables the Memory Usage page for all projects
---------
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
## Summary
This PR adds data drift detection workflow from Trained models to Data
comparison view. It also renames Data comparison to Data Drift.
**From the new map view in Trained model list:**
- Clicking on the index icon in the map view will give an option/action
to Analyze data drift
a68163ab-8a83-4378-8cf3-ea49f4480a06
- If model has detected related indices, it will also give an option to
Analyze data drift in the Transform actions
**From the data comparison/drift page:**
- Default screen with list of available data views and saved search will
be shown
<img width="1470" alt="Screen Shot 2023-09-07 at 00 22 01"
src="db13b8b7-9d90-4220-b03e-9f9d12ab53e9">
- But can also customize index patterns for the data sets to analyze.
Upon 'analyzing', a new data view will be created if needed (either
permanently or temporarily).
<img width="1271" alt="Screen Shot 2023-08-29 at 16 56 57"
src="e000e920-162b-4369-8762-70b6244e50e7">
<img width="1470" alt="Screen Shot 2023-09-07 at 00 22 49"
src="6577a530-c3b0-4ab9-95e4-d1d8fd1c9f0a">
- If there exists a data view with exact combination of index patterns
and time field, it will use that data view
- If there exists a data view with the same index patterns but different
time field, it will create a new data view with name
`{referencePattern},{comparisonPattern}-{timeField}`
- If no data view exists that matches, it will create a new data view
with name `{referencePattern},{comparisonPattern}`
## For reviewers:
- **appex-sharedux**: [Small change in the exported type interface for
BaseSavedObjectFinder](https://github.com/elastic/kibana/pull/162853/files#diff-5e2e62df8aba5ac9445962bfa00eee933a386110d0a24dfe6ac0f300a796ccc3)
to correctly list `children` as an accepted prop. This prop which is
used for the `toolsRight`.
- **security-solution**: Renaming of `Data comparison` to `Data Drift`
## Tests:
[Flaky test suite runner with Data Drift
test](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/3216#018accc2-d33b-4cd6-a178-589e6698b675)
... successful after 50 runs✅
### Checklist
Delete any items that are not applicable to this PR.
- [ ] Any text added [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
### Risk Matrix
Delete this section if it is not applicable to this PR.
Before closing this PR, invite QA, stakeholders, and other developers to
identify risks that should be tested prior to the change/feature
release.
When forming the risk matrix, consider some of the following examples
and how they may potentially impact the change:
| Risk | Probability | Severity | Mitigation/Notes |
|---------------------------|-------------|----------|-------------------------|
| Multiple Spaces—unexpected behavior in non-default Kibana Space.
| Low | High | Integration tests will verify that all features are still
supported in non-default Kibana Space and when user switches between
spaces. |
| Multiple nodes—Elasticsearch polling might have race conditions
when multiple Kibana nodes are polling for the same tasks. | High | Low
| Tasks are idempotent, so executing them multiple times will not result
in logical error, but will degrade performance. To test for this case we
add plenty of unit tests around this logic and document manual testing
procedure. |
| Code should gracefully handle cases when feature X or plugin Y are
disabled. | Medium | High | Unit tests will verify that any feature flag
or plugin combination still results in our service operational. |
| [See more potential risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |
### For maintainers
- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
---------
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Adds `created_by` property of `advanced-wizard` to all jobs created by
the advanced job wizard.
Previously no `created_by` property was added to these jobs.
When cloning, jobs with no `created_by` property or one with a value of
`advanced-wizard` will be opened in the advanced wizard.
Closes https://github.com/elastic/kibana/issues/166053
## 📓 Summary
These changes fix the type-check issues related to infra obs UI code.
It also includes some fixes for the APM plugin that were stopping the
check step from passing.
---------
Co-authored-by: Marco Antonio Ghiani <marcoantonio.ghiani@elastic.co>
## Summary
Adds a shared service for elastic curated models. The first use case is
to provide a default/recommended ELSER version based on the hardware of
the current cluster.
#### Why?
In 8.11 we'll provide a platform-specific version of the ELSER v2
alongside the portable one. At the moment several solutions refer to
ELSER for download/inference purposes with a `.elser_model_1` constant.
Starting 8.11 the model ID will vary, so using the `ElastcModels`
service allows retrieving the recommended version of ELSER for the
current cluster without any changes by solution teams in future
releases. It is still possible to request an older version of the model
if necessary.
#### Implementation
- Adds a new Kibana API endpoint `/trained_models/model_downloads` that
provides a list of model definitions, with the `default` and
`recommended` flags.
- Adds a new Kibana API endpoint `/trained_models/elser_config` that
provides an ELSER configuration based on the cluster architecture.
- `getELSER` method is exposed from the plugin `setup` server-side as
part of our shared services and plugin `start` client-side.
### Checklist
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
Switches to using the serverless config file to enabled/disable ML
features rather than a function shared from the setup contract.
Storing these flags in a config file means they are already available
when setup runs and so can be used when registering integrations into
other plugins.
Removes the dependency on ML from `security_solution_serverless`,
`serverless_observability` and `serverless_search`
**ML Management page**
- Fixes general page loading issues.
- Ensures only enabled features are shown as tabs
- Ensures only jobs for enabled features can be exported and imported.
- Ensures only enabled features are listed in the saved object sync
output.
- On trained models tab:
- Only lists DFA models if NLP is disabled.
- Only lists non-DFA models if DFA is disabled.
**Anomaly Detection**
- Hides node information in anomaly detection jobs list.
- Hides the Exclude frozen data option in the Use full time range
selector in job wizards.
**Data frame analytics**
- Hides all node and license level information.
**Trained models**
- Only lists DFA models if NLP is disabled.
- Only lists non-DFA models if DFA is disabled.
- Hides all node and license level information.
- Hides DFA nodes
**Notifications and memory usage**
- Ensures only enabled features are mentioned. Including selectable
types in the search bar filters.
**Integrations with other plugins**
- Changes registration for integrations into other plugins so they only
happen if the relevant feature is enabled.
- Client side: UI actions, cases, embeddables, alerts, maps.
- Server side: Sample data sets, cases
**AIOPS**
- Hides the Exclude frozen data option in the Use full time range
selector on all pages
**Notes for non ML team reviewers**
**response-ops**
I've divided the
[persistable_state.ts](https://github.com/elastic/kibana/pull/163724#diff-e02dc0b6cb5b63965372b1f4a84d2287cba31a15ab525ab7983f02d09f23879f)
test into basic and trial version.
The ML cases attachments should only be registered if anomaly detection
is available in a trial or platinum license. This was a bug which I
noticed when making serverless changes.
**Observability**
I've made a few minor changes to the nav menu, fixing names of ML
features and adding the missing Change point detection AIOPs page.
**Security solution**
I've made a few minor changes to the nav menu, fixing names of ML
features and adding some missing ML features.
I think the icons being used will need to be revisited before release as
we have [official ML
icons](https://elastic.github.io/eui/#/display/icons#apps) but not for
every page. So we should probably either have new icons created or all
agree on which standard non-ML icons should be used for the ones which
are missing.
**Search**
The NLP feature is currently disabled in main, I believe this was an
attempt to stop ML anomaly detection alert rules from being registered.
I've reenabled NLP and changed the way we're registering the alerts.
They will now only be registered if the anomaly detection feature is
enabled.
Fixes https://github.com/elastic/kibana/issues/163372
## PR change summary
`v87.2.0`⏩`v88.1.0`
⚠️ The biggest thing to QA in this PR is several **breaking changes** to
`EuiDescriptionList`.
### Description list `columnWidths` prop
This PR introduces a new `columnWidths` prop and removes several Kibana
instances of custom CSS overrides to title/description column widths.
The primary motivation behind this is not just to reduce custom CSS, but
also because v88.0.0 introduced an underlying CSS change of `column`
description lists to using [`display: grid`
CSS](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_grid_layout).
The new prop allows us to support existing description list custom
widths while not requiring Kibana developers to understand or write grid
CSS (except for 1 or two scenarios around `max-width`).
⚠️ **No user-facing UI around column widths should have regressed as a
result of these changes. If they have, please let us know in this PR.**
### Description list gutter size changes
The prop `gutterSize` has been renamed to `rowGutterSize` and the
default size is now `s` instead of `m`.
The change to `s` from `m` means there is an **expected** smaller gap
between list items (see below screenshots):
**Current `EuiDescriptionList` with default `rowGutterSize="s"`**
<img width="753" alt=""
src="c17aef28-ed3b-40c4-84c3-396e788b13bb">
**Prior `EuiDescriptionList` with default `gutterSize="m"`**
<img width="721" alt=""
src="84d5f5a2-8fa6-4f99-9dc0-73fd143aa1e1">
If Kibana teams prefer to keep the previous `m` gutter for their
instances of `EuiDescriptionList`, you have a couple of options:
1. Let EUI team know in the PR and we can set usage back to what it was
before
2. Set `rowGutterSize="m"` yourselves manually
---
## [`88.1.0`](https://github.com/elastic/eui/tree/v88.1.0)
- Added `font.defaultUnits` theme token. EUI component font sizes
default to `rem` units - this token allows consumers to configure this
to `px` or `em` ([#7133](https://github.com/elastic/eui/pull/7133))
- Updated `EuiDescriptionList` with new `columnWidths` prop
([#7146](https://github.com/elastic/eui/pull/7146))
**Bug fixes**
- Fixed `EuiDataGrid`'s keyboard shortcuts popover display
([#7146](https://github.com/elastic/eui/pull/7146))
**CSS-in-JS conversions**
- Renamed `useEuiFontSize()`'s `measurement` option to `unit` for
clarity ([#7133](https://github.com/elastic/eui/pull/7133))
## [`88.0.0`](https://github.com/elastic/eui/tree/v88.0.0)
- Updated `EuiDescriptionList` with a new `columnGutterSize` prop
([#7062](https://github.com/elastic/eui/pull/7062))
**Deprecations**
- Deprecated `EuiSuggest`. We recommend using `EuiSelectable` or
`EuiComboBox` instead
([#7122](https://github.com/elastic/eui/pull/7122))
- Deprecated `EuiControlBar`. We recommend using `EuiBottomBar` instead
([#7122](https://github.com/elastic/eui/pull/7122))
- Deprecated `EuiColorStops`. We recommend copying the component to your
application if necessary
([#7122](https://github.com/elastic/eui/pull/7122))
- Deprecated `EuiNotificationEvent`. We recommend copying the component
to your application if necessary
([#7122](https://github.com/elastic/eui/pull/7122))
**Breaking changes**
- Renamed `EuiDescriptionList`'s `gutterSize` prop to `rowGutterSize`
([#7062](https://github.com/elastic/eui/pull/7062))
- `EuiDescriptionList`'s `rowGutterSize` prop now defaults to a size of
`s` (was previously `m`)
([#7062](https://github.com/elastic/eui/pull/7062))
**Accessibility**
- Fixed the dark mode colors of inline `EuiDescriptionListTitle`s to
meet WCAG color contrast requirements
([#7062](https://github.com/elastic/eui/pull/7062))
**CSS-in-JS conversions**
- Converted `EuiKeyPadMenuItem` to Emotion; Removed `$euiKeyPadMenuSize`
and `$euiKeyPadMenuMarginSize`
([#7118](https://github.com/elastic/eui/pull/7118))
---------
Co-authored-by: Cee Chen <constance.chen@elastic.co>
Co-authored-by: Cee Chen <549407+cee-chen@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Nikita Indik <nikita.indik@elastic.co>
## Summary
Fixes https://github.com/elastic/kibana/issues/165051, ensuring the
correct time range is used in the target Dashboard or Discover pages
when testing custom URLs created in the Anomaly Detection job wizards.
Previously on subsequent tests the page would always open to show `Last
15 minutes` rather than a time range for which there are documents in
the data view used by the datafeed.
This PR ensures the original job object is not affected when the
datafeed is removed for sending off to the endpoint.
---------
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>