Skip to content

[DEPR]: Cross-course "Search Your Courses" (dashboard search) #38941

Description

@feanil

RFC Start Date

2026-07-31

Target Plan Accepted Date

2026-08-14

Target Transition Unblocked Date

Estimated 2026-09. Sooner if there are no objections and we drop it; later if we decide to rebuild it in the MFE first.

Earliest Breaking Changes Unblocked Date

2027-01-31, or one month after the ticket moves to Transition Unblocked, whichever is later.

Earliest Open edX Named Release with Breaking Changes

Xylon - 2027-04

Rationale

The new learner dashboard has been the default for a while, and we'd like to finish the job and remove the legacy dashboard. Cross-course "Search Your Courses" is the one capability that only lives on the legacy dashboard - it lets a learner search courseware content across all of their enrolled courses at once. There's no equivalent in the new dashboard or the learning MFEs (in-course search exists, but only within a single course).

It's off by default (ENABLE_DASHBOARD_SEARCH), so I expect relatively few sites use it, though I don't have hard usage numbers. Removal is the plan, but this is the piece I'm least sure about - if you rely on cross-course search, please chime in on this ticket. Either way the legacy dashboard itself is going away: if there's real demand, we'll build cross-course search into the new frontend as its own story and still remove the legacy dashboard; if not, this capability goes away with it.

Removal

Just the dashboard cross-course search UI and its flag:

  • The "Search Your Courses" widget on the dashboard (lms/templates/dashboard.html, gated by ENABLE_DASHBOARD_SEARCH).
  • The legacy Backbone UI it uses (openedx/features/course_search/static/course_search/js/dashboard_search_factory.js plus its views/collections) and the RequireJS build entries in lms/static/lms/js/build.js.
  • The ENABLE_DASHBOARD_SEARCH feature flag.

Explicitly not removed: the courseware content index (ENABLE_COURSEWARE_INDEX) and the /search/ endpoint. Both stay - they're shared with in-course search - so this frees no search infrastructure; it only removes the cross-course entry point.

Replacement

None today. In-course search (scoped to a single course) already exists in the learning MFE, but cross-course search does not exist in any MFE. If we decide it's worth keeping, the replacement would be a net-new cross-course search built into the new frontend.

Additional Info

Dashboard search is just the shared /search/ endpoint (edx-search do_search) called without a course_id, so it returns results across the courses a user is enrolled in. Because the index is shared with in-course search, there's no data migration or index teardown involved.

Related: #38936 - legacy learner dashboard removal, which this decision blocks.

Discussion post: https://discuss.openedx.org/t/deprecation-legacy-learner-dash-courseware-search/19188

Metadata

Metadata

Assignees

Labels

deprProposal for deprecation & removal per OEP-21

Type

No type

Projects

Status
RFC

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions