Change the default height of the cover image view to 0
Move constraint modifications to the updateViewConstraints method

Don't update the constraints directly; just invalidate the root view's current constraints and perform the modifications in the update method.
CoreData isolation

If we are interacting with the CoreData objects, just pull out the information we need. This way we don't care what MOC the original object belongs to as long as we can use the object ID to fetch it on the local MOC.