Skip to content

render lineage drawer and icons for AI App, LLM Model, MCP Server#30404

Open
shrabantipaul-collate wants to merge 5 commits into
mainfrom
fix-ai-governance-lineage-drawer-icons
Open

render lineage drawer and icons for AI App, LLM Model, MCP Server#30404
shrabantipaul-collate wants to merge 5 commits into
mainfrom
fix-ai-governance-lineage-drawer-icons

Conversation

@shrabantipaul-collate

@shrabantipaul-collate shrabantipaul-collate commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Describe your changes:

Summary

  • Lineage drawer for AI Application, LLM Model, and MCP Server nodes was rendering empty — DataAssetSummaryPanelV1's switch (entityType) had no case for these types, so it fell through to default: return null, even though EntitySummaryPanel's fetchEntityData() already had a working fallback for unmapped types (raw lineage-node data with description/owners/tags/domains).
  • Lineage nodes for these types also showed missing/wrong icons — they weren't in NON_SERVICE_TYPE_ASSETS or ENTITY_ICON_MAPPER, so getServiceIcon() couldn't resolve an icon for them.

Changes

  • DataAssetSummaryPanelV1.tsx: add AI_APPLICATION / LLM_MODEL / MCP_SERVER to the existing render-case list.
  • Assets.constants.ts: add the three types to NON_SERVICE_TYPE_ASSETS, and add ENTITY_ICON_MAPPER entries using existing @untitledui/icons (CpuChip01/blue, Atom01/purple, Server04/indigo) — no new SVG assets needed.
  • TableUtils.tsx: mirror the three types into entityIconMapping so icon resolution picks them up.

Fixes #

I worked on ... because ...

Type of change:

  • Bug fix
  • Improvement
  • New feature
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation

High-level design:

N/A — small change.

Tests:

Use cases covered

Unit tests

Backend integration tests

Ingestion integration tests

Playwright (UI) tests

Manual testing performed

UI screen recording / screenshots:

Not applicable.

Checklist:

  • I have read the CONTRIBUTING document.
  • My PR title is Fixes <issue-number>: <short explanation>
  • My PR is linked to a GitHub issue via Fixes #<issue-number> above.
  • I have commented on my code, particularly in hard-to-understand areas.
  • For JSON Schema changes: I updated the migration scripts or explained why it is not needed.
  • For UI changes: I attached a screen recording and/or screenshots above.
  • I have added tests (unit / integration / Playwright as applicable) and listed them above.

Greptile Summary

Adds lineage summary rendering and entity-specific icons for AI Applications, LLM Models, and MCP Servers.

  • Routes the three entity types through the existing generic asset summary panel.
  • Registers Untitled UI icons and non-service asset classification for each type.
  • Extends table and lineage icon resolution with the new mappings.

Confidence Score: 5/5

The PR appears safe to merge because no blocking failures remain within the follow-up review scope.

No blocking failure remains.

Important Files Changed

Filename Overview
openmetadata-ui/src/main/resources/ui/src/components/DataAssetSummaryPanelV1/DataAssetSummaryPanelV1.tsx Adds AI Application, LLM Model, and MCP Server to the existing generic summary-rendering branch.
openmetadata-ui/src/main/resources/ui/src/constants/Assets.constants.ts Classifies the three entities as non-service assets and defines their icon styles.
openmetadata-ui/src/main/resources/ui/src/utils/TableUtils.tsx Registers the three entity icons in the shared icon-resolution mapping.

Reviews (5): Last reviewed commit: "Merge branch 'main' into fix-ai-governan..." | Re-trigger Greptile

@shrabantipaul-collate
shrabantipaul-collate requested a review from a team as a code owner July 23, 2026 12:32
@github-actions

Copy link
Copy Markdown
Contributor

❌ PR checklist incomplete

This PR cannot be merged until the following are addressed on its linked issue:

  • No GitHub issue is linked. Link an issue in the Development section of the PR (or add Fixes #12345 to the description). For a same-org cross-repo issue, add Fixes open-metadata/<repo>#123 to the description.

The fields live on the linked issue in the Shipping project (open the issue → right sidebar → Projects). After you set them, re-run this check (or push a commit) — issue/project changes do not re-trigger it automatically.

Maintainers can bypass this check by adding the skip-pr-checks label.

@github-actions

Copy link
Copy Markdown
Contributor

Hi there 👋 Thanks for your contribution!

The OpenMetadata team will review the PR shortly! Once it has been labeled as safe to test, the CI workflows
will start executing and we'll be able to make sure everything is working as expected.

Let us know if you need any help!

@github-actions

github-actions Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

✅ Playwright Results — workflow succeeded

Validated commit 42b8feed90b971f1d21c36656ecd1d2d7da81512 in Playwright run 30096007000, attempt 1.

✅ 537 passed · ❌ 0 failed · 🟡 0 flaky · ⏭️ 5 skipped · 🧰 0 lifecycle flaky

Performance

Blocking targets: ✅ met · Optimization targets: 🟡 in progress

Shard-job maxima below are not the full workflow wall time; the linked run includes build, fixture, planning, and reporting.

🕒 Full workflow signal wall (to summary) 54m 32s

⏱️ Max setup 3m 4s · max shard execution 18m 4s · max shard-job elapsed before upload 21m 19s · reporting 3s

🌐 202.23 requests/attempt · 2.86 app boots/UI scenario · 9.78% common-shard skew

Optimization targets still in progress:

  • Browser traffic was 202.23 requests per attempt (convergence target: fewer than 200).
  • Application boot ratio was 2.86 per UI scenario (1596 boots / 558 scenarios; convergence target: at most 1).
Shard Passed Failed Flaky Skipped Lifecycle failed Lifecycle flaky
✅ Shard chromium-01 143 0 0 3 0 0
✅ Shard chromium-02 133 0 0 0 0 0
✅ Shard chromium-03 123 0 0 0 0 0
✅ Shard data-asset-rules-01 61 0 0 0 0 0
✅ Shard domain-isolation-01 14 0 0 0 0 0
✅ Shard global-state-01 23 0 0 0 0 0
✅ Shard ingestion-01 1 0 0 0 0 0
✅ Shard reindex-01 2 0 0 0 0 0
✅ Shard search-01 10 0 0 0 0 0
✅ Shard search-rbac-01 27 0 0 2 0 0

📦 Download artifacts

How to debug locally
# Download playwright-test-results-<shard> artifact and unzip
npx playwright show-trace path/to/trace.zip    # view trace

@github-actions

Copy link
Copy Markdown
Contributor

Hi there 👋 Thanks for your contribution!

The OpenMetadata team will review the PR shortly! Once it has been labeled as safe to test, the CI workflows
will start executing and we'll be able to make sure everything is working as expected.

Let us know if you need any help!

@shrabantipaul-collate shrabantipaul-collate added the safe to test Add this label to run secure Github workflows on PRs label Jul 24, 2026
@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Jest test Coverage

UI tests summary

Lines Statements Branches Functions
Coverage: 65%
65.67% (76782/116913) 49.52% (46065/93014) 50.76% (13891/27364)

@gitar-bot

gitar-bot Bot commented Jul 24, 2026

Copy link
Copy Markdown
Code Review ✅ Approved

Enables lineage drawer summaries and entity-specific icons for AI Applications, LLM Models, and MCP Servers by mapping them in the data asset panel, non-service assets, and table icon utilities. No issues found.

Options

Display: compact → Showing less information.

Comment with these commands to change the behavior for this request:

Compact
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Gitar

@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe to test Add this label to run secure Github workflows on PRs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant