This has always been fishy, and it's original purpose isn't quite clear.
The '!obc->obs.ssc' is clearly the create case, but the head_exists check
is only the case if we are getting the context for a _head, which in
many cases we're not. In parituclarly, it fails for a snapped object
where the head doesn't exist. We _do_ have teh ssc (from the _snapdir
object) but there is no head.
Just remove the assert entirely.. it's not clear what it's really catching.