Skip to content

fix(orchestrator): hide Workflows tab from User profile entity pages#3741

Open
its-mitesh-kumar wants to merge 1 commit into
redhat-developer:mainfrom
its-mitesh-kumar:fix/orchestrator-RHDHBUGS-3245-remove-workflows-tab-from-profile
Open

fix(orchestrator): hide Workflows tab from User profile entity pages#3741
its-mitesh-kumar wants to merge 1 commit into
redhat-developer:mainfrom
its-mitesh-kumar:fix/orchestrator-RHDHBUGS-3245-remove-workflows-tab-from-profile

Conversation

@its-mitesh-kumar

Copy link
Copy Markdown
Member

Description

Fixes unintended 'Workflows' tab appearing on User profile entity pages. The IsOrchestratorCatalogTabAvailable condition function was implemented as a React component using useEntity() hook, which is incompatible with the RHDH dynamic-plugin framework's expected (e: Entity) => boolean signature. This caused the condition to not properly filter out User entities, making the Workflows tab appear on all entity pages including the My Profile page.

Root cause

IsOrchestratorCatalogTabAvailable in CatalogTab.tsx was a React component that used the useEntity() hook instead of accepting the entity as a parameter. The RHDH dynamic-plugin framework expects custom if condition functions to follow the (e: Entity) => boolean signature and calls them as plain functions with the entity — the hook-based implementation did not work correctly in this context.

Additionally, the app-config.yaml mount point condition referenced this broken custom component instead of using the framework's built-in hasAnnotation checker. The combination caused the Workflows tab to appear unconditionally on all entity pages, including User profile pages where it should not be shown.

Changes

  1. CatalogTab.tsx: Changed IsOrchestratorCatalogTabAvailable from a React hook-based component to a pure predicate function (entity: Entity) => boolean. Compatible with both the legacy EntityLayout.Route if prop and the RHDH dynamic-plugin if.anyOf condition system.
  2. app-config.yaml: Replaced the custom IsOrchestratorCatalogTabAvailable reference with the built-in hasAnnotation: orchestrator.io/workflows checker for reliable entity filtering in the dynamic plugin system.

Fixed

  • RHDHBUGS-3245 — [Profile] Unintended 'Workflows' tab displayed under 'My profile' section

Test Plan

  • Navigate to My Profile page (click avatar → My Profile in global header)
  • Verify the Workflows tab is NOT visible on the User entity page
  • Navigate to a Component entity that HAS the orchestrator.io/workflows annotation
  • Verify the Workflows tab IS visible and shows workflow content
  • Navigate to a Component entity WITHOUT the orchestrator.io/workflows annotation
  • Verify the Workflows tab is NOT visible
  • Verify no regressions on other entity pages (API, System, Group, Domain)

Checklist

  • A changeset describing the change and affected packages. (more info)
  • Added or Updated documentation
  • Tests for new functionality and regression tests for bug fixes
  • Screenshots attached (for UI changes)

Note

This bug fix was identified and implemented using the bug-fix and raise-pr agent skills. Please verify the fix thoroughly before merging.

@rhdh-gh-app

rhdh-gh-app Bot commented Jul 13, 2026

Copy link
Copy Markdown

Changed Packages

Package Name Package Path Changeset Bump Current Version
@red-hat-developer-hub/backstage-plugin-orchestrator workspaces/orchestrator/plugins/orchestrator patch v5.9.0

@sonarqubecloud

Copy link
Copy Markdown

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant