That is, the new REVISIONS should honor whatever the original cr_items.storage_type was set to.
This is done explicitly in file-storage. It makes much more sense to NOT corrupt an item, but handle each item and store all revisions for that item in the same way.
Fixing content::revision::new to use the items storage type always is the best thing to do.
This should be MUCH simpler than checking when a revision is set live.