chore(orchestrator): promote NFS plugins from /alpha to stable - #4247
Conversation
Fixes: https://redhat.atlassian.net/browse/RHIDP-14417 Signed-off-by: Yi Cai <yicai@redhat.com> Co-authored-by: Cursor <cursoragent@cursor.com>
|
Important This PR includes changes that affect public-facing API. Please ensure you are adding/updating documentation for new features or behavior. Changed Packages
|
PR Summary by QodoPromote orchestrator NFS plugins from /alpha to stable entry points
AI Description
Diagram
High-Level Assessment
Files changed (28)
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4247 +/- ##
==========================================
+ Coverage 58.52% 58.77% +0.25%
==========================================
Files 2447 2449 +2
Lines 97252 97328 +76
Branches 26994 27022 +28
==========================================
+ Hits 56913 57202 +289
+ Misses 40146 39930 -216
- Partials 193 196 +3
*This pull request uses carry forward flags. Click here to find out more. Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
Code Review by Qodo
1. Missing legacy type export
|
lokanandaprabhu
left a comment
There was a problem hiding this comment.
UI is working fine,
A couple of observations from reviewing the Qodo findings:
- Missing FormWidgetsApi type export from
/legacyentrypoint
legacyExports.ts re-exports orchestratorFormApiFactory whose type signature includes FormWidgetsApi, but FormWidgetsApi itself isn't exported. This shows up as the ae-forgotten-export warning in report-legacy.api.md (line 12). Minor, but worth fixing — adding export { FormWidgetsApi } from './FormWidgetsApi' to legacyExports.ts should resolve it.
- Cross-repo dynamic plugin loading (clarification needed)
Qodo flagged that rhdh-operator and rhdh-local load orchestrator-form-widgets without a module override, so they'll default to PluginRoot which now exports an NFS FrontendPlugin instead of the OFS BackstagePlugin. However, I noticed that bulk-import and scorecard already shipped this same graduation pattern (PluginRoot → NFS, Legacy → OFS) without adding module: Legacy downstream, and there's been no reported breakage. Is this fine?
Export FormWidgetsApi from the legacy entrypoint and require pluginModule: Legacy for OFS dynamic loading of form-widgets. Fixes: https://redhat.atlassian.net/browse/RHIDP-14417 Signed-off-by: Yi Cai <yicai@redhat.com> Co-authored-by: Cursor <cursoragent@cursor.com>
|





Description
Promotes the Orchestrator and Orchestrator Form Widgets New Frontend System (NFS) plugins from the
./alphasubpath to the stable primary entry point, following the same graduation pattern used by bulk-import, quickstart, theme, and scorecard.NFS
createFrontendPluginexports are now the default.entry. Legacy OFS exports move to./legacy. For orchestrator,./alpharetains translations only; for form-widgets,./alphais removed. Dynamic plugin Scalprum config now requiresmodule: Legacyfor OFS consumers.Fixed
/alphato stableChecklist
Verified on rhdh pr redhat-developer/rhdh#5115
rhidp_14417.mp4