OpenedXContentRuntime is based on XBlockRuntime, but XBlockRuntime isn't used for anything else.
There could instead just be OpenedXContentRuntime, based on xblock.core.Runtime + RuntimeShim. The two modules (runtime.py, openedx_content_runtime.py) could be merged into one as well.
Discussion: #38011 (comment)