Hmm. So this will immediately wipe out all SIM contacts if the SIM isn't present. I wonder if 1) That could happen during boot if ofono isn't fully initialized yet; or 2) That could happen as a result of other bugs or even normal user behavior.

When we're creating them all again, we only have the automatic import behavior. Any manual links the user had made will be lost. We should avoid doing that unless there's a definite change - the SIM was removed and a new SIM was inserted.