My third paragraph idea about deferring the renames was one suggestion on how to make it easier to find places like this, where the developer forgot the flush. You would quickly have a corrupt repository, either in a unit test, or on your workstation. :-)