Documentation of org.hibernate.boot.MetadataSources.addCacheableFile(File) suggests that .bin-Files will not be used if .hbm.xml-Files are newer (e.g. updated by the developer).
In fact, lastModificationTime is considered only in strict mode in CacheableFileXmlSource which is true only in your JUinit test environments.
As a result, .bin files ain't updated for .hbml.xml files newer than .bin files and Hibernate will work with obsolete mappings.
I can't find any line of code considering lastModificationTime in case of CacheableFileXmlSource.strict = false, this is why I don't yet attach a reproducer.
Applied the PR from Selaron. Thanks!