Skip to content

feat(lightspeed)!: remove OFS re-exports from main entry point [RHIDP-15153]#3708

Open
its-mitesh-kumar wants to merge 1 commit into
redhat-developer:mainfrom
its-mitesh-kumar:fix/lightspeed-RHIDP-15153-remove-ofs-reexport
Open

feat(lightspeed)!: remove OFS re-exports from main entry point [RHIDP-15153]#3708
its-mitesh-kumar wants to merge 1 commit into
redhat-developer:mainfrom
its-mitesh-kumar:fix/lightspeed-RHIDP-15153-remove-ofs-reexport

Conversation

@its-mitesh-kumar

@its-mitesh-kumar its-mitesh-kumar commented Jul 7, 2026

Copy link
Copy Markdown
Member

Description

Remove legacy (OFS) component re-exports from the main ./ entry point of @red-hat-developer-hub/backstage-plugin-lightspeed. OFS consumers must now import from the ./legacy subpath exclusively. This is a breaking change that graduates the New Frontend System (NFS) plugin to the primary entry point while keeping OFS available at ./legacy for community consumers until Backstage 2.x drops OFS support.

Updates documentation (README, app-config.dynamic.yaml) to reflect that module: Legacy is now required for all OFS dynamic plugin configurations, and bumps the changeset to major.

Fixed

  • RHIDP-15153 — [Lightspeed] Remove legacy OFS re-exports from main entry point

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)

BREAKING CHANGE: Legacy (OFS) component exports have been removed from
the main './' entry point. OFS consumers must update imports to use
'@red-hat-developer-hub/backstage-plugin-lightspeed/legacy'.

Fixes: https://redhat.atlassian.net/browse/RHIDP-15153
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
@rhdh-gh-app

rhdh-gh-app Bot commented Jul 7, 2026

Copy link
Copy Markdown

Important

This PR includes changes that affect public-facing API. Please ensure you are adding/updating documentation for new features or behavior.

Changed Packages

Package Name Package Path Changeset Bump Current Version
app-legacy workspaces/lightspeed/packages/app-legacy none v0.0.28
@red-hat-developer-hub/backstage-plugin-lightspeed workspaces/lightspeed/plugins/lightspeed major v2.9.1

@sonarqubecloud

sonarqubecloud Bot commented Jul 7, 2026

Copy link
Copy Markdown

@codecov

codecov Bot commented Jul 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 54.55%. Comparing base (26407b3) to head (b01abc6).
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3708   +/-   ##
=======================================
  Coverage   54.55%   54.55%           
=======================================
  Files        2349     2349           
  Lines       89735    89735           
  Branches    25135    25133    -2     
=======================================
  Hits        48953    48953           
  Misses      40482    40482           
  Partials      300      300           
Flag Coverage Δ *Carryforward flag
adoption-insights 83.70% <ø> (ø) Carriedforward from 26407b3
ai-integrations 68.35% <ø> (ø) Carriedforward from 26407b3
app-defaults 69.79% <ø> (ø) Carriedforward from 26407b3
augment 46.39% <ø> (ø) Carriedforward from 26407b3
boost 74.68% <ø> (ø) Carriedforward from 26407b3
bulk-import 72.46% <ø> (ø) Carriedforward from 26407b3
cost-management 14.10% <ø> (ø) Carriedforward from 26407b3
dcm 61.81% <ø> (ø) Carriedforward from 26407b3
extensions 61.53% <ø> (ø) Carriedforward from 26407b3
global-floating-action-button 71.18% <ø> (ø) Carriedforward from 26407b3
global-header 59.71% <ø> (ø) Carriedforward from 26407b3
homepage 50.23% <ø> (ø) Carriedforward from 26407b3
install-dynamic-plugins 56.77% <ø> (ø) Carriedforward from 26407b3
konflux 91.49% <ø> (ø) Carriedforward from 26407b3
lightspeed 68.81% <ø> (ø)
mcp-integrations 85.46% <ø> (ø) Carriedforward from 26407b3
orchestrator 42.97% <ø> (ø) Carriedforward from 26407b3
quickstart 65.63% <ø> (ø) Carriedforward from 26407b3
sandbox 79.56% <ø> (ø) Carriedforward from 26407b3
scorecard 82.67% <ø> (ø) Carriedforward from 26407b3
theme 61.26% <ø> (ø) Carriedforward from 26407b3
translations 7.25% <ø> (ø) Carriedforward from 26407b3
x2a 78.68% <ø> (ø) Carriedforward from 26407b3

*This pull request uses carry forward flags. Click here to find out more.


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 26407b3...b01abc6. Read the comment docs.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@its-mitesh-kumar

Copy link
Copy Markdown
Member Author

Tried generating this PR using raise-pr skills without --a ie auto-approval using claude

S_.2026-07-08.at.4.mp4

@its-mitesh-kumar

Copy link
Copy Markdown
Member Author

/fs-review

@fullsend-ai-review

fullsend-ai-review Bot commented Jul 7, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 11:08 PM UTC · Completed 11:13 PM UTC
Commit: 26407b3 · View workflow run →

@fullsend-ai-review

Copy link
Copy Markdown

Review — approve

Summary

This PR removes legacy (OFS) component re-exports (LightspeedPage, LightspeedDrawerProvider, LightspeedIcon, LightspeedFAB, LightspeedChatContainer, LightspeedDrawerStateExposer, lightspeedPlugin, and associated types) from the main ./ entry point. NFS exports (lightspeedFABModule, lightspeedRedirectModule, lightspeedTranslationsModule, and the default NFS plugin) remain on the primary path. OFS consumers must now import exclusively from ./legacy.

Verified

  1. Code change (src/index.tsx) — The 13 removed lines were a clean re-export block from ./legacy. No other code in index.tsx is affected. The ./legacy subpath (src/legacy.ts) continues to export all OFS components and types unchanged.

  2. In-repo consumers — All TypeScript consumers checked:

    • packages/app/src/App.tsx imports only NFS exports (lightspeedFABModule, lightspeedRedirectModule, lightspeedTranslationsModule) from the main path — no update needed
    • packages/app-legacy/src/components/Root/Root.tsxupdated by this PR from main path to /legacy
    • packages/app-legacy/src/App.tsx — already imports from /legacy (unchanged) ✓
    • Test files all use relative imports within src/no updates needed
  3. Scalprum / dynamic plugin config — The package.json scalprum config maps PluginRoot./src/index.tsx and Legacy./src/legacy.ts. After this PR, PluginRoot no longer re-exports OFS components, making module: Legacy mandatory. The app-config.dynamic.yaml correctly adds module: Legacy to all 5 OFS entries (LightspeedPage, LightspeedFAB, LightspeedDrawerProvider, LightspeedDrawerStateExposer, LightspeedChatContainer).

  4. API report (report.api.md) — Removed OFS exports and their associated import types (BackstagePlugin, PathParams, PropsWithChildren, RouteRef_2, SubRouteRef_2, JSX_3). NFS exports remain intact.

  5. Documentation — README updated consistently: import examples changed from "deprecated, will be removed" to "no longer works", module: Legacy guidance changed from "advisable" to "required", migration diff included in changeset.

  6. Changeset — Correctly bumped from minor to major with clear breaking-change description and migration instructions.

Verdict

Clean, well-scoped breaking change. No logic errors, no missed consumers, no security concerns. Documentation and configuration are thoroughly updated. The PR is ready to merge.

@fullsend-ai-review fullsend-ai-review Bot added the ready-for-merge All reviewers approved — ready to merge label Jul 7, 2026
@its-mitesh-kumar its-mitesh-kumar changed the title feat(lightspeed)!: remove OFS re-exports from main entry point feat(lightspeed)!: remove OFS re-exports from main entry point [RHIDP-15153] Jul 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-for-merge All reviewers approved — ready to merge workspace/lightspeed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant