Currently user requests to adaptors use 'user' mode to access to resources needed internally by the adaptor. For resources not directly visible to user, 'intermediate' mode is more appropriate instead in many cases such as when the mapping adaptor accesses objects during mapping.
91 switches to 'intermediate' mode if not in 'core' mode to access models and to access mapped objects along other resources. During user callbacks on get_object and retrieve_objects, it switches back to the mode they were called with.
@JeremyGrieshop let's talk about the appropriate tests to make sure this is secure when you have time.
Currently user requests to adaptors use 'user' mode to access to resources needed internally by the adaptor. For resources not directly visible to user, 'intermediate' mode is more appropriate instead in many cases such as when the mapping adaptor accesses objects during mapping.