Problem
The update-plugins-repo-refs.yaml workflow has a bug in its plugin path construction logic that produced a doubled prefix: plugins/catalog-backend-module-catalog-backend-module-ai-resource-extensions instead of the correct plugins/catalog-backend-module-ai-resource-extensions.
This was observed in PR #3548 updating the ai-integrations workspace. The upstream diff between old and new refs only touched kserve-kubeflow-connector-backend — no new plugin was added — yet the workflow generated a new bogus entry.
Root cause hypothesis
The workflow constructs plugins-list.yaml paths from npm package metadata (e.g., repository.directory or npm package name). The likely cause is that the path derivation logic does not properly normalize or deduplicate path components when the npm package name already contains the prefix that the logic prepends (e.g., @red-hat-developer-hub/backstage-plugin-catalog-backend-module-ai-resource-extensions → the catalog-backend-module- segment gets added again).
Fix
Investigate the path construction logic in .github/workflows/update-plugins-repo-refs.yaml and any scripts it invokes. Fix the derivation to avoid doubling path components.
Complementary work
Issue #3060 proposes validating that plugin directories exist at the pinned commit before adding them to plugins-list.yaml. That validation would catch this class of bug generically as a safety net.
Note
This fix requires changes to GitHub Actions workflow files (.github/workflows/). The code agent cannot modify workflow files under current permissions — manual intervention is needed.
Split from #3555.
Problem
The
update-plugins-repo-refs.yamlworkflow has a bug in its plugin path construction logic that produced a doubled prefix:plugins/catalog-backend-module-catalog-backend-module-ai-resource-extensionsinstead of the correctplugins/catalog-backend-module-ai-resource-extensions.This was observed in PR #3548 updating the
ai-integrationsworkspace. The upstream diff between old and new refs only touchedkserve-kubeflow-connector-backend— no new plugin was added — yet the workflow generated a new bogus entry.Root cause hypothesis
The workflow constructs
plugins-list.yamlpaths from npm package metadata (e.g.,repository.directoryor npm package name). The likely cause is that the path derivation logic does not properly normalize or deduplicate path components when the npm package name already contains the prefix that the logic prepends (e.g.,@red-hat-developer-hub/backstage-plugin-catalog-backend-module-ai-resource-extensions→ thecatalog-backend-module-segment gets added again).Fix
Investigate the path construction logic in
.github/workflows/update-plugins-repo-refs.yamland any scripts it invokes. Fix the derivation to avoid doubling path components.Complementary work
Issue #3060 proposes validating that plugin directories exist at the pinned commit before adding them to
plugins-list.yaml. That validation would catch this class of bug generically as a safety net.Note
This fix requires changes to GitHub Actions workflow files (
.github/workflows/). The code agent cannot modify workflow files under current permissions — manual intervention is needed.Split from #3555.