feat: replace enterprise support enrollment imports with filter call - #462
Merged
Merged
Conversation
This was referenced Sep 8, 2026
brobro10000
force-pushed
the
brobro10000/ENT-11574-enrollment
branch
2 times, most recently
from
September 9, 2026 16:38
ad89114 to
2ddc176
Compare
pwnage101
reviewed
Sep 9, 2026
pwnage101
reviewed
Sep 9, 2026
brobro10000
force-pushed
the
brobro10000/ENT-11574-enrollment
branch
from
September 11, 2026 17:01
2ddc176 to
b8acecb
Compare
brobro10000
force-pushed
the
brobro10000/ENT-11574-enrollment
branch
from
September 14, 2026 15:53
b8acecb to
12cff52
Compare
brobro10000
force-pushed
the
brobro10000/ENT-11574-enrollment
branch
9 times, most recently
from
September 17, 2026 14:16
a858458 to
7dca08c
Compare
pwnage101
reviewed
Sep 17, 2026
brobro10000
force-pushed
the
brobro10000/ENT-11574-enrollment
branch
3 times, most recently
from
September 17, 2026 16:39
e49bd8a to
1255d87
Compare
pwnage101
approved these changes
Sep 17, 2026
brobro10000
marked this pull request as ready for review
September 17, 2026 16:47
Removes the direct openedx.features.enterprise_support imports and the _enterprise_course_enrollments_by_course_id helper from EnrollmentSupportListView, replacing them with a call to the SupportEnrollmentDataRequested openedx-filter. ENT-11574
brobro10000
force-pushed
the
brobro10000/ENT-11574-enrollment
branch
from
September 18, 2026 11:40
1255d87 to
7edbe25
Compare
brobro10000
enabled auto-merge (squash)
September 18, 2026 11:45
kramakrushna
pushed a commit
that referenced
this pull request
Sep 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ENT-11574
Sibling of the openedx/openedx-platform PR of the same name, carrying the same call-site
change to this deployable fork so it can go through stage/prod ahead of the upstream merge,
per the enterprise plugin ticket runbook. Devstack only boots this repo (not
openedx/openedx-platform), so this is also the branch used for local integration testing.
Companion PR to the already-open support-contact-tag PR set (openedx-filters#390,
edx-enterprise#2688, openedx-platform#39076, edx-platform#455) — this one covers the
other half of ENT-11574's acceptance criteria: enterprise enrollment data for the support
enrollment view.
Removes the direct
openedx.features.enterprise_supportimports and the_enterprise_course_enrollments_by_course_idhelper fromEnrollmentSupportListView,replacing them with a call to the new
SupportEnrollmentDataRequestedopenedx-filter. Nosettings changes in this PR:
OPEN_EDX_FILTERS_CONFIGregistration for the pipeline steplives entirely in edx-enterprise's own
plugin_settings()(enterprise/settings/common.py),per the
ENT-11830ownership handoff — already merged in this repo (#281) well before thisbranch existed.
lms/djangoapps/support/views/contact_us.pyis untouched — this PR is scoped to theenrollment filter only.
Shape corrected
Code review flagged that passing an empty placeholder dict to the filter (and zipping the
results back onto
enrollmentsvia a for-loop here) left a non-enterprise pipeline-stepimplementer nothing real to augment, and that the resulting for-loop should be deleted by
having the filter make in-place changes to
enrollmentsinstead(comment,
comment). Since
openedx-filters#393andedx-enterprise#2690were already merged/released, the fix landedas new PRs, which have since merged and released:
Follow-up review also asked for the argument to keep its
_datasuffix(
enrollments_data, notenrollments) and for a documented example payload — both addressedin the same two PRs above before they merged.
The call site here reads
enrollments, _ = SupportEnrollmentDataRequested.run_filter(enrollments_data=enrollments, user=user)with thezip-back for-loop deleted entirely — zero "enterprise" mentions remain in
enrollments.py.Dependency pins updated
Now that both companion PRs are released, this PR's
openedx-filters/edx-enterprisepins arebumped to match (3.13.0 / 8.13.0) in
requirements/constraints.txtand the compiledrequirements files — verified locally against the real released packages that
SupportEnrollmentDataRequested.run_filter(enrollments_data=..., user=...)returns theexpected
(enrollments, user)tuple.Stale test assertion removed
With the real released packages installed, CI surfaced a genuine bug:
test_get_enrollments(which exercises the real, unmocked filter — no pipeline step configured in this repo's test
settings) asserted
data[0]['enterprise_course_enrollments'] == []. That key is only ever addedby a configured pipeline step; with none configured here,
run_pipelineis a no-op and the keyis never added at all — the assertion raised
KeyError, not a failed equality check. Removed thestale assertion;
test_get_enrollments_with_enterprise_filter(which mocks the pipeline step)already covers the case where the key is actually populated.
Related PRs
openedx-platform#39076, edx-platform#455 (support-contact-tag)
Merge order (per the enterprise plugin ticket runbook)
Merge this after local devstack testing and before the openedx/openedx-platform PR.
Auto-deploys to stage on merge — test in stage, then deploy to prod and confirm working, before
the openedx-platform PR is rebased and merged.
Testing
Same test change as the openedx-platform PR:
SupportEnrollmentDataRequested.run_filterismocked at the call site in
lms/djangoapps/support/tests/test_views.py; the pipeline-stepbehavior itself is covered by edx-enterprise's own test suite.
Local devstack integration testing (with the openedx-filters, edx-enterprise, and this branch
checked out together) is required before merging — see
devstack-validate-ENT-11574-enrollment-filter.md.