I am not sure about ionic and covalent bonds but with metallic bonds only two factors preventing it from welding when touching,surface roughness and surface contamination/oxidation.
If you had two metal plates,even from very hard metals like chromium,and the plates were perfectly flat and perfectly clean,they would instantly weld together if they touched in vacuum.
Problem is,even noble metals that dont oxidise carry sticked air particles on its surface even if they are perfectly clean from things like grease,dust and dirt.
Another problem is the surface roughness.There is certain limit of how flat you can polish surface of given alloy.Crystal structure,big grains,carbides,different phases and other factors prevent the surface from being ever made perfectlt flat.
Certain metals and alloys are lot better than others at being able to get fine polish.RSA for example makes aluminum aloys with rapid solidification that have super small grains and can be highly polished,Materion makes bulk metallic glasses that dont have crystal structure at all.
The good thing is that this surface roughness can be compensated with pressure,it will plasticly deform and fill the gaps.Really,its all about that vacuum and cleanliness.