Skip to content

Conversation

@rhamilto
Copy link
Member

@rhamilto rhamilto commented Nov 19, 2025

Note the associated QuickStarts were added to the console-operator with openshift/console-operator#1062, but they may not yet be appearing in builds.

After

Screen.Recording.2025-11-19.at.1.22.13.PM.mov

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Nov 19, 2025
@openshift-ci-robot
Copy link
Contributor

openshift-ci-robot commented Nov 19, 2025

@rhamilto: This pull request references CONSOLE-4846 which is a valid jira issue.

In response to this:

After

Screen.Recording.2025-11-19.at.1.22.13.PM.mov

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai
Copy link

coderabbitai bot commented Nov 19, 2025

Walkthrough

Initialize quick-start catalog filter from the URL keyword parameter, add a "Trusted Software Supply Chain" link to the admin dashboard getting-started card (with href /quickstart?keyword=trusted), update tests to expect the new link, and add two English locale entries for that feature.

Changes

Cohort / File(s) Summary
Quick-Start Catalog Filter Initialization
frontend/packages/console-app/src/components/quick-starts/QuickStartCatalogPage.tsx
Added imports for QuickStartContext / QuickStartContextValues and getQueryArgument; used QuickStartContext to obtain setFilter and added a useEffect that reads getQueryArgument('keyword') and calls setFilter('keyword', keyword) on mount to initialize the catalog filter from the URL.
Dashboard Feature Link & Tests
frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/explore-admin-features-getting-started-card.tsx, frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/__tests__/explore-admin-features-getting-started-card.spec.tsx
Added a new getting-started link with id trusted-software-supply-chain, title and description entries, and href set to /quickstart?keyword=trusted; updated tests to assert the new item exists and its href.
English Locale Additions
frontend/public/locales/en/public.json
Added two new locale keys/values for the Trusted Software Supply Chain feature: Trusted Software Supply Chain and Assess risk, validate integrity, secure artifacts, release safely..

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Check the useEffect dependency array in QuickStartCatalogPage.tsx (ensure setFilter is correctly included and effect runs only as intended).
  • Verify the new dashboard link id/href match tests and locale keys; ensure no duplicate keys or JSON formatting issues in public.json.
  • Confirm the QuickStartContext usage aligns with expected context typing and is available where used.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting

📥 Commits

Reviewing files that changed from the base of the PR and between bd8a916 and fe2d81d.

📒 Files selected for processing (4)
  • frontend/packages/console-app/src/components/quick-starts/QuickStartCatalogPage.tsx (2 hunks)
  • frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/__tests__/explore-admin-features-getting-started-card.spec.tsx (2 hunks)
  • frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/explore-admin-features-getting-started-card.tsx (1 hunks)
  • frontend/public/locales/en/public.json (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (4)
  • frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/tests/explore-admin-features-getting-started-card.spec.tsx
  • frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/explore-admin-features-getting-started-card.tsx
  • frontend/public/locales/en/public.json
  • frontend/packages/console-app/src/components/quick-starts/QuickStartCatalogPage.tsx

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Member Author

Choose a reason for hiding this comment

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

Fixes an existing bug where the keyword query parameter was not being applied to the catalog when navigating from another page.

@openshift-ci openshift-ci bot added component/core Related to console core functionality component/dashboard Related to dashboard approved Indicates a PR has been approved by an approver from all required OWNERS files. kind/i18n Indicates issue or PR relates to internationalization or has content that needs to be translated labels Nov 19, 2025
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
frontend/packages/console-app/src/components/quick-starts/QuickStartCatalogPage.tsx (1)

19-24: Consider syncing filter with URL changes.

The current implementation reads the keyword query parameter only when the component mounts (when setFilter is initialized). If the URL query parameter changes while the component remains mounted, the filter won't update.

If users can navigate between different keyword URLs without remounting this component, consider adding the keyword to the dependency array or using a routing library's hook to track URL changes:

 React.useEffect(() => {
   const keyword = getQueryArgument('keyword');
   if (keyword && setFilter) {
     setFilter('keyword', keyword);
+  } else if (!keyword && setFilter) {
+    setFilter('keyword', '');
   }
-}, [setFilter]);
+}, [setFilter, keyword]);

Note: You'll need to call getQueryArgument('keyword') outside the effect to include it in dependencies, or use a URL-watching mechanism.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting

📥 Commits

Reviewing files that changed from the base of the PR and between 5bde0aa and 4230667.

📒 Files selected for processing (3)
  • frontend/packages/console-app/src/components/quick-starts/QuickStartCatalogPage.tsx (2 hunks)
  • frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/explore-admin-features-getting-started-card.tsx (1 hunks)
  • frontend/public/locales/en/public.json (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
**

⚙️ CodeRabbit configuration file

-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity.

Files:

  • frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/explore-admin-features-getting-started-card.tsx
  • frontend/public/locales/en/public.json
  • frontend/packages/console-app/src/components/quick-starts/QuickStartCatalogPage.tsx
🔇 Additional comments (3)
frontend/packages/console-app/src/components/quick-starts/QuickStartCatalogPage.tsx (1)

2-8: LGTM!

The imports are appropriate for implementing URL-based filtering of quick starts.

frontend/public/locales/en/public.json (1)

429-430: LGTM!

The translation entries are properly formatted and align with the new feature link in the Getting Started card.

frontend/public/components/dashboard/dashboards-page/cluster-dashboard/getting-started/explore-admin-features-getting-started-card.tsx (1)

35-40: The link is correctly implemented and will work as designed.

The code properly extracts the keyword parameter and passes it to PatternFly's QuickStartCatalogPage for filtering. Quick starts are loaded as Kubernetes resources (ConsoleQuickStart CRs) from the cluster, not hardcoded in the frontend. If no quick starts match the "trusted" keyword, the page displays QuickStartEmptyState—this is normal expected behavior, not an error. The link follows the same pattern used elsewhere in the codebase (e.g., TopologyQuickSearch.tsx line 53).

Whether specific quick starts with the "trusted" keyword exist in your deployment is a runtime concern managed separately from the frontend code. The link implementation is sound.

Likely an incorrect or invalid review comment.

@openshift-ci-robot
Copy link
Contributor

openshift-ci-robot commented Nov 19, 2025

@rhamilto: This pull request references CONSOLE-4846 which is a valid jira issue.

In response to this:

Note the associated QuickStarts were added to the console-operator with openshift/console-operator#1062, but they may not yet be appearing in builds.

After

Screen.Recording.2025-11-19.at.1.22.13.PM.mov

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@rhamilto
Copy link
Member Author

code approval:
/assign @sg00dwin
qe approval:
/assign @yapei
px approval:
/assign @sferich888
docs approval:
/assign @jseseCCS

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 19, 2025

@rhamilto: GitHub didn't allow me to assign the following users: jseseCCS.

Note that only openshift members with read permissions, repo collaborators and people who have commented on this issue/PR can be assigned. Additionally, issues/PRs can only have 10 assignees at the same time.
For more information please see the contributor guide

In response to this:

code approval:
/assign @sg00dwin
qe approval:
/assign @yapei
px approval:
/assign @sferich888
docs approval:
/assign @jseseCCS

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@sferich888
Copy link

/label px-approved

@openshift-ci openshift-ci bot added the px-approved Signifies that Product Support has signed off on this PR label Nov 19, 2025
@sg00dwin
Copy link
Member

/lgtm

@sg00dwin
Copy link
Member

/verified by @sg00dwin

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Nov 19, 2025
@openshift-ci-robot
Copy link
Contributor

@sg00dwin: This PR has been marked as verified by @sg00dwin.

In response to this:

/verified by @sg00dwin

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Nov 19, 2025
@sg00dwin
Copy link
Member

sg00dwin commented Nov 19, 2025

cc @alanonthegit
While reviewing the code implementation of these in the console I noticed inaccuracies in the text for both Quickstarts.

3.1 “Go to Operators → OperatorHub” should be “Go to Ecosystem → Software Catalog”
3.1 “Open the tile and click Install” should be “Open the tile and click Create”
3.5 “Go to Operators → Installed Operators” should be “Go to Ecosystem → Installed Operators”
4.1 “Go to Operators → Installed Operators → Trusted Profile Analyzer” should be “Go to Ecosystem → Installed Operators → Trusted Profile Analyzer”

Step 3.4
“Use the default channel and approve the install plan” should this be “Use the default Chart version and click Create”

@yapei
Copy link
Contributor

yapei commented Nov 20, 2025

@XiyunZhao please help validate, thanks!

@rhamilto
Copy link
Member Author

/retest

@openshift-ci-robot openshift-ci-robot removed the verified Signifies that the PR passed pre-merge verification criteria label Nov 20, 2025
@openshift-ci openshift-ci bot removed the lgtm Indicates that a PR is ready to be merged. label Nov 20, 2025
@jseseCCS
Copy link

@rhamilto If my assumption is right that only public.json contains any user-facing content, then this lgtm!

@jseseCCS
Copy link

/label docs-approved

@openshift-ci openshift-ci bot added the docs-approved Signifies that Docs has signed off on this PR label Nov 20, 2025
Copy link

@jseseCCS jseseCCS left a comment

Choose a reason for hiding this comment

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

/label docs-approved

@sg00dwin
Copy link
Member

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Nov 20, 2025
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 20, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jseseCCS, rhamilto, sg00dwin

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

The pull request process is described here

Needs approval from an approver in each of these files:

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

@rhamilto rhamilto added the plugin-api-approved Indicates a PR with plugin API changes has been approved by an API reviewer label Nov 20, 2025
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 20, 2025

@rhamilto: all tests passed!

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@XiyunZhao
Copy link

/verified by @XiyunZhao
This PR has been verified. User can now access the Quick Starts page through the new link and filter for the newly added quickstarts - ADD & TSSC automatically
Note: the two new templates still need to be added manually via YAML

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Nov 21, 2025
@openshift-ci-robot
Copy link
Contributor

@XiyunZhao: This PR has been marked as verified by @XiyunZhao.

In response to this:

/verified by @XiyunZhao
This PR has been verified. User can now access the Quick Starts page through the new link and filter for the newly added quickstarts - ADD & TSSC automatically
Note: the two new templates still need to be added manually via YAML

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

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

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. component/core Related to console core functionality component/dashboard Related to dashboard docs-approved Signifies that Docs has signed off on this PR jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. kind/i18n Indicates issue or PR relates to internationalization or has content that needs to be translated lgtm Indicates that a PR is ready to be merged. plugin-api-approved Indicates a PR with plugin API changes has been approved by an API reviewer px-approved Signifies that Product Support has signed off on this PR verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants