We have had a similar issue with this. We had a microflow where we deleted an object. The delete behaviour was wrongly set so that an other object also was removed. Now the strange part. In this microflow the also deleted object was committed. The microflow did not have a problem with that (strange because it should have thrown an error that the object no longer existed). After the commit a submicroflow was called. With the breakpoint on we could still see the deleted object like it was there. In this microflow we again committed the object. An then the model would realize the object was no longer there and through a fault. Strangely the fault was that it expected an object that no longer was there. While it could have known that is was deleted.
We did not file a bugreport for this, but I do think it was a bug. So check your delete behaviour to see if you got a similar issue.
This may be a platform bug, do you have a reproducible case? If so can you please file a ticket?