Is there anyway your proposed solution could be applied without imposing an envers-specific check inside EntityType?