From 1837c623f4ceea43f6d0258a538ef0b8a6ec10d4 Mon Sep 17 00:00:00 2001 From: Chirag Madlani <12962843+chirag-madlani@users.noreply.github.com> Date: Fri, 16 Oct 2026 22:17:29 +0530 Subject: [PATCH 1/2] Run lineage entity matrices for one representative entity on PR CI DataAssetLineage's column-level tests ran Table against all 8 targets on every PR, and LineageRightPanel checked 10 entity types. PR and merge-queue CI now run Table -> Table (column-menu path) and Table -> Dashboard (API path), and Table only for the right panel; nightly and direct edits to the spec keep the full matrix via pickEntityMatrix. --- .../e2e/Pages/Lineage/DataAssetLineage.spec.ts | 18 +++++++++++------- .../Pages/Lineage/LineageRightPanel.spec.ts | 8 +++++++- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/DataAssetLineage.spec.ts b/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/DataAssetLineage.spec.ts index 017abf0d4866..85859aef8697 100644 --- a/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/DataAssetLineage.spec.ts +++ b/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/DataAssetLineage.spec.ts @@ -95,6 +95,14 @@ const columnLevelEntities = { searchIndex: SearchIndexClass, mlModel: MlModelClass, }; +const columnLevelSources = pickEntityMatrix(__filename, columnLevelEntities, { + table: TableClass, +}); +// Table covers the column-menu path, Dashboard the API path. +const columnLevelTargets = pickEntityMatrix(__filename, columnLevelEntities, { + table: TableClass, + dashboard: DashboardClass, +}); type EntityClassUnion = | TableClass @@ -316,7 +324,7 @@ test.describe('Column Level Lineage', () => { browser ); - Object.entries(columnLevelEntities).forEach(([key, EntityClass]) => { + Object.entries(columnLevelTargets).forEach(([key, EntityClass]) => { const lineageEntity = new EntityClass(); entities.set(key, lineageEntity); @@ -334,12 +342,8 @@ test.describe('Column Level Lineage', () => { await authenticateAdminPage(page); }); - Object.entries( - pickEntityMatrix(__filename, columnLevelEntities, { table: TableClass }) - ).forEach(([key, EntityClassSource]) => { - const entityKeys = Object.keys(columnLevelEntities); - - entityKeys.forEach((targetKey) => { + Object.entries(columnLevelSources).forEach(([key, EntityClassSource]) => { + Object.keys(columnLevelTargets).forEach((targetKey) => { test(`Column lineage for ${key} -> ${targetKey}`, async ({ page }) => { test.slow(); const sourceEntity = new EntityClassSource(); diff --git a/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/LineageRightPanel.spec.ts b/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/LineageRightPanel.spec.ts index f75e52cf0100..a23b887fbdaa 100644 --- a/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/LineageRightPanel.spec.ts +++ b/openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Lineage/LineageRightPanel.spec.ts @@ -26,6 +26,7 @@ import { getDefaultAdminAPIContext, redirectToHomePage, } from '../../../utils/common'; +import { pickEntityMatrix } from '../../../utils/entityMatrix'; import { clickLineageNode, dismissLineageMapOnboarding, @@ -39,7 +40,7 @@ test.describe( () => { test.describe.configure({ mode: 'default' }); - const supportedEntities = [ + const allSupportedEntities = [ { entity: new TableClass(), type: 'table' }, { entity: new TopicClass(), type: 'topic' }, { entity: new DashboardClass(), type: 'dashboard' }, @@ -51,6 +52,11 @@ test.describe( { entity: new MetricClass(), type: 'metric' }, { entity: new ChartClass(), type: 'chart' }, ]; + const supportedEntities = pickEntityMatrix( + __filename, + allSupportedEntities, + allSupportedEntities.filter(({ type }) => type === 'table') + ); test.beforeAll(async ({ browser }) => { const { apiContext, afterAction } = await getDefaultAdminAPIContext( From d4e912a7111828f1a17990409cd15c6d1c833c88 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 17 Oct 2026 08:31:26 +0000 Subject: [PATCH 2/2] chore(playwright): auto-refresh impact-map.generated.json --- .github/playwright/impact-map.generated.json | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/playwright/impact-map.generated.json b/.github/playwright/impact-map.generated.json index 1343c929b27c..f620a81c1829 100644 --- a/.github/playwright/impact-map.generated.json +++ b/.github/playwright/impact-map.generated.json @@ -4309,6 +4309,7 @@ "playwright/e2e/Pages/ExplorePageRightPanel.spec.ts", "playwright/e2e/Pages/Lineage/DataAssetLineage.spec.ts", "playwright/e2e/Pages/Lineage/LineageLargeResponse.spec.ts", + "playwright/e2e/Pages/Lineage/LineageRightPanel.spec.ts", "playwright/e2e/Pages/ServiceEntity.spec.ts", "playwright/e2e/Pages/TasksUIFlow.spec.ts", "playwright/e2e/Pages/Users.spec.ts",