feat: add SupportEnterpriseEnrollmentDataInjector pipeline step - #2690
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #2690 +/- ##
=======================================
Coverage 87.03% 87.04%
=======================================
Files 264 264
Lines 17248 17268 +20
Branches 1705 1706 +1
=======================================
+ Hits 15012 15031 +19
- Misses 1897 1898 +1
Partials 339 339
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
b77d009 to
5321927
Compare
5321927 to
7977be8
Compare
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
6d56ea7 to
4125f86
Compare
|
@pwnage101 addressed the remaining feedback in the latest commit — dropped the enriched = dict(enrollment_data) half-copy; the step now mutates enrollment_data directly and returns it. (The defensive is None early-return was already removed in the previous round, matching the sibling contact step.) CI is green. |
|
code LGTM, the commit message is mostly AI fluff and irrelevant implementation history, please simplify then merge. |
Registers a pipeline step for the SupportEnrollmentDataRequested openedx-filter that injects enterprise course enrollment data into the support enrollment lookup view, following the same conventions as the other edx-enterprise filter pipeline steps. ENT-11574
4125f86 to
be44beb
Compare
ENT-11574
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.
Adds
SupportEnterpriseEnrollmentDataInjector, registered inENTERPRISE_FILTERS_CONFIG(
enterprise/settings/common.py) against the newSupportEnrollmentDataRequestedopenedx-filter. Builds a
course_id-keyed dict of enterprise course enrollments withdata-sharing-consent records attached — identical logic to the original direct-import
implementation in
enrollments.py, just moved behind a filter.Follows the pattern established by the other edx-enterprise filter pipeline steps
(
discounts.py,courseware.py,enrollment.py): top-level imports guarded bytry/except ImportError, no broad exception swallowing,fail_silently: False(matchingevery current
ENTERPRISE_FILTERS_CONFIGentry), and tests built on real Django modelfactories rather than module-mocking.
This PR is independent of (not stacked on) the contact-tag PR set — both create/touch
enterprise/filters/support.pyandENTERPRISE_FILTERS_CONFIGfrom the same base commit,so whichever of the two merges second will need a small rebase. Expected, not a blocker.
Related PRs
openedx-platform#39076, edx-platform#455 (support-contact-tag)
Testing
New:
tests/filters/test_support.py— 5 tests forSupportEnterpriseEnrollmentDataInjector,using real
UserFactory/EnterpriseCustomerFactory/EnterpriseCustomerUserFactory/EnterpriseCourseEnrollmentFactory/DataSharingConsentFactoryinstances. The existinggeneric
TestEnterpriseFiltersConfigsmoke test intests/test_enterprise/test_settings.pyalso covers our new
ENTERPRISE_FILTERS_CONFIGentry automatically (no changes needed there).Locally verified:
pytest tests/filters/ tests/test_enterprise/test_settings.py— 81 passed.isort --check-onlyclean.Changelog / version
Bumped
__version__to8.11.0(8.10.0 already claimed by the sibling contact-tag PR) andadded a
CHANGELOG.rstentry, matching current practice.Devstack testing (all 3 relevant branches checked out together) is required before merging,
per the enterprise plugin ticket runbook.