Skip to content

chore: remove system and update owners in catalog-info.yaml#2427

Open
hopehadfield wants to merge 1 commit intoredhat-developer:mainfrom
hopehadfield:update-catalog-info
Open

chore: remove system and update owners in catalog-info.yaml#2427
hopehadfield wants to merge 1 commit intoredhat-developer:mainfrom
hopehadfield:update-catalog-info

Conversation

@hopehadfield
Copy link
Contributor

Hey, I just made a Pull Request!

This change is being made as a part of the dogfooding effort (specifically RHIDP-10958). It aims to restructure and clean up the relations graph by removing the system: rhdh annotation, and by updating the ownership group. This is to align with the proposed IT Dev Hub RHDH Structure .

Current Structure on Dev Hub:

Screenshot 2026-03-03 at 11 09 18 AM

New Structure:

Screenshot 2026-03-03 at 10 40 53 AM Screenshot 2026-03-03 at 10 39 38 AM

cc @JessicaJHee

✔️ Checklist

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

Signed-off-by: Hope Hadfield <hhadfiel@redhat.com>
@rhdh-qodo-merge
Copy link

Review Summary by Qodo

Remove system annotation and update ownership in catalog-info files

✨ Enhancement

Grey Divider

Walkthroughs

Description
• Remove system: rhdh annotation from all catalog-info.yaml files
• Update ownership assignments across multiple workspace plugins
• Align catalog structure with IT Dev Hub RHDH organization
• Change root repository type from backstage-plugin-repository to repository
Diagram
flowchart LR
  A["catalog-info.yaml files"] -- "Remove system: rhdh" --> B["Simplified catalog structure"]
  A -- "Update owner assignments" --> C["Team-based ownership"]
  D["Root catalog-info.yaml"] -- "Change type to repository" --> B
  C --> E["Aligned with RHDH structure"]
Loading

Grey Divider

File Changes

1. catalog-info.yaml ⚙️ Configuration changes +1/-1

Update root repository type and owner

catalog-info.yaml


2. workspaces/adoption-insights/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/adoption-insights/catalog-info.yaml


3. workspaces/ai-integrations/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/ai-integrations/catalog-info.yaml


View more (12)
4. workspaces/bulk-import/catalog-info.yaml ⚙️ Configuration changes +0/-1

Remove system annotation from plugin

workspaces/bulk-import/catalog-info.yaml


5. workspaces/extensions/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/extensions/catalog-info.yaml


6. workspaces/global-floating-action-button/catalog-info.yaml ⚙️ Configuration changes +0/-1

Remove system annotation from plugin

workspaces/global-floating-action-button/catalog-info.yaml


7. workspaces/global-header/catalog-info.yaml ⚙️ Configuration changes +0/-1

Remove system annotation from plugin

workspaces/global-header/catalog-info.yaml


8. workspaces/homepage/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/homepage/catalog-info.yaml


9. workspaces/lightspeed/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/lightspeed/catalog-info.yaml


10. workspaces/mcp-integrations/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/mcp-integrations/catalog-info.yaml


11. workspaces/openshift-image-registry/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/openshift-image-registry/catalog-info.yaml


12. workspaces/quickstart/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/quickstart/catalog-info.yaml


13. workspaces/scorecard/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/scorecard/catalog-info.yaml


14. workspaces/theme/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/theme/catalog-info.yaml


15. workspaces/translations/catalog-info.yaml ⚙️ Configuration changes +1/-2

Remove system annotation and update owner

workspaces/translations/catalog-info.yaml


Grey Divider

Qodo Logo

@rhdh-qodo-merge
Copy link

rhdh-qodo-merge bot commented Mar 3, 2026

Code Review by Qodo

🐞 Bugs (2) 📘 Rule violations (0) 📎 Requirement gaps (0)

Grey Divider


Action required

1. Undefined owner group 🐞 Bug ✓ Correctness
Description
workspaces/mcp-integrations/catalog-info.yaml now sets spec.owner: rhdh-ai, but no Group
entity named rhdh-ai exists in the repo’s team definitions, so ownership relations/links (and any
ownership-based workflows) will be broken for this component.
Code

workspaces/mcp-integrations/catalog-info.yaml[12]

+  owner: rhdh-ai
Evidence
The component’s owner is set to rhdh-ai, but the repository’s team catalog file enumerates the
available groups and does not define rhdh-ai, meaning this owner reference cannot resolve to a
real Group entity in setups that rely on these descriptors.

workspaces/mcp-integrations/catalog-info.yaml[10-14]
catalog-info-teams.yaml[4-42]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

### Issue description
`workspaces/mcp-integrations/catalog-info.yaml` references an owner group (`rhdh-ai`) that is not defined in the repository’s group catalog descriptors, which breaks ownership relations.

### Issue Context
The repo includes `catalog-info-teams.yaml` with the defined team groups used in other catalog entries. `rhdh-ai` is not present there.

### Fix Focus Areas
- workspaces/mcp-integrations/catalog-info.yaml[10-14]
- catalog-info-teams.yaml[4-42]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools



Remediation recommended

2. System removal incomplete 🐞 Bug ✓ Correctness
Description
The PR removes system: rhdh from multiple workspace-level entities, but the root
catalog-info.yaml still declares system: rhdh and other entities in the repo also still use it,
leaving a mixed state that may not achieve the intended relations-graph cleanup.
Code

catalog-info.yaml[R12-15]

+  type: repository
  lifecycle: active
  owner: rhdh-team
  system: rhdh
Evidence
PR intent states that the relations graph is being cleaned up by removing the system: rhdh
relationship. However, the root component still has system: rhdh, and there are still catalog
entities in-repo that retain system: rhdh (example shown), resulting in an incomplete cleanup and
potentially confusing hierarchy/filters in Backstage.

catalog-info.yaml[11-15]
workspaces/bulk-import/catalog-info.yaml[25-29]
workspaces/bulk-import/plugins/bulk-import/catalog-info.yaml[17-22]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

### Issue description
`system: rhdh` was removed from several workspace-level catalog entities, but it remains on the root entity and other entities in the repo, leaving a mixed/inconsistent relations model that may not match the PR’s stated goal.

### Issue Context
Backstage relations/filters based on `spec.system` will behave inconsistently when only some entities retain the system.

### Fix Focus Areas
- catalog-info.yaml[11-15]
- workspaces/bulk-import/plugins/bulk-import/catalog-info.yaml[17-22]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

ⓘ The new review experience is currently in Beta. Learn more

Grey Divider

Qodo Logo

@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 3, 2026

spec:
type: backstage-plugin
owner: john@example.com
owner: rhdh-ai

Choose a reason for hiding this comment

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

Action required

1. Undefined owner group 🐞 Bug ✓ Correctness

workspaces/mcp-integrations/catalog-info.yaml now sets spec.owner: rhdh-ai, but no Group
entity named rhdh-ai exists in the repo’s team definitions, so ownership relations/links (and any
ownership-based workflows) will be broken for this component.
Agent Prompt
### Issue description
`workspaces/mcp-integrations/catalog-info.yaml` references an owner group (`rhdh-ai`) that is not defined in the repository’s group catalog descriptors, which breaks ownership relations.

### Issue Context
The repo includes `catalog-info-teams.yaml` with the defined team groups used in other catalog entries. `rhdh-ai` is not present there.

### Fix Focus Areas
- workspaces/mcp-integrations/catalog-info.yaml[10-14]
- catalog-info-teams.yaml[4-42]

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools

Copy link
Contributor

@gabemontero gabemontero Mar 3, 2026

Choose a reason for hiding this comment

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

so @hopehadfield you used rhdh-team for the ai-integrations change .... unless @johnmcollier disagrees, I would suggest that whichever team is used for ai-integrations can be used for mcp-integrations

Choose a reason for hiding this comment

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

Code Implementation 🛠️

Implementation: Update the component owner to an existing Group entity defined in the repository so ownership relations resolve correctly.

Suggested change
owner: rhdh-ai
owner: rhdh-team
📄 References

See review comment here

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@gabemontero I was working based off the CODEOWNERS file which lists the AI team as an owner for mcp-integrations, whereas ai-integrations lists the UI team along with others from other teams (which is why I generalized to rhdh-team). The Qodo issue is stemming from the fact that rhdh-ai hasn't been added to catalog-info-teams.yaml, but this is copied from the Dev Hub instance that hasn't yet imported that group from Rover yet.

I think ultimately the owner annotation will just serve as an easy filter for teams for what they're responsible for, so we can always adjust in future to whatever is most useful. I'll update it to rhdh-team for now to avoid any breakages until the rhdh-ai group is added.

Copy link
Contributor

Choose a reason for hiding this comment

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

ah the catalog-info-team.yaml ref stirred some memory cells @hopehadfield .... we did something similar in the export overlays repo https://github.com/redhat-developer/rhdh-plugin-export-overlays/pull/1652/changes ... after we created that @redhat-developer/rhdh-ai github handle

I think there is a rhdh-ai rover handle .... I'll ask in slack and report back

Copy link
Contributor Author

Choose a reason for hiding this comment

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

There is a group in Rover: https://rover.redhat.com/groups/group/rhdh-ai

I think it just needs to be synced with Dev Hub

Copy link
Contributor

Choose a reason for hiding this comment

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

There is a group in Rover: https://rover.redhat.com/groups/group/rhdh-ai

I think it just needs to be synced with Dev Hub

by synced with Dev Hub you mean make a change to https://github.com/redhat-developer/rhdh-plugins/blob/main/catalog-info-teams.yaml ?

Or do you mean something else @hopehadfield

thanks

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sorry, I'm realizing that was a vague statement 😅 I mean the groups we have in the the internal Dev Hub instance. I think they're automatically imported by Rover, but I need to touch base with the DevIT team because the rhdh-ai group is missing.

Once that is updated, I'll update https://github.com/redhat-developer/rhdh-plugins/blob/main/catalog-info-teams.yaml

Copy link
Contributor

Choose a reason for hiding this comment

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

gotcha / no worries :-)

in the interim I'm going to update CODEOWNERS so rhdh-ai is also listed for ai-integrations

thanks

Copy link
Contributor

@gabemontero gabemontero left a comment

Choose a reason for hiding this comment

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

a suggestion based on the qodo call out

spec:
type: backstage-plugin
owner: john@example.com
owner: rhdh-ai
Copy link
Contributor

@gabemontero gabemontero Mar 3, 2026

Choose a reason for hiding this comment

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

so @hopehadfield you used rhdh-team for the ai-integrations change .... unless @johnmcollier disagrees, I would suggest that whichever team is used for ai-integrations can be used for mcp-integrations

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants