edx-platform
edx-platform copied to clipboard
Merge several outline processors in into UserPartitionOutlineProcessor
From this list of processors, the following processors wrap concepts which, under the hood, are implemented on the user_partitions framework:
- ContentGatingOutlineProcessor
- EnrollmentTrackPartitionGroupsOutlineProcessor
- CohortPartitionGroupsOutlineProcessor
- TeamPartitionGroupsOutlineProcessor (new as of this PR)
Theoretically, they could all be merged into a single UserPartitionOutlineProcessor, which would dedupe some business logic and ensure that any new user_partition schemes automatically work with learning_sequences.
Open questions:
- is this as straightforward as I think it is, or are there leaky abstractions / edge cases we're going to hit?
- performance regressions?
- could the same refactoring be applied to block transformers?
CC @ormsbee