Gah, flakey internet snafu ate my response.  As per the above, the operations are serialized.  So the attach runs to completion.  Then at some later point the detach runs to completion.  Crashes in either means that when we restart and load the draft, it will be as if the operation didn't run at all.  (In the case of the attach, we might have managed to attach some blob chunks, but they'll get discarded on the next save of the draft.)