[Proposal] Removal of Duplicate Settings from Advanced Settings

[Proposal] Removal of Duplicate Settings from Advanced Settings

Related Github issue and PR:

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:

  1. Inconsistent Course State
    Course metadata and course app/plugin state can diverge depending on which page is used to update settings.

  2. User Confusion
    Course authors may reasonably expect both pages to behave identically, but they do not.

  3. Increased Maintenance Cost
    Maintaining two configuration surfaces for the same settings increases code complexity and testing overhead.

  4. 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