[Proposal] Removal of Duplicate Settings from Advanced Settings
Related Github issue and PR:
Closed PR to maintain it on both sides:
fix: updating advance settings should update corresponding course_app by marslanabdulrauf · Pull Request #37625 · openedx/openedx-platform
Summary
This proposal suggests removing course-related settings from the Advanced Settings page that duplicate functionality already provided by the Pages & Resources page in Open edX. The duplication currently leads to inconsistent system behavior, increased maintenance burden, and a confusing authoring experience. The proposal recommends making Pages & Resources the single source of truth for managing course application and plugin-related settings.
Motivation
Currently, certain course settings (for example, Calculator and edxnotes) are exposed in two different places:
Advanced Settings page
Pages & Resources page
Although these settings appear to overlap in purpose, they are not functionally equivalent in how they update system state. This duplication creates both technical and user-experience issues.
Current Behavior
Updating settings from the Pages & Resources page:
Updates the course app/plugin status
Updates the corresponding course metadata used by Advanced Settings
Updating settings from the Advanced Settings page:
Updates only the course metadata
Does not update the course app/plugin status
This asymmetric behavior leads to inconsistency, where the UI may indicate a feature is enabled or disabled, but the underlying plugin state does not reflect that change.
Problem Statement
The presence of duplicated settings introduces the following problems:
Inconsistent Course State
Course metadata and course app/plugin state can diverge depending on which page is used to update settings.User Confusion
Course authors may reasonably expect both pages to behave identically, but they do not.Increased Maintenance Cost
Maintaining two configuration surfaces for the same settings increases code complexity and testing overhead.Risk of Incorrect Course Behavior
Inconsistent plugin state may lead to features not working as expected, even though they appear enabled in the UI.
Proposed Solution
Remove the duplicated course app/plugin-related settings from the Advanced Settings page and rely exclusively on the Pages & Resources page for managing these settings.
Specifically:
Remove the following settings from Advanced Settings:
Calculator-related settings
edxnotes-related settings
Treat Pages & Resources as the authoritative interface for:
Enabling/disabling course apps and plugins
Ensuring consistent updates to both plugin state and course metadata
This change aligns the UI with the actual system behavior and enforces a single source of truth.
Impact Analysis
Course Authors
Positive impact: Reduced confusion and clearer configuration flow
Authors will manage these settings in one place only
Platform Maintainers
Reduced duplication and maintenance burden
Lower risk of inconsistent states and related bugs
Backward Compatibility
No breaking changes expected
Existing courses will continue to function as before
Only the UI surface for modifying these settings is changed