Skip to content

ACM-33544 ACM-33545 update react router and OCP minimum version#6322

Merged
KevinFCormier merged 10 commits into
stolostron:mainfrom
KevinFCormier:ACM-33545-update-react-router
Jun 10, 2026
Merged

ACM-33544 ACM-33545 update react router and OCP minimum version#6322
KevinFCormier merged 10 commits into
stolostron:mainfrom
KevinFCormier:ACM-33545-update-react-router

Conversation

@KevinFCormier

@KevinFCormier KevinFCormier commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

📝 Summary

Ticket Summary (Title):
Install dynamic plugin SDK 4.22 and set minimum OCP version
Update to react-router 7

Ticket Link:
https://redhat.atlassian.net/browse/ACM-33544
https://redhat.atlassian.net/browse/ACM-33545

Type of Change:

  • 🐞 Bug Fix
  • ✨ Feature
  • 🔧 Refactor
  • 💸 Tech Debt
  • 🧪 Test-related
  • 📄 Docs

✅ Checklist

General

  • PR title follows the convention (e.g. ACM-12340 Fix bug with...)
  • Code builds and runs locally without errors
  • No console logs, commented-out code, or unnecessary files
  • All commits are meaningful and well-labeled
  • All new display strings are externalized for localization (English only)
  • (Nice to have) JSDoc comments added for new functions and interfaces

🗒️ Notes for Reviewers

Summary by CodeRabbit

  • New Features

    • Added React Router v7 as a direct dependency.
  • Improvements

    • Migrated app and wizards to modern routing APIs for smoother navigation.
    • Strengthened TypeScript typings for extension and routing types.
  • Tests

    • Updated test suites to run against the new routing implementation.

@coderabbitai

coderabbitai Bot commented Jun 9, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 76d9994c-de83-4b4e-ace9-38d0bfd5db12

📥 Commits

Reviewing files that changed from the base of the PR and between 89b723e and 1a5f4f5.

⛔ Files ignored due to path filters (2)
  • frontend/package-lock.json is excluded by !**/package-lock.json
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/__snapshots__/DetailsForm.test.tsx.snap is excluded by !**/*.snap, !**/*.snap
📒 Files selected for processing (269)
  • frontend/.storybook/preview.js
  • frontend/jest.config.ts
  • frontend/package.json
  • frontend/packages/multicluster-sdk/README.md
  • frontend/packages/multicluster-sdk/package.json
  • frontend/packages/multicluster-sdk/src/components/FleetResourceLink.test.tsx
  • frontend/packages/multicluster-sdk/src/components/FleetResourceLink.tsx
  • frontend/packages/multicluster-sdk/src/extensions/resource.ts
  • frontend/packages/multicluster-sdk/src/internal/FleetResourceEventStream/EventComponent.test.tsx
  • frontend/packages/multicluster-sdk/src/internal/FleetResourceEventStream/EventComponent.tsx
  • frontend/packages/multicluster-sdk/src/internal/resourceRouteUtils.ts
  • frontend/packages/react-form-wizard/package.json
  • frontend/packages/react-form-wizard/wizards/Ansible/AnsibleExample.tsx
  • frontend/packages/react-form-wizard/wizards/AppWizard/AppExample.tsx
  • frontend/packages/react-form-wizard/wizards/Application/ApplicationExample.tsx
  • frontend/packages/react-form-wizard/wizards/Argo/ArgoExamples.tsx
  • frontend/packages/react-form-wizard/wizards/Cluster/ClusterForm.tsx
  • frontend/packages/react-form-wizard/wizards/Cluster/Provider.tsx
  • frontend/packages/react-form-wizard/wizards/Credentials/CredentialsExample.tsx
  • frontend/packages/react-form-wizard/wizards/Demo.tsx
  • frontend/packages/react-form-wizard/wizards/Home/HomeWizard.tsx
  • frontend/packages/react-form-wizard/wizards/Hypershift/AmazonHypershiftWizard.tsx
  • frontend/packages/react-form-wizard/wizards/Inputs/InputsWizard.tsx
  • frontend/packages/react-form-wizard/wizards/Placement/PlacementExamples.tsx
  • frontend/packages/react-form-wizard/wizards/Policy/PolicyExamples.tsx
  • frontend/packages/react-form-wizard/wizards/PolicyAutomation/PolicyAutomationExamples.tsx
  • frontend/packages/react-form-wizard/wizards/PolicySet/PolicySetExamples.tsx
  • frontend/packages/react-form-wizard/wizards/ROSA/RosaExample.tsx
  • frontend/packages/react-form-wizard/wizards/common/utils.ts
  • frontend/plugins/acm/console-plugin-metadata.ts
  • frontend/plugins/mce/console-plugin-metadata.ts
  • frontend/src/App.tsx
  • frontend/src/NavigationPath.tsx
  • frontend/src/components/ACMNotReadyWarning.test.tsx
  • frontend/src/components/AutomationProviderHint.test.tsx
  • frontend/src/components/ClusterSets/ClusterSetsTable.test.tsx
  • frontend/src/components/ClusterSets/ClusterSetsTable.tsx
  • frontend/src/components/Clusters/ClustersTable.test.tsx
  • frontend/src/components/Clusters/ClustersTableHelper.test.tsx
  • frontend/src/components/Clusters/ClustersTableHelper.tsx
  • frontend/src/components/KubevirtProviderAlert.test.tsx
  • frontend/src/components/KubevirtProviderAlert.tsx
  • frontend/src/components/LoadPluginData.test.tsx
  • frontend/src/components/LoadPluginData.tsx
  • frontend/src/components/LostChanges.test.tsx
  • frontend/src/components/LostChanges.tsx
  • frontend/src/components/OperatorAlert.test.tsx
  • frontend/src/components/OperatorAlert.tsx
  • frontend/src/components/PluginContextProvider.tsx
  • frontend/src/components/PluginDataContextProvider.test.tsx
  • frontend/src/components/ProjectsTable.test.tsx
  • frontend/src/components/ProjectsTable.tsx
  • frontend/src/components/RBACResourceYaml.test.tsx
  • frontend/src/components/StatusIcons.tsx
  • frontend/src/components/TemplateEditor/TemplateEditor.test.js
  • frontend/src/components/TemplateSummaryModal.tsx
  • frontend/src/components/YamlEditor.test.tsx
  • frontend/src/components/rbac/IdentitiesList.test.tsx
  • frontend/src/lib/AcmTimestamp.test.tsx
  • frontend/src/lib/SharedContext.ts
  • frontend/src/lib/search.ts
  • frontend/src/plugin-extensions/acmResourceRoutes.test.ts
  • frontend/src/plugin-extensions/acmResourceRoutes.ts
  • frontend/src/plugin-extensions/extensions/OverviewTab.ts
  • frontend/src/plugin-extensions/extensions/actionExtension.ts
  • frontend/src/plugin-extensions/extensions/listColumnExtension.ts
  • frontend/src/plugin-extensions/properties/overviewTabProps.ts
  • frontend/src/routes/Applications/AdvancedConfiguration.test.tsx
  • frontend/src/routes/Applications/AdvancedConfiguration.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.test.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.test.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.tsx
  • frontend/src/routes/Applications/Applications.tsx
  • frontend/src/routes/Applications/ApplicationsPage.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/EditArgoApplicationSet.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/createArgoResources.ts
  • frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.test.tsx
  • frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.tsx
  • frontend/src/routes/Applications/Overview.test.tsx
  • frontend/src/routes/Applications/Overview.tsx
  • frontend/src/routes/Applications/components/DeleteResourceModal.test.tsx
  • frontend/src/routes/Applications/components/DeleteResourceModal.tsx
  • frontend/src/routes/Applications/components/TimeWindowLabels.test.tsx
  • frontend/src/routes/Applications/components/TimeWindowLabels.tsx
  • frontend/src/routes/Applications/components/ToggleSelector.tsx
  • frontend/src/routes/Applications/helpers/resource-helper.tsx
  • frontend/src/routes/Credentials/CreateCredentials.test.tsx
  • frontend/src/routes/Credentials/CreateCredentials.tsx
  • frontend/src/routes/Credentials/CreateCredentialsCatalog.tsx
  • frontend/src/routes/Credentials/CreateCredentialsType/CreateCredentialsAWS.test.tsx
  • frontend/src/routes/Credentials/Credentials.tsx
  • frontend/src/routes/Credentials/CredentialsForm.test.tsx
  • frontend/src/routes/Credentials/CredentialsForm.tsx
  • frontend/src/routes/Credentials/CredentialsPage.test.tsx
  • frontend/src/routes/Credentials/CredentialsPage.tsx
  • frontend/src/routes/Governance/Governance.tsx
  • frontend/src/routes/Governance/GovernancePage.tsx
  • frontend/src/routes/Governance/common/util.tsx
  • frontend/src/routes/Governance/components/AutomationDetailsSidebar.test.tsx
  • frontend/src/routes/Governance/components/AutomationDetailsSidebar.tsx
  • frontend/src/routes/Governance/components/GovernanceEmptyState.tsx
  • frontend/src/routes/Governance/components/PolicyActionDropdown.tsx
  • frontend/src/routes/Governance/components/ViewDiffApiCall.test.tsx
  • frontend/src/routes/Governance/discovered/DiscoveredPolicies.test.tsx
  • frontend/src/routes/Governance/discovered/DiscoveredPolicies.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredResources.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredResources.tsx
  • frontend/src/routes/Governance/discovered/details/common.test.tsx
  • frontend/src/routes/Governance/discovered/details/common.tsx
  • frontend/src/routes/Governance/overview/ClusterPolicySummarySidebar.test.tsx
  • frontend/src/routes/Governance/overview/ClusterPolicySummarySidebar.tsx
  • frontend/src/routes/Governance/overview/Overview.test.tsx
  • frontend/src/routes/Governance/overview/PolicyViolationSummary.tsx
  • frontend/src/routes/Governance/overview/SecurityGroupPolicySummarySidebar.tsx
  • frontend/src/routes/Governance/policies/CreatePolicy.test.tsx
  • frontend/src/routes/Governance/policies/CreatePolicy.tsx
  • frontend/src/routes/Governance/policies/CreatePolicyAutomation.test.tsx
  • frontend/src/routes/Governance/policies/CreatePolicyAutomation.tsx
  • frontend/src/routes/Governance/policies/CreatePolicySubmit.test.tsx
  • frontend/src/routes/Governance/policies/EditPolicy.test.tsx
  • frontend/src/routes/Governance/policies/EditPolicy.tsx
  • frontend/src/routes/Governance/policies/EditPolicyAutomation.test.tsx
  • frontend/src/routes/Governance/policies/EditPolicyAutomation.tsx
  • frontend/src/routes/Governance/policies/Policies.test.tsx
  • frontend/src/routes/Governance/policies/Policies.tsx
  • frontend/src/routes/Governance/policies/PolicyTableCell.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/KyvernoRelatedResources.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailHooks.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsColumns.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsPage.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsPage.tsx
  • frontend/src/routes/Governance/policy-sets/CreatePolicySet.test.tsx
  • frontend/src/routes/Governance/policy-sets/CreatePolicySet.tsx
  • frontend/src/routes/Governance/policy-sets/EditPolicySet.test.tsx
  • frontend/src/routes/Governance/policy-sets/EditPolicySet.tsx
  • frontend/src/routes/Governance/policy-sets/PolicySets.test.tsx
  • frontend/src/routes/Governance/policy-sets/PolicySets.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetCard.test.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetCard.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.test.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.tsx
  • frontend/src/routes/Home/Overview/Overview.test.tsx
  • frontend/src/routes/Home/Overview/OverviewPage.test.tsx
  • frontend/src/routes/Home/Overview/components/SavedSearchesCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SavedSearchesCard.tsx
  • frontend/src/routes/Home/Overview/components/SummaryCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SummaryCard.tsx
  • frontend/src/routes/Home/Overview/components/SummaryClustersCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SummaryClustersCard.tsx
  • frontend/src/routes/Home/Overview/components/SummaryStatusCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SummaryStatusCard.tsx
  • frontend/src/routes/Home/Welcome/Welcome.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.test.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.test.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.tsx
  • frontend/src/routes/Infrastructure/Automations/Automations.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/ClusterPools.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/ClusterPools.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPoolCatalog.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPoolCatalog.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPoolPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/components/ClusterClaimModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetAccessManagement/ClusterSetAccessManagement.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusterPools/ClusterSetClusterPools.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetailsPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetInstallSubmariner/InstallSubmarinerForm.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetOverview/ClusterSetOverview.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetSubmariner/ClusterSetSubmariner.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSets.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/CreateClusterSet/CreateClusterSetModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/MultiClusterNetworkStatus.tsx
  • frontend/src/routes/Infrastructure/Clusters/Clusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClustersPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClustersPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterMachinePools/ClusterMachinePools.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/Warning.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/DetailsForm.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/DetailsForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HostForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HypershiftAWSCLI.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/NetworkForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/utils.ts
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateAWSControlPlane.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateClusterCatalog.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateControlPlane.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateKubeVirtControlPlane.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ImportCluster/ImportCluster.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ImportCluster/ImportCluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/AddCluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchChannelSelectModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchUpgradeModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterPolicySidebar.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HiveNotification.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HostedClusterProgress.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ImportCommand.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/LoginCredentials.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsProgress.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsTable.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ProgressStepBar.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/RemoveAutomationModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ScaleClusterAlert.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.tsx
✅ Files skipped from review due to trivial changes (81)
  • frontend/src/components/RBACResourceYaml.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/ClusterPools.test.tsx
  • frontend/src/plugin-extensions/properties/overviewTabProps.ts
  • frontend/packages/multicluster-sdk/src/internal/resourceRouteUtils.ts
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateKubeVirtControlPlane.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ImportCluster/ImportCluster.tsx
  • frontend/src/routes/Governance/discovered/details/common.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.test.tsx
  • frontend/src/routes/Governance/policy-sets/PolicySets.test.tsx
  • frontend/src/components/rbac/IdentitiesList.test.tsx
  • frontend/src/routes/Credentials/CreateCredentialsCatalog.tsx
  • frontend/src/routes/Governance/policy-sets/EditPolicySet.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.tsx
  • frontend/src/components/LoadPluginData.test.tsx
  • frontend/src/lib/search.ts
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.tsx
  • frontend/src/routes/Applications/components/ToggleSelector.tsx
  • frontend/src/routes/Infrastructure/Automations/Automations.tsx
  • frontend/src/components/PluginDataContextProvider.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsProgress.test.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetInstallSubmariner/InstallSubmarinerForm.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPoolPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetsPage.test.tsx
  • frontend/src/components/LoadPluginData.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusterPools/ClusterSetClusterPools.tsx
  • frontend/packages/multicluster-sdk/src/components/FleetResourceLink.tsx
  • frontend/src/components/ACMNotReadyWarning.test.tsx
  • frontend/src/components/YamlEditor.test.tsx
  • frontend/src/routes/Governance/overview/Overview.test.tsx
  • frontend/src/components/ProjectsTable.tsx
  • frontend/packages/multicluster-sdk/README.md
  • frontend/src/routes/Credentials/Credentials.tsx
  • frontend/src/routes/Applications/Overview.test.tsx
  • frontend/src/components/PluginContextProvider.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/EditArgoApplicationSet.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/DetailsForm.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsColumns.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.test.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetCard.test.tsx
  • frontend/src/routes/Governance/overview/PolicyViolationSummary.tsx
  • frontend/src/routes/Governance/policies/EditPolicy.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPoolCatalog.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.test.tsx
  • frontend/src/routes/Governance/components/PolicyActionDropdown.tsx
  • frontend/src/components/OperatorAlert.test.tsx
  • frontend/src/routes/Credentials/CreateCredentials.tsx
  • frontend/plugins/mce/console-plugin-metadata.ts
  • frontend/src/components/OperatorAlert.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.test.tsx
  • frontend/src/routes/Home/Overview/components/SummaryStatusCard.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetAccessManagement/ClusterSetAccessManagement.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.tsx
  • frontend/src/routes/Governance/policies/Policies.test.tsx
  • frontend/src/routes/Applications/ApplicationsPage.tsx
  • frontend/src/routes/Credentials/CredentialsForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterMachinePools/ClusterMachinePools.test.tsx
  • frontend/packages/react-form-wizard/wizards/ROSA/RosaExample.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.test.tsx
  • frontend/src/plugin-extensions/extensions/listColumnExtension.ts
  • frontend/packages/multicluster-sdk/src/internal/FleetResourceEventStream/EventComponent.tsx
  • frontend/src/routes/Credentials/CreateCredentialsType/CreateCredentialsAWS.test.tsx
  • frontend/src/routes/Credentials/CredentialsForm.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateClusterCatalog.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HypershiftAWSCLI.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/LoginCredentials.test.tsx
  • frontend/src/routes/Governance/components/ViewDiffApiCall.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateAWSControlPlane.test.tsx
  • frontend/src/components/StatusIcons.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/MultiClusterNetworkStatus.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HostedClusterProgress.test.tsx
  • frontend/src/routes/Applications/Applications.tsx
  • frontend/src/routes/Governance/policies/CreatePolicy.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.tsx
🚧 Files skipped from review as they are similar to previous changes (165)
  • frontend/src/routes/Home/Overview/components/SummaryClustersCard.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.tsx
  • frontend/src/components/KubevirtProviderAlert.tsx
  • frontend/src/routes/Governance/components/GovernanceEmptyState.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.test.tsx
  • frontend/src/components/ClusterSets/ClusterSetsTable.test.tsx
  • frontend/src/routes/Governance/policies/PolicyTableCell.tsx
  • frontend/src/routes/Governance/overview/ClusterPolicySummarySidebar.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailHooks.tsx
  • frontend/src/components/LostChanges.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClustersPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSets.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.tsx
  • frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.tsx
  • frontend/src/routes/Governance/overview/SecurityGroupPolicySummarySidebar.tsx
  • frontend/src/routes/Governance/policies/CreatePolicy.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchChannelSelectModal.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.test.tsx
  • frontend/src/components/KubevirtProviderAlert.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.test.tsx
  • frontend/src/routes/Governance/policy-sets/CreatePolicySet.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ScaleClusterAlert.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/AddCluster.tsx
  • frontend/src/routes/Home/Overview/components/SummaryClustersCard.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/utils.ts
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/NetworkForm.test.tsx
  • frontend/src/routes/Governance/policies/CreatePolicySubmit.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HostForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.tsx
  • frontend/src/routes/Governance/policies/EditPolicyAutomation.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.test.tsx
  • frontend/packages/react-form-wizard/wizards/Inputs/InputsWizard.tsx
  • frontend/.storybook/preview.js
  • frontend/src/routes/Governance/common/util.tsx
  • frontend/src/routes/Governance/policies/EditPolicyAutomation.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.test.tsx
  • frontend/src/routes/Governance/policy-sets/PolicySets.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetOverview/ClusterSetOverview.tsx
  • frontend/src/routes/Credentials/CredentialsPage.tsx
  • frontend/src/components/LostChanges.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterPolicySidebar.test.tsx
  • frontend/packages/react-form-wizard/wizards/Demo.tsx
  • frontend/src/routes/Governance/components/AutomationDetailsSidebar.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.tsx
  • frontend/jest.config.ts
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/CreateClusterSet/CreateClusterSetModal.tsx
  • frontend/packages/react-form-wizard/wizards/Application/ApplicationExample.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/components/ClusterClaimModal.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/KyvernoRelatedResources.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.test.tsx
  • frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.test.tsx
  • frontend/src/routes/Credentials/CreateCredentials.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/Warning.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.tsx
  • frontend/src/routes/Home/Overview/components/SummaryStatusCard.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetailsPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateControlPlane.test.tsx
  • frontend/src/routes/Applications/components/TimeWindowLabels.tsx
  • frontend/src/routes/Governance/GovernancePage.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.test.tsx
  • frontend/src/components/AutomationProviderHint.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/RemoveAutomationModal.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredResources.test.tsx
  • frontend/src/components/TemplateSummaryModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.tsx
  • frontend/src/components/Clusters/ClustersTableHelper.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.tsx
  • frontend/src/routes/Home/Overview/components/SavedSearchesCard.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.test.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.test.tsx
  • frontend/src/routes/Home/Overview/Overview.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.tsx
  • frontend/packages/react-form-wizard/wizards/Hypershift/AmazonHypershiftWizard.tsx
  • frontend/src/plugin-extensions/acmResourceRoutes.test.ts
  • frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterPage.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredResources.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetCard.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsTable.test.tsx
  • frontend/packages/multicluster-sdk/src/extensions/resource.ts
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.test.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.test.tsx
  • frontend/src/routes/Governance/Governance.tsx
  • frontend/src/routes/Applications/components/TimeWindowLabels.test.tsx
  • frontend/src/routes/Governance/discovered/DiscoveredPolicies.test.tsx
  • frontend/src/routes/Governance/discovered/details/common.tsx
  • frontend/packages/multicluster-sdk/src/components/FleetResourceLink.test.tsx
  • frontend/src/routes/Governance/policies/CreatePolicyAutomation.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ImportCommand.test.tsx
  • frontend/src/components/ClusterSets/ClusterSetsTable.tsx
  • frontend/src/routes/Applications/Overview.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.tsx
  • frontend/src/plugin-extensions/extensions/actionExtension.ts
  • frontend/src/components/Clusters/ClustersTable.test.tsx
  • frontend/packages/react-form-wizard/wizards/Cluster/ClusterForm.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchUpgradeModal.test.tsx
  • frontend/packages/react-form-wizard/wizards/Home/HomeWizard.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HiveNotification.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.test.tsx
  • frontend/src/lib/SharedContext.ts
  • frontend/packages/react-form-wizard/wizards/Placement/PlacementExamples.tsx
  • frontend/packages/react-form-wizard/wizards/Credentials/CredentialsExample.tsx
  • frontend/packages/react-form-wizard/wizards/AppWizard/AppExample.tsx
  • frontend/src/routes/Infrastructure/Clusters/Clusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.tsx
  • frontend/packages/react-form-wizard/wizards/PolicyAutomation/PolicyAutomationExamples.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClustersPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.test.tsx
  • frontend/src/routes/Governance/discovered/DiscoveredPolicies.tsx
  • frontend/src/components/ProjectsTable.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.tsx
  • frontend/src/components/TemplateEditor/TemplateEditor.test.js
  • frontend/src/routes/Credentials/CredentialsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.test.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.test.tsx
  • frontend/src/plugin-extensions/acmResourceRoutes.ts
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/DetailsForm.test.tsx
  • frontend/src/routes/Applications/helpers/resource-helper.tsx
  • frontend/src/App.tsx
  • frontend/packages/react-form-wizard/wizards/Policy/PolicyExamples.tsx
  • frontend/src/routes/Home/Welcome/Welcome.tsx
  • frontend/packages/react-form-wizard/package.json
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.tsx
  • frontend/package.json
  • frontend/packages/multicluster-sdk/package.json
  • frontend/src/components/Clusters/ClustersTableHelper.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.test.tsx
  • frontend/src/NavigationPath.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.tsx
  • frontend/src/plugin-extensions/extensions/OverviewTab.ts
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ProgressStepBar.test.tsx
  • frontend/packages/react-form-wizard/wizards/PolicySet/PolicySetExamples.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/createArgoResources.ts
  • frontend/src/routes/Applications/AdvancedConfiguration.test.tsx
  • frontend/plugins/acm/console-plugin-metadata.ts
  • frontend/packages/react-form-wizard/wizards/Cluster/Provider.tsx
  • frontend/packages/react-form-wizard/wizards/Argo/ArgoExamples.tsx

📝 Walkthrough

Walkthrough

Replace the compat router with react-router across frontend: update dependency metadata and Jest mapping, switch Storybook/test wrappers to react-router, migrate navigation hooks from useHistory/history.push to useNavigate, convert several SDK extension imports to type-only Extension, and tighten some timestamp/type shapes.

Changes

Router migration and type updates

Layer / File(s) Summary
Migration batch (deps, Jest, Storybook, plugins, packages)
frontend/package.json, frontend/jest.config.ts, frontend/.storybook/preview.js, frontend/plugins/*/console-plugin-metadata.ts, frontend/packages/*/package.json
Added react-router dependency and dev deps, removed react-router-dom-v5-compat, upgraded SDK dev deps, added Jest moduleNameMapper for compat name, and Storybook now imports MemoryRouter from react-router.
Global router imports and utilities
frontend/src/App.tsx, frontend/src/NavigationPath.tsx, frontend/src/lib/search.ts, frontend/src/lib/SharedContext.ts
App-level and navigation utilities now import routing hooks/helpers from react-router; NavigationPath simplified match param handling; SharedContext default generic tightened and uses Extension type.
Component/link/generatePath replacements
frontend/src/components/*, many frontend/src/routes/** files
Many components and pages replace imports (Link, generatePath, Routes, Route, Navigate, Outlet, and hooks like useLocation, useMatch, useNavigate, useParams) to come from react-router.
Tests and mocks adjusted
**/*/*.test.*, Jest mocks across many tests
Tests import MemoryRouter, Route, Routes and update jest.mock targets to react-router; many mocks use jest.requireActual('react-router') to preserve non-hook exports while stubbing hooks.
Wizard navigation migration
frontend/packages/react-form-wizard/wizards/**
Wizards/examples migrated from useHistory/history.push to useNavigate; cancel handlers and CTA callbacks now accept/receive navigate.
Multicluster SDK and extension types
frontend/packages/multicluster-sdk/*, frontend/src/plugin-extensions/*
Extension-related aliases and docs converted from ExtensionDeclaration to Extension and several SDK imports changed to import type; package peer/dev metadata updated for SDK and react-router.
Timestamp and interface tightenings
frontend/src/lib/AcmTimestamp.test.tsx, frontend/src/routes/Governance/.../PolicyDetailsResults.tsx
Test props and ResultsTableData.timestamp narrowed to `string

Sequence Diagram(s)

None

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
frontend/src/components/LostChanges.test.tsx (1)

78-78: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Test suite is skipped.

The entire test suite is disabled with describe.skip. This should be re-enabled and passing before merging.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/src/components/LostChanges.test.tsx` at line 78, The test suite for
LostChangesProvider is currently disabled via describe.skip in
LostChanges.test.tsx; re-enable it by removing .skip from describe (change
describe.skip('LostChangesProvider', ...) to describe('LostChangesProvider',
...)) and then run the tests, fix any failing tests inside the suite (look for
tests referencing LostChangesProvider, the relevant it/expect blocks, mocked
modules or setup in beforeEach/afterEach) by updating assertions, restoring or
adjusting mocks, and ensuring any async operations are awaited so the suite
passes locally and in CI.
🧹 Nitpick comments (5)
frontend/src/routes/Infrastructure/VirtualMachines/utils.tsx (1)

5-5: 💤 Low value

Use import type for type-only import.

NavigateFunction is used only for type annotations (lines 90, 295) and should use import type to avoid unnecessary runtime imports.

♻️ Proposed fix
-import { NavigateFunction } from 'react-router'
+import type { NavigateFunction } from 'react-router'
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/src/routes/Infrastructure/VirtualMachines/utils.tsx` at line 5,
Change the runtime import to a type-only import for NavigateFunction: replace
the existing import of NavigateFunction from 'react-router' with an "import type
{ NavigateFunction } from 'react-router'". This is used only in type annotations
(e.g., in the functions that accept a NavigateFunction parameter) so switching
to import type removes the unnecessary runtime import while leaving all type
usages intact.

Source: Coding guidelines

frontend/src/routes/Credentials/CreateCredentialsCatalog.tsx (1)

10-10: ⚡ Quick win

Prefer import type for type-only usage.

The To type is used exclusively for type annotations (line 12 return type). Per coding guidelines, use import type syntax to avoid runtime imports.

♻️ Proposed fix
-import { To } from 'react-router'
+import type { To } from 'react-router'
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/src/routes/Credentials/CreateCredentialsCatalog.tsx` at line 10, The
file imports the React Router type To as a value import; change it to a
type-only import to avoid runtime imports: replace the current import of To with
an "import type { To } from 'react-router'" and update any usages (the
CreateCredentialsCatalog component return type annotated as To) accordingly so
the symbol To is only imported as a type.

Source: Coding guidelines

frontend/src/routes/Infrastructure/VirtualMachines/utils.test.tsx (1)

8-13: ⚡ Quick win

Ineffective mock should be removed.

The jest.mock at lines 8-13 is inside a describe block, so it has no effect—Jest mocks must be at module scope. Additionally, useHistory doesn't exist in react-router v7 (it's a v5 API). Since the tests pass navigate as a parameter to the functions under test, this mock is unnecessary dead code.

🧹 Proposed cleanup
 const mockHistoryPush = jest.fn()
 describe('VirtualMachines utils', () => {
-  jest.mock('react-router', () => ({
-    ...jest.requireActual('react-router'),
-    useHistory: () => ({
-      push: mockHistoryPush,
-    }),
-  }))
   const t = i18next.t.bind(i18next)
   const navigate = jest.fn()
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/src/routes/Infrastructure/VirtualMachines/utils.test.tsx` around
lines 8 - 13, Remove the ineffective module-scoped mock for react-router by
deleting the jest.mock block that defines useHistory and mockHistoryPush (the
mock inside the describe is no-op and useHistory is a v5 API), and rely on the
existing tests that pass a navigate argument to the functions under test;
specifically remove references to useHistory and mockHistoryPush in
frontend/src/routes/Infrastructure/VirtualMachines/utils.test.tsx so the tests
use the passed-in navigate parameter directly.
frontend/packages/multicluster-sdk/package.json (1)

41-41: ⚡ Quick win

Consider constraining SDK peer dependency upper bound.

The peer dependency changed from ^4.19.1 to >=4.22.0. The >= range allows any future major version, which could introduce breaking changes. Consider using ^4.22.0 to limit to compatible 4.x versions unless the intent is to accept all future SDK versions.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/packages/multicluster-sdk/package.json` at line 41, Update the
peerDependencies entry for "`@openshift-console/dynamic-plugin-sdk`" in
package.json to constrain the upper bound—replace the current range string
">=4.22.0" with a caret range like "^4.22.0" so it accepts compatible 4.x SDK
releases but prevents unbounded future major upgrades; locate the
peerDependencies block and update the value for the
"`@openshift-console/dynamic-plugin-sdk`" key accordingly.
frontend/jest.config.ts (1)

23-23: 💤 Low value

Temporary test shim for router migration.

The moduleNameMapper redirects react-router-dom-v5-compat to react-router for test compatibility during the migration. Once all code is fully migrated and no longer references the v5-compat package, this mapping can be removed.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/jest.config.ts` at line 23, moduleNameMapper currently maps
'^react-router-dom-v5-compat$' to 'react-router' as a temporary test shim;
remove that mapping from jest.config.ts (the line containing
'^react-router-dom-v5-compat$') once all code and tests no longer import
'react-router-dom-v5-compat' and run the test suite to catch remaining
references; search the repo for imports/usages of 'react-router-dom-v5-compat'
and update them to the migrated router imports before deleting the mapping to
avoid breaking tests.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@frontend/package.json`:
- Line 97: Confirm that the bumped dependency react-router@^7.17.0 and the
`@openshift-console/dynamic-plugin-sdk`@^4.22.0 (and related webpack package) are
actually published and compatible with the project's React and peerDependency
constraints: verify their npm publication, check their peerDependencies against
the project's React version, and ensure they don't conflict with the overrides
that pin `@openshift-assisted/ui-lib` to
`@openshift-console/dynamic-plugin-sdk`@4.22.0; if conflicts exist, either align
versions (update overrides) or adjust the package.json entries and run a local
install + build/test to validate the changes before merging.

In
`@frontend/packages/multicluster-sdk/src/components/FleetResourceLink.test.tsx`:
- Around line 31-33: Update the outdated comment above the jest.mock call so it
reflects the actual mock target: change the comment that references
"react-router-dom-v5-compat" to mention "react-router" (the module being mocked
in the jest.mock('react-router', ...) call) so the comment matches the mock in
FleetResourceLink.test.tsx and avoids confusion when locating the jest.mock
usage.

In `@frontend/src/routes/Governance/policies/CreatePolicyAutomation.tsx`:
- Line 12: The import pulls PathParam into runtime even though it's only used as
a type; change the import to a type-only import by replacing the existing import
with an import type for PathParam (e.g., import type { PathParam } ...) in
CreatePolicyAutomation.tsx so PathParam is erased at runtime; ensure the rest of
the import list (useParams, useNavigate, useLocation, generatePath) remain as
value imports and confirm PathParam is only used as a type parameter (e.g., in
the generatePath/type usage) so the type-only import is safe.

---

Outside diff comments:
In `@frontend/src/components/LostChanges.test.tsx`:
- Line 78: The test suite for LostChangesProvider is currently disabled via
describe.skip in LostChanges.test.tsx; re-enable it by removing .skip from
describe (change describe.skip('LostChangesProvider', ...) to
describe('LostChangesProvider', ...)) and then run the tests, fix any failing
tests inside the suite (look for tests referencing LostChangesProvider, the
relevant it/expect blocks, mocked modules or setup in beforeEach/afterEach) by
updating assertions, restoring or adjusting mocks, and ensuring any async
operations are awaited so the suite passes locally and in CI.

---

Nitpick comments:
In `@frontend/jest.config.ts`:
- Line 23: moduleNameMapper currently maps '^react-router-dom-v5-compat$' to
'react-router' as a temporary test shim; remove that mapping from jest.config.ts
(the line containing '^react-router-dom-v5-compat$') once all code and tests no
longer import 'react-router-dom-v5-compat' and run the test suite to catch
remaining references; search the repo for imports/usages of
'react-router-dom-v5-compat' and update them to the migrated router imports
before deleting the mapping to avoid breaking tests.

In `@frontend/packages/multicluster-sdk/package.json`:
- Line 41: Update the peerDependencies entry for
"`@openshift-console/dynamic-plugin-sdk`" in package.json to constrain the upper
bound—replace the current range string ">=4.22.0" with a caret range like
"^4.22.0" so it accepts compatible 4.x SDK releases but prevents unbounded
future major upgrades; locate the peerDependencies block and update the value
for the "`@openshift-console/dynamic-plugin-sdk`" key accordingly.

In `@frontend/src/routes/Credentials/CreateCredentialsCatalog.tsx`:
- Line 10: The file imports the React Router type To as a value import; change
it to a type-only import to avoid runtime imports: replace the current import of
To with an "import type { To } from 'react-router'" and update any usages (the
CreateCredentialsCatalog component return type annotated as To) accordingly so
the symbol To is only imported as a type.

In `@frontend/src/routes/Infrastructure/VirtualMachines/utils.test.tsx`:
- Around line 8-13: Remove the ineffective module-scoped mock for react-router
by deleting the jest.mock block that defines useHistory and mockHistoryPush (the
mock inside the describe is no-op and useHistory is a v5 API), and rely on the
existing tests that pass a navigate argument to the functions under test;
specifically remove references to useHistory and mockHistoryPush in
frontend/src/routes/Infrastructure/VirtualMachines/utils.test.tsx so the tests
use the passed-in navigate parameter directly.

In `@frontend/src/routes/Infrastructure/VirtualMachines/utils.tsx`:
- Line 5: Change the runtime import to a type-only import for NavigateFunction:
replace the existing import of NavigateFunction from 'react-router' with an
"import type { NavigateFunction } from 'react-router'". This is used only in
type annotations (e.g., in the functions that accept a NavigateFunction
parameter) so switching to import type removes the unnecessary runtime import
while leaving all type usages intact.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 26472d9b-e961-4cf1-90ff-35838a50f033

📥 Commits

Reviewing files that changed from the base of the PR and between 183ae82 and d59b5b6.

⛔ Files ignored due to path filters (2)
  • frontend/package-lock.json is excluded by !**/package-lock.json
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/__snapshots__/DetailsForm.test.tsx.snap is excluded by !**/*.snap, !**/*.snap
📒 Files selected for processing (298)
  • frontend/.storybook/preview.js
  • frontend/jest.config.ts
  • frontend/package.json
  • frontend/packages/multicluster-sdk/README.md
  • frontend/packages/multicluster-sdk/package.json
  • frontend/packages/multicluster-sdk/src/components/FleetResourceLink.test.tsx
  • frontend/packages/multicluster-sdk/src/components/FleetResourceLink.tsx
  • frontend/packages/multicluster-sdk/src/extensions/resource.ts
  • frontend/packages/multicluster-sdk/src/internal/FleetResourceEventStream/EventComponent.test.tsx
  • frontend/packages/multicluster-sdk/src/internal/FleetResourceEventStream/EventComponent.tsx
  • frontend/packages/multicluster-sdk/src/internal/resourceRouteUtils.ts
  • frontend/packages/react-form-wizard/package.json
  • frontend/packages/react-form-wizard/wizards/Ansible/AnsibleExample.tsx
  • frontend/packages/react-form-wizard/wizards/AppWizard/AppExample.tsx
  • frontend/packages/react-form-wizard/wizards/Application/ApplicationExample.tsx
  • frontend/packages/react-form-wizard/wizards/Argo/ArgoExamples.tsx
  • frontend/packages/react-form-wizard/wizards/Cluster/ClusterForm.tsx
  • frontend/packages/react-form-wizard/wizards/Cluster/Provider.tsx
  • frontend/packages/react-form-wizard/wizards/Credentials/CredentialsExample.tsx
  • frontend/packages/react-form-wizard/wizards/Demo.tsx
  • frontend/packages/react-form-wizard/wizards/Home/HomeWizard.tsx
  • frontend/packages/react-form-wizard/wizards/Hypershift/AmazonHypershiftWizard.tsx
  • frontend/packages/react-form-wizard/wizards/Inputs/InputsWizard.tsx
  • frontend/packages/react-form-wizard/wizards/Placement/PlacementExamples.tsx
  • frontend/packages/react-form-wizard/wizards/Policy/PolicyExamples.tsx
  • frontend/packages/react-form-wizard/wizards/PolicyAutomation/PolicyAutomationExamples.tsx
  • frontend/packages/react-form-wizard/wizards/PolicySet/PolicySetExamples.tsx
  • frontend/packages/react-form-wizard/wizards/ROSA/RosaExample.tsx
  • frontend/packages/react-form-wizard/wizards/common/utils.ts
  • frontend/plugins/acm/console-plugin-metadata.ts
  • frontend/plugins/mce/console-plugin-metadata.ts
  • frontend/src/App.tsx
  • frontend/src/NavigationPath.tsx
  • frontend/src/components/ACMNotReadyWarning.test.tsx
  • frontend/src/components/AutomationProviderHint.test.tsx
  • frontend/src/components/ClusterSets/ClusterSetsTable.test.tsx
  • frontend/src/components/ClusterSets/ClusterSetsTable.tsx
  • frontend/src/components/Clusters/ClustersTable.test.tsx
  • frontend/src/components/Clusters/ClustersTableHelper.test.tsx
  • frontend/src/components/Clusters/ClustersTableHelper.tsx
  • frontend/src/components/KubevirtProviderAlert.test.tsx
  • frontend/src/components/KubevirtProviderAlert.tsx
  • frontend/src/components/LoadPluginData.test.tsx
  • frontend/src/components/LoadPluginData.tsx
  • frontend/src/components/LostChanges.test.tsx
  • frontend/src/components/LostChanges.tsx
  • frontend/src/components/OperatorAlert.test.tsx
  • frontend/src/components/OperatorAlert.tsx
  • frontend/src/components/PluginContextProvider.tsx
  • frontend/src/components/PluginDataContextProvider.test.tsx
  • frontend/src/components/ProjectsTable.test.tsx
  • frontend/src/components/ProjectsTable.tsx
  • frontend/src/components/RBACResourceYaml.test.tsx
  • frontend/src/components/StatusIcons.tsx
  • frontend/src/components/TemplateEditor/TemplateEditor.test.js
  • frontend/src/components/TemplateSummaryModal.tsx
  • frontend/src/components/YamlEditor.test.tsx
  • frontend/src/components/rbac/IdentitiesList.test.tsx
  • frontend/src/lib/AcmTimestamp.test.tsx
  • frontend/src/lib/SharedContext.ts
  • frontend/src/lib/search.ts
  • frontend/src/plugin-extensions/acmResourceRoutes.test.ts
  • frontend/src/plugin-extensions/acmResourceRoutes.ts
  • frontend/src/plugin-extensions/extensions/OverviewTab.ts
  • frontend/src/plugin-extensions/extensions/actionExtension.ts
  • frontend/src/plugin-extensions/extensions/listColumnExtension.ts
  • frontend/src/plugin-extensions/properties/overviewTabProps.ts
  • frontend/src/routes/Applications/AdvancedConfiguration.test.tsx
  • frontend/src/routes/Applications/AdvancedConfiguration.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.test.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.test.tsx
  • frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.tsx
  • frontend/src/routes/Applications/Applications.tsx
  • frontend/src/routes/Applications/ApplicationsPage.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.test.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/EditArgoApplicationSet.tsx
  • frontend/src/routes/Applications/CreateArgoApplication/createArgoResources.ts
  • frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.test.tsx
  • frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.tsx
  • frontend/src/routes/Applications/Overview.test.tsx
  • frontend/src/routes/Applications/Overview.tsx
  • frontend/src/routes/Applications/components/DeleteResourceModal.test.tsx
  • frontend/src/routes/Applications/components/DeleteResourceModal.tsx
  • frontend/src/routes/Applications/components/TimeWindowLabels.test.tsx
  • frontend/src/routes/Applications/components/TimeWindowLabels.tsx
  • frontend/src/routes/Applications/components/ToggleSelector.tsx
  • frontend/src/routes/Applications/helpers/resource-helper.tsx
  • frontend/src/routes/Credentials/CreateCredentials.test.tsx
  • frontend/src/routes/Credentials/CreateCredentials.tsx
  • frontend/src/routes/Credentials/CreateCredentialsCatalog.tsx
  • frontend/src/routes/Credentials/CreateCredentialsType/CreateCredentialsAWS.test.tsx
  • frontend/src/routes/Credentials/Credentials.tsx
  • frontend/src/routes/Credentials/CredentialsForm.test.tsx
  • frontend/src/routes/Credentials/CredentialsForm.tsx
  • frontend/src/routes/Credentials/CredentialsPage.test.tsx
  • frontend/src/routes/Credentials/CredentialsPage.tsx
  • frontend/src/routes/Governance/Governance.tsx
  • frontend/src/routes/Governance/GovernancePage.tsx
  • frontend/src/routes/Governance/common/util.tsx
  • frontend/src/routes/Governance/components/AutomationDetailsSidebar.test.tsx
  • frontend/src/routes/Governance/components/AutomationDetailsSidebar.tsx
  • frontend/src/routes/Governance/components/GovernanceEmptyState.tsx
  • frontend/src/routes/Governance/components/PolicyActionDropdown.tsx
  • frontend/src/routes/Governance/components/ViewDiffApiCall.test.tsx
  • frontend/src/routes/Governance/discovered/DiscoveredPolicies.test.tsx
  • frontend/src/routes/Governance/discovered/DiscoveredPolicies.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredResources.test.tsx
  • frontend/src/routes/Governance/discovered/details/DiscoveredResources.tsx
  • frontend/src/routes/Governance/discovered/details/common.test.tsx
  • frontend/src/routes/Governance/discovered/details/common.tsx
  • frontend/src/routes/Governance/overview/ClusterPolicySummarySidebar.test.tsx
  • frontend/src/routes/Governance/overview/ClusterPolicySummarySidebar.tsx
  • frontend/src/routes/Governance/overview/Overview.test.tsx
  • frontend/src/routes/Governance/overview/PolicyViolationSummary.tsx
  • frontend/src/routes/Governance/overview/SecurityGroupPolicySummarySidebar.tsx
  • frontend/src/routes/Governance/policies/CreatePolicy.test.tsx
  • frontend/src/routes/Governance/policies/CreatePolicy.tsx
  • frontend/src/routes/Governance/policies/CreatePolicyAutomation.test.tsx
  • frontend/src/routes/Governance/policies/CreatePolicyAutomation.tsx
  • frontend/src/routes/Governance/policies/CreatePolicySubmit.test.tsx
  • frontend/src/routes/Governance/policies/EditPolicy.test.tsx
  • frontend/src/routes/Governance/policies/EditPolicy.tsx
  • frontend/src/routes/Governance/policies/EditPolicyAutomation.test.tsx
  • frontend/src/routes/Governance/policies/EditPolicyAutomation.tsx
  • frontend/src/routes/Governance/policies/Policies.test.tsx
  • frontend/src/routes/Governance/policies/Policies.tsx
  • frontend/src/routes/Governance/policies/PolicyTableCell.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/KyvernoRelatedResources.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailHooks.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsColumns.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsPage.test.tsx
  • frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsPage.tsx
  • frontend/src/routes/Governance/policy-sets/CreatePolicySet.test.tsx
  • frontend/src/routes/Governance/policy-sets/CreatePolicySet.tsx
  • frontend/src/routes/Governance/policy-sets/EditPolicySet.test.tsx
  • frontend/src/routes/Governance/policy-sets/EditPolicySet.tsx
  • frontend/src/routes/Governance/policy-sets/PolicySets.test.tsx
  • frontend/src/routes/Governance/policy-sets/PolicySets.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetCard.test.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetCard.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.test.tsx
  • frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.tsx
  • frontend/src/routes/Home/Overview/Overview.test.tsx
  • frontend/src/routes/Home/Overview/OverviewPage.test.tsx
  • frontend/src/routes/Home/Overview/components/SavedSearchesCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SavedSearchesCard.tsx
  • frontend/src/routes/Home/Overview/components/SummaryCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SummaryCard.tsx
  • frontend/src/routes/Home/Overview/components/SummaryClustersCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SummaryClustersCard.tsx
  • frontend/src/routes/Home/Overview/components/SummaryStatusCard.test.tsx
  • frontend/src/routes/Home/Overview/components/SummaryStatusCard.tsx
  • frontend/src/routes/Home/Welcome/Welcome.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.test.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.test.tsx
  • frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.tsx
  • frontend/src/routes/Infrastructure/Automations/Automations.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/ClusterPools.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/ClusterPools.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPoolCatalog.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPoolCatalog.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPoolPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterPools/components/ClusterClaimModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetAccessManagement/ClusterSetAccessManagement.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusterPools/ClusterSetClusterPools.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetailsPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetInstallSubmariner/InstallSubmarinerForm.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetOverview/ClusterSetOverview.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetSubmariner/ClusterSetSubmariner.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSets.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/CreateClusterSet/CreateClusterSetModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/MultiClusterNetworkStatus.tsx
  • frontend/src/routes/Infrastructure/Clusters/Clusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClustersPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ClustersPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterMachinePools/ClusterMachinePools.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/Warning.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/DetailsForm.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/DetailsForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HostForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HypershiftAWSCLI.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/NetworkForm.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/utils.ts
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateAWSControlPlane.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateClusterCatalog.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateControlPlane.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateKubeVirtControlPlane.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterPage.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ImportCluster/ImportCluster.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ImportCluster/ImportCluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/AddCluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchChannelSelectModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchUpgradeModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterPolicySidebar.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HiveNotification.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HostedClusterProgress.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ImportCommand.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/LoginCredentials.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsProgress.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsTable.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ProgressStepBar.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/RemoveAutomationModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ScaleClusterAlert.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/cim/AIClusterDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/cim/EditAICluster.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/cim/EditAICluster.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/CreatePlacement/CreatePlacement.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/CreatePlacement/CreatePlacement.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/CreatePlacement/EditPlacement.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/CreatePlacement/EditPlacement.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/PlacementDetails/PlacementDetails.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/PlacementDetails/PlacementDetails.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/PlacementDetails/PlacementOverview/PlacementOverview.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/PlacementDetails/PlacementOverview/PlacementOverview.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/Placements.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/Placements.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/utils.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/Placements/utils.tsx
  • frontend/src/routes/Infrastructure/Clusters/RoleAssignmentsPage.test.tsx
  • frontend/src/routes/Infrastructure/Clusters/RoleAssignmentsPage.tsx
  • frontend/src/routes/Infrastructure/InfraEnvironments/CreateInfraEnv.tsx
  • frontend/src/routes/Infrastructure/InfraEnvironments/Details/InfraEnvironmentDetailsPage.test.tsx
  • frontend/src/routes/Infrastructure/InfraEnvironments/Details/InfraEnvironmentDetailsPage.tsx
  • frontend/src/routes/Infrastructure/InfraEnvironments/InfraEnvForm.test.tsx
  • frontend/src/routes/Infrastructure/InfraEnvironments/InfraEnvironments.tsx
  • frontend/src/routes/Infrastructure/InfraEnvironments/InfraEnvironmentsPage.test.tsx
  • frontend/src/routes/Infrastructure/InfraEnvironments/InfraEnvironmentsPage.tsx
  • frontend/src/routes/Infrastructure/VirtualMachines/utils.test.tsx
  • frontend/src/routes/Infrastructure/VirtualMachines/utils.tsx
  • frontend/src/routes/Search/Details/DetailsOverviewPage.test.tsx
  • frontend/src/routes/Search/Details/DetailsOverviewPage.tsx
  • frontend/src/routes/Search/Details/DetailsPage.test.tsx

Comment thread frontend/package.json
"parse-url": "^9.2.0",
"react-error-boundary": "3.1.4",
"react-monaco-editor": "^0.51.0",
"react-router": "^7.17.0",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify react-router 7.17.0 and SDK 4.22.0 are published

echo "Checking react-router version availability..."
npm view react-router@7.17.0 version 2>/dev/null || echo "react-router 7.17.0 not found"

echo "Checking `@openshift-console/dynamic-plugin-sdk` version availability..."
npm view `@openshift-console/dynamic-plugin-sdk`@4.22.0 version 2>/dev/null || echo "SDK 4.22.0 not found"

Repository: stolostron/console

Length of output: 193


🏁 Script executed:

#!/bin/bash
# Inspect relevant sections of frontend/package.json
FILE="frontend/package.json"

echo "== react-router entry (around line 97) =="
sed -n '85,110p' "$FILE" | nl -ba -w2 -s':'

echo
echo "== SDK/webpack plugin entry (around lines 110-130) =="
sed -n '105,135p' "$FILE" | nl -ba -w2 -s':'

echo
echo "== overrides block (around lines 205-245) =="
sed -n '205,245p' "$FILE" | nl -ba -w2 -s':'

echo
echo "== devDependencies v5 compat mention =="
rg -n "react-router-dom-v5-compat" "$FILE" || true

Repository: stolostron/console

Length of output: 389


🏁 Script executed:

#!/bin/bash
FILE="frontend/package.json"

echo "== react-router entry (around line 97) =="
awk 'NR>=85 && NR<=110 {printf "%d:%s\n", NR, $0}' "$FILE"

echo
echo "== SDK/webpack plugin entry (around lines 110-130) =="
awk 'NR>=105 && NR<=135 {printf "%d:%s\n", NR, $0}' "$FILE"

echo
echo "== overrides block (around lines 205-245) =="
awk 'NR>=205 && NR<=245 {printf "%d:%s\n", NR, $0}' "$FILE"

echo
echo "== devDependencies v5 compat mention =="
rg -n "react-router-dom-v5-compat" "$FILE" || true

Repository: stolostron/console

Length of output: 3457


Confirm publish + validate compatibility for dependency upgrades

  • react-router@^7.17.0 (frontend/package.json:97) and @openshift-console/dynamic-plugin-sdk@^4.22.0 (frontend/package.json:116) / @...-webpack@^4.22.0 (frontend/package.json:117) are published on npm.
  • Still verify that these versions are compatible with the project’s React/peer-dependency constraints and the PR’s minimum OCP/version assumptions—especially given the overrides pin of @openshift-assisted/ui-lib to @openshift-console/dynamic-plugin-sdk@4.22.0 (frontend/package.json:221-224).
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@frontend/package.json` at line 97, Confirm that the bumped dependency
react-router@^7.17.0 and the `@openshift-console/dynamic-plugin-sdk`@^4.22.0 (and
related webpack package) are actually published and compatible with the
project's React and peerDependency constraints: verify their npm publication,
check their peerDependencies against the project's React version, and ensure
they don't conflict with the overrides that pin `@openshift-assisted/ui-lib` to
`@openshift-console/dynamic-plugin-sdk`@4.22.0; if conflicts exist, either align
versions (update overrides) or adjust the package.json entries and run a local
install + build/test to validate the changes before merging.

Comment thread frontend/packages/multicluster-sdk/src/components/FleetResourceLink.test.tsx Outdated
Comment thread frontend/src/routes/Governance/policies/CreatePolicyAutomation.tsx Outdated
@KevinFCormier KevinFCormier force-pushed the ACM-33545-update-react-router branch from 4c2622c to 89b723e Compare June 10, 2026 13:40
@KevinFCormier

Copy link
Copy Markdown
Contributor Author

/retest

1 similar comment
@KevinFCormier

Copy link
Copy Markdown
Contributor Author

/retest

@KevinFCormier

Copy link
Copy Markdown
Contributor Author

/test unit-tests-sonarcloud

@KevinFCormier

Copy link
Copy Markdown
Contributor Author

/retest

@KevinFCormier KevinFCormier changed the title WIP ACM-33544 ACM-33545 update react router and OCP minimum version ACM-33544 ACM-33545 update react router and OCP minimum version Jun 10, 2026
@KevinFCormier

Copy link
Copy Markdown
Contributor Author

/cc @zlayne

@openshift-ci openshift-ci Bot requested a review from zlayne June 10, 2026 16:04
@KevinFCormier

Copy link
Copy Markdown
Contributor Author

/retest

Signed-off-by: Kevin Cormier <kcormier@redhat.com>
Assisted-by: Cursor (Claude Opus 4.6 High)
Signed-off-by: Kevin Cormier <kcormier@redhat.com>
Signed-off-by: Kevin Cormier <kcormier@redhat.com>
…outer-dom@6

Signed-off-by: Kevin Cormier <kcormier@redhat.com>
Signed-off-by: Kevin Cormier <kcormier@redhat.com>
Signed-off-by: Kevin Cormier <kcormier@redhat.com>
…outer@7

Signed-off-by: Kevin Cormier <kcormier@redhat.com>
Signed-off-by: Kevin Cormier <kcormier@redhat.com>
Signed-off-by: Kevin Cormier <kcormier@redhat.com>
Signed-off-by: Kevin Cormier <kcormier@redhat.com>
@KevinFCormier KevinFCormier force-pushed the ACM-33545-update-react-router branch from 89b723e to 1a5f4f5 Compare June 10, 2026 16:12
@coderabbitai

coderabbitai Bot commented Jun 10, 2026

Copy link
Copy Markdown

Caution

Failed to replace (edit) comment. This is likely due to insufficient permissions or the comment being deleted.

Error details
{"name":"HttpError","status":401,"request":{"method":"PATCH","url":"https://api.github.com/repos/stolostron/console/issues/comments/4664105717","headers":{"accept":"application/vnd.github.v3+json","user-agent":"octokit.js/0.0.0-development octokit-core.js/7.0.6 Node.js/24","authorization":"token [REDACTED]","content-type":"application/json; charset=utf-8"},"body":{"body":"<!-- This is an auto-generated comment: summarize by coderabbit.ai -->\n<!-- This is an auto-generated comment: review in progress by coderabbit.ai -->\n\n> [!NOTE]\n> Currently processing new changes in this PR. This may take a few minutes, please wait...\n> \n> <details>\n> <summary>⚙️ Run configuration</summary>\n> \n> **Configuration used**: Path: .coderabbit.yaml\n> \n> **Review profile**: CHILL\n> \n> **Plan**: Enterprise\n> \n> **Run ID**: `76d9994c-de83-4b4e-ace9-38d0bfd5db12`\n> \n> </details>\n> \n> <details>\n> <summary>📥 Commits</summary>\n> \n> Reviewing files that changed from the base of the PR and between 89b723e748f245cc0a630c2b34e88016366d64df and 1a5f4f57af2e4882e2520f8ce06ce9f4b3c978d0.\n> \n> </details>\n> \n> <details>\n> <summary>⛔ Files ignored due to path filters (2)</summary>\n> \n> * `frontend/package-lock.json` is excluded by `!**/package-lock.json`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/__snapshots__/DetailsForm.test.tsx.snap` is excluded by `!**/*.snap`, `!**/*.snap`\n> \n> </details>\n> \n> <details>\n> <summary>📒 Files selected for processing (269)</summary>\n> \n> * `frontend/.storybook/preview.js`\n> * `frontend/jest.config.ts`\n> * `frontend/package.json`\n> * `frontend/packages/multicluster-sdk/README.md`\n> * `frontend/packages/multicluster-sdk/package.json`\n> * `frontend/packages/multicluster-sdk/src/components/FleetResourceLink.test.tsx`\n> * `frontend/packages/multicluster-sdk/src/components/FleetResourceLink.tsx`\n> * `frontend/packages/multicluster-sdk/src/extensions/resource.ts`\n> * `frontend/packages/multicluster-sdk/src/internal/FleetResourceEventStream/EventComponent.test.tsx`\n> * `frontend/packages/multicluster-sdk/src/internal/FleetResourceEventStream/EventComponent.tsx`\n> * `frontend/packages/multicluster-sdk/src/internal/resourceRouteUtils.ts`\n> * `frontend/packages/react-form-wizard/package.json`\n> * `frontend/packages/react-form-wizard/wizards/Ansible/AnsibleExample.tsx`\n> * `frontend/packages/react-form-wizard/wizards/AppWizard/AppExample.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Application/ApplicationExample.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Argo/ArgoExamples.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Cluster/ClusterForm.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Cluster/Provider.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Credentials/CredentialsExample.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Demo.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Home/HomeWizard.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Hypershift/AmazonHypershiftWizard.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Inputs/InputsWizard.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Placement/PlacementExamples.tsx`\n> * `frontend/packages/react-form-wizard/wizards/Policy/PolicyExamples.tsx`\n> * `frontend/packages/react-form-wizard/wizards/PolicyAutomation/PolicyAutomationExamples.tsx`\n> * `frontend/packages/react-form-wizard/wizards/PolicySet/PolicySetExamples.tsx`\n> * `frontend/packages/react-form-wizard/wizards/ROSA/RosaExample.tsx`\n> * `frontend/packages/react-form-wizard/wizards/common/utils.ts`\n> * `frontend/plugins/acm/console-plugin-metadata.ts`\n> * `frontend/plugins/mce/console-plugin-metadata.ts`\n> * `frontend/src/App.tsx`\n> * `frontend/src/NavigationPath.tsx`\n> * `frontend/src/components/ACMNotReadyWarning.test.tsx`\n> * `frontend/src/components/AutomationProviderHint.test.tsx`\n> * `frontend/src/components/ClusterSets/ClusterSetsTable.test.tsx`\n> * `frontend/src/components/ClusterSets/ClusterSetsTable.tsx`\n> * `frontend/src/components/Clusters/ClustersTable.test.tsx`\n> * `frontend/src/components/Clusters/ClustersTableHelper.test.tsx`\n> * `frontend/src/components/Clusters/ClustersTableHelper.tsx`\n> * `frontend/src/components/KubevirtProviderAlert.test.tsx`\n> * `frontend/src/components/KubevirtProviderAlert.tsx`\n> * `frontend/src/components/LoadPluginData.test.tsx`\n> * `frontend/src/components/LoadPluginData.tsx`\n> * `frontend/src/components/LostChanges.test.tsx`\n> * `frontend/src/components/LostChanges.tsx`\n> * `frontend/src/components/OperatorAlert.test.tsx`\n> * `frontend/src/components/OperatorAlert.tsx`\n> * `frontend/src/components/PluginContextProvider.tsx`\n> * `frontend/src/components/PluginDataContextProvider.test.tsx`\n> * `frontend/src/components/ProjectsTable.test.tsx`\n> * `frontend/src/components/ProjectsTable.tsx`\n> * `frontend/src/components/RBACResourceYaml.test.tsx`\n> * `frontend/src/components/StatusIcons.tsx`\n> * `frontend/src/components/TemplateEditor/TemplateEditor.test.js`\n> * `frontend/src/components/TemplateSummaryModal.tsx`\n> * `frontend/src/components/YamlEditor.test.tsx`\n> * `frontend/src/components/rbac/IdentitiesList.test.tsx`\n> * `frontend/src/lib/AcmTimestamp.test.tsx`\n> * `frontend/src/lib/SharedContext.ts`\n> * `frontend/src/lib/search.ts`\n> * `frontend/src/plugin-extensions/acmResourceRoutes.test.ts`\n> * `frontend/src/plugin-extensions/acmResourceRoutes.ts`\n> * `frontend/src/plugin-extensions/extensions/OverviewTab.ts`\n> * `frontend/src/plugin-extensions/extensions/actionExtension.ts`\n> * `frontend/src/plugin-extensions/extensions/listColumnExtension.ts`\n> * `frontend/src/plugin-extensions/properties/overviewTabProps.ts`\n> * `frontend/src/routes/Applications/AdvancedConfiguration.test.tsx`\n> * `frontend/src/routes/Applications/AdvancedConfiguration.tsx`\n> * `frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.test.tsx`\n> * `frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails.tsx`\n> * `frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.test.tsx`\n> * `frontend/src/routes/Applications/ApplicationDetails/ApplicationDetails/ApplicationDetails.tsx`\n> * `frontend/src/routes/Applications/Applications.tsx`\n> * `frontend/src/routes/Applications/ApplicationsPage.tsx`\n> * `frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.test.tsx`\n> * `frontend/src/routes/Applications/CreateArgoApplication/CreatePullApplicationSet.tsx`\n> * `frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.test.tsx`\n> * `frontend/src/routes/Applications/CreateArgoApplication/CreatePushApplicationSet.tsx`\n> * `frontend/src/routes/Applications/CreateArgoApplication/EditArgoApplicationSet.tsx`\n> * `frontend/src/routes/Applications/CreateArgoApplication/createArgoResources.ts`\n> * `frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.test.tsx`\n> * `frontend/src/routes/Applications/CreateSubscriptionApplication/SubscriptionApplication.tsx`\n> * `frontend/src/routes/Applications/Overview.test.tsx`\n> * `frontend/src/routes/Applications/Overview.tsx`\n> * `frontend/src/routes/Applications/components/DeleteResourceModal.test.tsx`\n> * `frontend/src/routes/Applications/components/DeleteResourceModal.tsx`\n> * `frontend/src/routes/Applications/components/TimeWindowLabels.test.tsx`\n> * `frontend/src/routes/Applications/components/TimeWindowLabels.tsx`\n> * `frontend/src/routes/Applications/components/ToggleSelector.tsx`\n> * `frontend/src/routes/Applications/helpers/resource-helper.tsx`\n> * `frontend/src/routes/Credentials/CreateCredentials.test.tsx`\n> * `frontend/src/routes/Credentials/CreateCredentials.tsx`\n> * `frontend/src/routes/Credentials/CreateCredentialsCatalog.tsx`\n> * `frontend/src/routes/Credentials/CreateCredentialsType/CreateCredentialsAWS.test.tsx`\n> * `frontend/src/routes/Credentials/Credentials.tsx`\n> * `frontend/src/routes/Credentials/CredentialsForm.test.tsx`\n> * `frontend/src/routes/Credentials/CredentialsForm.tsx`\n> * `frontend/src/routes/Credentials/CredentialsPage.test.tsx`\n> * `frontend/src/routes/Credentials/CredentialsPage.tsx`\n> * `frontend/src/routes/Governance/Governance.tsx`\n> * `frontend/src/routes/Governance/GovernancePage.tsx`\n> * `frontend/src/routes/Governance/common/util.tsx`\n> * `frontend/src/routes/Governance/components/AutomationDetailsSidebar.test.tsx`\n> * `frontend/src/routes/Governance/components/AutomationDetailsSidebar.tsx`\n> * `frontend/src/routes/Governance/components/GovernanceEmptyState.tsx`\n> * `frontend/src/routes/Governance/components/PolicyActionDropdown.tsx`\n> * `frontend/src/routes/Governance/components/ViewDiffApiCall.test.tsx`\n> * `frontend/src/routes/Governance/discovered/DiscoveredPolicies.test.tsx`\n> * `frontend/src/routes/Governance/discovered/DiscoveredPolicies.tsx`\n> * `frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.test.tsx`\n> * `frontend/src/routes/Governance/discovered/details/DiscoveredByCluster.tsx`\n> * `frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.test.tsx`\n> * `frontend/src/routes/Governance/discovered/details/DiscoveredPolicyDetailsPage.tsx`\n> * `frontend/src/routes/Governance/discovered/details/DiscoveredResources.test.tsx`\n> * `frontend/src/routes/Governance/discovered/details/DiscoveredResources.tsx`\n> * `frontend/src/routes/Governance/discovered/details/common.test.tsx`\n> * `frontend/src/routes/Governance/discovered/details/common.tsx`\n> * `frontend/src/routes/Governance/overview/ClusterPolicySummarySidebar.test.tsx`\n> * `frontend/src/routes/Governance/overview/ClusterPolicySummarySidebar.tsx`\n> * `frontend/src/routes/Governance/overview/Overview.test.tsx`\n> * `frontend/src/routes/Governance/overview/PolicyViolationSummary.tsx`\n> * `frontend/src/routes/Governance/overview/SecurityGroupPolicySummarySidebar.tsx`\n> * `frontend/src/routes/Governance/policies/CreatePolicy.test.tsx`\n> * `frontend/src/routes/Governance/policies/CreatePolicy.tsx`\n> * `frontend/src/routes/Governance/policies/CreatePolicyAutomation.test.tsx`\n> * `frontend/src/routes/Governance/policies/CreatePolicyAutomation.tsx`\n> * `frontend/src/routes/Governance/policies/CreatePolicySubmit.test.tsx`\n> * `frontend/src/routes/Governance/policies/EditPolicy.test.tsx`\n> * `frontend/src/routes/Governance/policies/EditPolicy.tsx`\n> * `frontend/src/routes/Governance/policies/EditPolicyAutomation.test.tsx`\n> * `frontend/src/routes/Governance/policies/EditPolicyAutomation.tsx`\n> * `frontend/src/routes/Governance/policies/Policies.test.tsx`\n> * `frontend/src/routes/Governance/policies/Policies.tsx`\n> * `frontend/src/routes/Governance/policies/PolicyTableCell.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.test.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyDetailsOverview.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.test.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyDetailsPage.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.test.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyDetailsResults.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/KyvernoRelatedResources.test.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.test.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyDetailsHistory.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailHooks.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.test.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetails.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsColumns.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsPage.test.tsx`\n> * `frontend/src/routes/Governance/policies/policy-details/PolicyTemplateDetail/PolicyTemplateDetailsPage.tsx`\n> * `frontend/src/routes/Governance/policy-sets/CreatePolicySet.test.tsx`\n> * `frontend/src/routes/Governance/policy-sets/CreatePolicySet.tsx`\n> * `frontend/src/routes/Governance/policy-sets/EditPolicySet.test.tsx`\n> * `frontend/src/routes/Governance/policy-sets/EditPolicySet.tsx`\n> * `frontend/src/routes/Governance/policy-sets/PolicySets.test.tsx`\n> * `frontend/src/routes/Governance/policy-sets/PolicySets.tsx`\n> * `frontend/src/routes/Governance/policy-sets/components/PolicySetCard.test.tsx`\n> * `frontend/src/routes/Governance/policy-sets/components/PolicySetCard.tsx`\n> * `frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.test.tsx`\n> * `frontend/src/routes/Governance/policy-sets/components/PolicySetDetailSidebar.tsx`\n> * `frontend/src/routes/Home/Overview/Overview.test.tsx`\n> * `frontend/src/routes/Home/Overview/OverviewPage.test.tsx`\n> * `frontend/src/routes/Home/Overview/components/SavedSearchesCard.test.tsx`\n> * `frontend/src/routes/Home/Overview/components/SavedSearchesCard.tsx`\n> * `frontend/src/routes/Home/Overview/components/SummaryCard.test.tsx`\n> * `frontend/src/routes/Home/Overview/components/SummaryCard.tsx`\n> * `frontend/src/routes/Home/Overview/components/SummaryClustersCard.test.tsx`\n> * `frontend/src/routes/Home/Overview/components/SummaryClustersCard.tsx`\n> * `frontend/src/routes/Home/Overview/components/SummaryStatusCard.test.tsx`\n> * `frontend/src/routes/Home/Overview/components/SummaryStatusCard.tsx`\n> * `frontend/src/routes/Home/Welcome/Welcome.tsx`\n> * `frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.test.tsx`\n> * `frontend/src/routes/Infrastructure/Automations/AnsibleAutomations.tsx`\n> * `frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.test.tsx`\n> * `frontend/src/routes/Infrastructure/Automations/AnsibleAutomationsForm.tsx`\n> * `frontend/src/routes/Infrastructure/Automations/Automations.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/ClusterPools.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/ClusterPools.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPool.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPoolCatalog.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPool/CreateClusterPoolCatalog.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/CreateClusterPoolPage.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterPools/components/ClusterClaimModal.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterRoleAssignments.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetAccessManagement/ClusterSetAccessManagement.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusterPools/ClusterSetClusterPools.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetClusters/ClusterSetClusters.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetails.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetDetailsPage.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetInstallSubmariner/InstallSubmarinerForm.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetManageResources/ClusterSetManageResources.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetOverview/ClusterSetOverview.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetRoleAssignments/ClusterSetRoleAssignments.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetDetails/ClusterSetSubmariner/ClusterSetSubmariner.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetRoleAssignmentsPage.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSets.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/ClusterSetsPage.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/CreateClusterSet/CreateClusterSetModal.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/ClusterSetActionDropdown.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClusterSets/components/MultiClusterNetworkStatus.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/Clusters.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClustersPage.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ClustersPage.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveredClusters.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/DiscoveredClusters/DiscoveryConfig/DiscoveryConfig.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterDetails.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterMachinePools/ClusterMachinePools.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterNodes/ClusterNodes.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ClusterDetails/ClusterOverview/ClusterOverview.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/CreateCluster.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/Warning.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/DetailsForm.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/DetailsForm.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HostForm.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/HypershiftAWSCLI.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/hypershift/NetworkForm.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateCluster/components/assisted-installer/utils.ts`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateAWSControlPlane.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateClusterCatalog.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateControlPlane.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateDiscoverHost.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterCatalog/CreateKubeVirtControlPlane.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/CreateClusterPage.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ImportCluster/ImportCluster.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ImportCluster/ImportCluster.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/ManagedClusters.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/AddCluster.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchChannelSelectModal.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/BatchUpgradeModal.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterActionDropdown.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterDestroy.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ClusterPolicySidebar.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/DistributionField.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HiveNotification.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/HostedClusterProgress.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ImportCommand.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/LoginCredentials.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsProgress.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/NodePoolsTable.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/OnboardingModal.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ProgressStepBar.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/RemoveAutomationModal.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/ScaleClusterAlert.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusField.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/StatusSummaryCount.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.test.tsx`\n> * `frontend/src/routes/Infrastructure/Clusters/ManagedClusters/components/UpdateAutomationModal.tsx`\n> \n> </details>\n> \n> \n\n<!-- end of auto-generated comment: review in progress by coderabbit.ai -->\n\n<!-- walkthrough_start -->\n\n<details>\n<summary>📝 Walkthrough</summary>\n\n## Walkthrough\nReplace the compat router package with `react-router` across frontend: update package metadata, Jest mapping, Storybook, migrate useHistory/history.push → useNavigate, convert several SDK extension imports to type-only `Extension`, and tighten some timestamp/type shapes.\n\n## Changes\n\n**Router migration and type updates**\n\n|Layer / File(s)|Summary|\n|---|---|\n|**Migration batch (deps, Jest, Storybook, plugins, packages)** <br> `frontend/package.json`, `frontend/jest.config.ts`, `frontend/.storybook/preview.js`, `frontend/plugins/*/console-plugin-metadata.ts`, `frontend/packages/*/package.json`|Dependency metadata now adds `react-router`, removes `react-router-dom-v5-compat`, upgrades SDK dev deps, adds Jest moduleNameMapper for compat name, and Storybook uses `MemoryRouter` from `react-router`.|\n|**Global router imports and utilities** <br> `frontend/src/App.tsx`, `frontend/src/NavigationPath.tsx`, `frontend/src/lib/search.ts`, `frontend/src/lib/SharedContext.ts`|App-level, NavigationPath, and shared utilities now import routing hooks and helpers from `react-router`; NavigationPath simplified params handling and some types tightened.|\n|**Component/link/generatePath replacements** <br> `frontend/src/components/*`, many `frontend/src/routes/**` files|Many components and route pages replace imports (`Link`, `Routes`, `Route`, `Navigate`, `generatePath`, `useLocation`, `useMatch`, `useNavigate`, `useParams`, `Outlet`, etc.) to come from `react-router` instead of the v5-compat shim.|\n|**Tests and mocks adjusted** <br> `**/*/*.test.*`, Jest mocks across many tests|Tests import `MemoryRouter`, `Route`, `Routes`, and mock targets now point to `react-router`; several jest.mock blocks use `jest.requireActual('react-router')` and preserve non-hook exports.|\n|**Wizard navigation migration** <br> `frontend/packages/react-form-wizard/wizards/**`|Wizard examples and helpers migrate from `useHistory`/history.push to `useNavigate` and pass `navigate` into cancel handlers and card navigation callbacks.|\n|**Multicluster SDK and extension types** <br> `frontend/packages/multicluster-sdk/*`, `frontend/src/plugin-extensions/*`|Extension-related types converted from `ExtensionDeclaration` to `Extension` and runtime imports moved to `import type` where appropriate. README updated to match type usage.|\n|**Timestamp and interface tightenings** <br> `frontend/src/lib/AcmTimestamp.test.tsx`, `frontend/src/routes/Governance/.../PolicyDetailsResults.tsx`|`AcmTimestamp` test props and `ResultsTableData.timestamp` types narrowed to `string | undefined`, and related tests adjusted.|\n\n## Sequence Diagram(s)\n\nNone\n\n## Estimated code review effort\n🎯 4 (Complex) | ⏱️ ~60 minutes\n\n</details>\n\n<!-- walkthrough_end -->\n<!-- finishing_touch_checkbox_start -->\n\n<details>\n<summary>✨ Finishing Touches</summary>\n\n<details>\n<summary>🧪 Generate unit tests (beta)</summary>\n\n- [ ] <!-- {\"checkboxId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\", \"radioGroupId\": \"utg-output-choice-group-unknown_comment_id\"} -->   Create PR with unit tests\n\n</details>\n\n</details>\n\n<!-- finishing_touch_checkbox_end -->\n\n<!-- internal state start -->\n\n\n<!-- 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 -->\n\n<!-- internal state end -->"},"request":{"retryCount":1,"signal":{}}},"response":{"url":"https://api.github.com/repos/stolostron/console/issues/comments/4664105717","status":401,"headers":{"access-control-allow-origin":"*","access-control-expose-headers":"ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset","connection":"close","content-security-policy":"default-src 'none'","content-type":"application/json; charset=utf-8","date":"Wed, 10 Jun 2026 16:13:19 GMT","referrer-policy":"origin-when-cross-origin, strict-origin-when-cross-origin","server":"github.com","strict-transport-security":"max-age=31536000; includeSubdomains; preload","vary":"Accept-Encoding, Accept, X-Requested-With","x-content-type-options":"nosniff","x-frame-options":"deny","x-github-media-type":"github.v3; format=json","x-github-request-id":"9D3E:22A82B:4DFA077:126EF9E8:6A298D1E","x-xss-protection":"0"},"data":{"message":"Requires authentication","documentation_url":"https://docs.github.com/rest","status":"401"}}}

@sonarqubecloud

Copy link
Copy Markdown

Comment thread frontend/jest.config.ts
'@openshift-assisted/ui-lib/cim': '<rootDir>/node_modules/@openshift-assisted/ui-lib/build/cjs/cim',
'@openshift-assisted/locales/([a-z]{2,3}/translation.json)':
'<rootDir>/node_modules/@openshift-assisted/locales/lib/$1/translation.json',
'^react-router-dom-v5-compat$': '<rootDir>/node_modules/react-router',

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this required for other packages?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This allows tests that pull in @openshift-assisted/ui-lib to pass for the moment until that library is updated. We can remove it at that point.

@openshift-ci

openshift-ci Bot commented Jun 10, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: KevinFCormier, zlayne

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:
  • OWNERS [KevinFCormier,zlayne]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@KevinFCormier

Copy link
Copy Markdown
Contributor Author

/retest

@KevinFCormier KevinFCormier merged commit f126d97 into stolostron:main Jun 10, 2026
14 of 17 checks passed
@KevinFCormier KevinFCormier deleted the ACM-33545-update-react-router branch June 10, 2026 19:28
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.

2 participants