Skip to content

Add CCX creation event signal to edx-platform #37896

@luisfelipec95

Description

@luisfelipec95

Context

CCX creation is a significant lifecycle event that often requires integration with external systems or platform-specific workflows.

Today, edx-platform does not expose a clear, dedicated signal that indicates when a CCX has been created.

Problem statement

Currently, there is no first-class signal emitted specifically for CCX creation. As a result:

Integrations must rely on:

  • Ad-hoc hooks

  • Overloaded signals

  • Or duplicating logic across multiple code paths

There is no consistent or reliable way to react to CCX creation across:

  • Extensions

  • Plugins

  • External services

This makes CCX lifecycle integrations brittle and difficult to maintain.

Proposal

Introduce a dedicated signal that is emitted when a CCX is successfully created.

The signal should:

  • Fire exactly once per CCX creation

Be emitted from a single, canonical location in the CCX creation flow

This would allow extensions and plugins to reliably subscribe to CCX creation events without duplicating logic.

Why this is viable

  • Low risk: signals are passive and do not alter core behavior

  • Backward compatible: no existing functionality is removed

  • Extensible: enables integrations without hardcoding platform-specific logic

  • Aligns with existing patterns: edx-platform already uses signals for other course lifecycle events

Additional context

A draft implementation has been proposed in:
#37897

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions