From f7fb6116c1676b9de2ff8d2adc52d09960d82c77 Mon Sep 17 00:00:00 2001 From: Lukas Olson Date: Fri, 22 Aug 2025 12:09:05 -0700 Subject: [PATCH 1/5] Make discover tabs schema changes bwc --- .../schema/v1/cm_services.ts | 8 +++--- .../server/saved_objects/schema.ts | 26 +++++++++++++++++++ .../server/saved_objects/search.ts | 3 ++- 3 files changed, 32 insertions(+), 5 deletions(-) diff --git a/src/platform/plugins/shared/saved_search/server/content_management/schema/v1/cm_services.ts b/src/platform/plugins/shared/saved_search/server/content_management/schema/v1/cm_services.ts index 078f86a0e525d..12aca56a30105 100644 --- a/src/platform/plugins/shared/saved_search/server/content_management/schema/v1/cm_services.ts +++ b/src/platform/plugins/shared/saved_search/server/content_management/schema/v1/cm_services.ts @@ -16,9 +16,9 @@ import { updateOptionsSchema, createResultSchema, } from '@kbn/content-management-utils'; -import { SCHEMA_SEARCH_MODEL_VERSION_6 } from '../../../saved_objects/schema'; +import { SCHEMA_SEARCH_MODEL_VERSION_7 } from '../../../saved_objects/schema'; -const savedSearchSavedObjectSchema = savedObjectSchema(SCHEMA_SEARCH_MODEL_VERSION_6); +const savedSearchSavedObjectSchema = savedObjectSchema(SCHEMA_SEARCH_MODEL_VERSION_7); const savedSearchCreateOptionsSchema = schema.maybe( schema.object({ @@ -56,7 +56,7 @@ export const serviceDefinition: ServicesDefinition = { schema: savedSearchCreateOptionsSchema, }, data: { - schema: SCHEMA_SEARCH_MODEL_VERSION_6, + schema: SCHEMA_SEARCH_MODEL_VERSION_7, }, }, out: { @@ -71,7 +71,7 @@ export const serviceDefinition: ServicesDefinition = { schema: savedSearchUpdateOptionsSchema, }, data: { - schema: SCHEMA_SEARCH_MODEL_VERSION_6, + schema: SCHEMA_SEARCH_MODEL_VERSION_7, }, }, }, diff --git a/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts b/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts index a8fc5aa53da6a..28f81d597565c 100644 --- a/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts +++ b/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts @@ -156,3 +156,29 @@ export type DiscoverSessionTab = TypeOf; export const SCHEMA_SEARCH_MODEL_VERSION_6 = SCHEMA_SEARCH_MODEL_VERSION_5.extends({ tabs: schema.maybe(schema.arrayOf(SCHEMA_DISCOVER_SESSION_TAB, { minSize: 1 })), }); + +const { + title, + description, + columns, + grid, + hideChart, + isTextBasedQuery, + kibanaSavedObjectMeta, + rowHeight, + sort, +} = SCHEMA_SEARCH_MODEL_VERSION_6.getPropSchemas(); + +// Mark top-level attributes (except title and description) optional, and mark tabs as required +export const SCHEMA_SEARCH_MODEL_VERSION_7 = schema.object({ + title, + description, + columns: schema.maybe(columns), + grid: schema.maybe(grid), + hideChart: schema.maybe(hideChart), + isTextBasedQuery: schema.maybe(isTextBasedQuery), + kibanaSavedObjectMeta: schema.maybe(kibanaSavedObjectMeta), + rowHeight: schema.maybe(rowHeight), + sort: schema.maybe(sort), + tabs: schema.arrayOf(SCHEMA_DISCOVER_SESSION_TAB, { minSize: 1 }), +}); diff --git a/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts b/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts index 6e9fa179eee6e..8a531a758e674 100644 --- a/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts +++ b/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts @@ -21,6 +21,7 @@ import { SCHEMA_SEARCH_MODEL_VERSION_4, SCHEMA_SEARCH_MODEL_VERSION_5, SCHEMA_SEARCH_MODEL_VERSION_6, + SCHEMA_SEARCH_MODEL_VERSION_7, } from './schema'; export function getSavedSearchObjectType( @@ -91,7 +92,7 @@ export function getSavedSearchObjectType( }, ], schemas: { - forwardCompatibility: SCHEMA_SEARCH_MODEL_VERSION_6.extends({}, { unknowns: 'ignore' }), + forwardCompatibility: SCHEMA_SEARCH_MODEL_VERSION_7.extends({}, { unknowns: 'ignore' }), create: SCHEMA_SEARCH_MODEL_VERSION_6, }, }, From a69945d7300d77fbed73ff10d69aff2c01cd19ab Mon Sep 17 00:00:00 2001 From: Lukas Olson Date: Fri, 22 Aug 2025 12:42:47 -0700 Subject: [PATCH 2/5] Include previous saved object schema --- .../saved_search/server/saved_objects/schema.ts | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts b/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts index 28f81d597565c..259448cb8ba76 100644 --- a/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts +++ b/src/platform/plugins/shared/saved_search/server/saved_objects/schema.ts @@ -157,22 +157,11 @@ export const SCHEMA_SEARCH_MODEL_VERSION_6 = SCHEMA_SEARCH_MODEL_VERSION_5.exten tabs: schema.maybe(schema.arrayOf(SCHEMA_DISCOVER_SESSION_TAB, { minSize: 1 })), }); -const { - title, - description, - columns, - grid, - hideChart, - isTextBasedQuery, - kibanaSavedObjectMeta, - rowHeight, - sort, -} = SCHEMA_SEARCH_MODEL_VERSION_6.getPropSchemas(); +const { columns, grid, hideChart, isTextBasedQuery, kibanaSavedObjectMeta, rowHeight, sort } = + SCHEMA_SEARCH_MODEL_VERSION_6.getPropSchemas(); // Mark top-level attributes (except title and description) optional, and mark tabs as required -export const SCHEMA_SEARCH_MODEL_VERSION_7 = schema.object({ - title, - description, +export const SCHEMA_SEARCH_MODEL_VERSION_7 = SCHEMA_SEARCH_MODEL_VERSION_6.extends({ columns: schema.maybe(columns), grid: schema.maybe(grid), hideChart: schema.maybe(hideChart), From 70f532b6645f5e83a025bd849e658b5a69b7d4d5 Mon Sep 17 00:00:00 2001 From: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Date: Fri, 22 Aug 2025 20:05:05 +0000 Subject: [PATCH 3/5] [CI] Auto-commit changed files from 'node scripts/jest_integration -u src/core/server/integration_tests/ci_checks' --- .../ci_checks/saved_objects/check_registered_types.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts b/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts index f2edcb5b580f1..1a67dc59c5205 100644 --- a/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts +++ b/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts @@ -999,7 +999,7 @@ describe('checking migration metadata changes on all registered SO types', () => "search|global: ce649a79d99c5ff5eb68d544635428ef87946d84", "search|mappings: 432d4dfdb5a33ce29d00ccdcfcda70d7c5f94b52", "search|schemas: 8d6477e08dfdf20335752a69994646f9da90741f", - "search|10.6.0: 09025aae257ec5255b431558a613ec85b5b2defe", + "search|10.6.0: 49f69f50b8a3a46ee97fdbb66c270f3cffd2c673", "search|10.5.0: 1c03deb42d6a3e2e6b889fe9cfb72059dc0a27fb", "search|10.4.0: 1186c880ca98f18121211a92912c5b1748cb8b5a", "search|10.3.0: 695a46a485787aef8c642f72f433e0c07f48dc45", From 7da48bec4e1dcf8d402b69159a99ae676b486731 Mon Sep 17 00:00:00 2001 From: Lukas Olson Date: Mon, 25 Aug 2025 12:30:11 -0700 Subject: [PATCH 4/5] Add entry for saved search object schema --- .../shared/saved_search/server/saved_objects/search.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts b/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts index 8a531a758e674..efa36b11a5b71 100644 --- a/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts +++ b/src/platform/plugins/shared/saved_search/server/saved_objects/search.ts @@ -92,10 +92,17 @@ export function getSavedSearchObjectType( }, ], schemas: { - forwardCompatibility: SCHEMA_SEARCH_MODEL_VERSION_7.extends({}, { unknowns: 'ignore' }), + forwardCompatibility: SCHEMA_SEARCH_MODEL_VERSION_6.extends({}, { unknowns: 'ignore' }), create: SCHEMA_SEARCH_MODEL_VERSION_6, }, }, + 7: { + changes: [], + schemas: { + forwardCompatibility: SCHEMA_SEARCH_MODEL_VERSION_7.extends({}, { unknowns: 'ignore' }), + create: SCHEMA_SEARCH_MODEL_VERSION_7, + }, + }, }, mappings: { dynamic: false, From e70b8fc939beb9358706fc560834992f7fd9b9e7 Mon Sep 17 00:00:00 2001 From: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Date: Mon, 25 Aug 2025 19:50:56 +0000 Subject: [PATCH 5/5] [CI] Auto-commit changed files from 'node scripts/jest_integration -u src/core/server/integration_tests/ci_checks' --- .../saved_objects/check_registered_types.test.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts b/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts index ab62aa41d4569..841201ae70df2 100644 --- a/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts +++ b/src/core/server/integration_tests/ci_checks/saved_objects/check_registered_types.test.ts @@ -160,7 +160,7 @@ describe('checking migration metadata changes on all registered SO types', () => "risk-engine-configuration": "533a0a3f2dbef1c95129146ec4d5714de305be1a", "rules-settings": "53f94e5ce61f5e75d55ab8adbc1fb3d0937d2e0b", "sample-data-telemetry": "c38daf1a49ed24f2a4fb091e6e1e833fccf19935", - "search": "edb9e325564c504e6c49f94115509dc28ccc4b81", + "search": "5078b5f3bc5ed31cd8c16317f17100637734ea2b", "search-session": "fae0dfc63274d6a3b90ca583802c48cab8760637", "search-telemetry": "1bbaf2db531b97fa04399440fa52d46e86d54dd8", "search_playground": "3eba7e7c4563f03f76aea02f5dd3a7a739bf51a3", @@ -989,7 +989,8 @@ describe('checking migration metadata changes on all registered SO types', () => "search|global: ce649a79d99c5ff5eb68d544635428ef87946d84", "search|mappings: 432d4dfdb5a33ce29d00ccdcfcda70d7c5f94b52", "search|schemas: 8d6477e08dfdf20335752a69994646f9da90741f", - "search|10.6.0: 49f69f50b8a3a46ee97fdbb66c270f3cffd2c673", + "search|10.7.0: 39a6319c8a1cee1b3d3be546cff40381ada5c12a", + "search|10.6.0: 09025aae257ec5255b431558a613ec85b5b2defe", "search|10.5.0: 1c03deb42d6a3e2e6b889fe9cfb72059dc0a27fb", "search|10.4.0: 1186c880ca98f18121211a92912c5b1748cb8b5a", "search|10.3.0: 695a46a485787aef8c642f72f433e0c07f48dc45", @@ -1316,7 +1317,7 @@ describe('checking migration metadata changes on all registered SO types', () => "risk-engine-configuration": "10.2.0", "rules-settings": "10.1.0", "sample-data-telemetry": "10.0.0", - "search": "10.6.0", + "search": "10.7.0", "search-session": "10.0.0", "search-telemetry": "10.0.0", "search_playground": "10.1.0", @@ -1461,7 +1462,7 @@ describe('checking migration metadata changes on all registered SO types', () => "risk-engine-configuration": "10.2.0", "rules-settings": "10.1.0", "sample-data-telemetry": "0.0.0", - "search": "10.6.0", + "search": "10.7.0", "search-session": "8.6.0", "search-telemetry": "7.12.0", "search_playground": "10.1.0",