Sometimes there is no need to change the sitelink when a page is moved on the client wiki, for example if a page is archived by renaming. To show the issue, Q3907025 is vandalised every day by an archive bot. This is usually done by bots, so an API option is needed, but maybe it can be added to the special page too. (T70947 tries to address the same problem, but in a different way.) This could be applied to deletions as well—de:Wikipedia:Spielwiese is regularly deleted and restored by bot, and Wikidata connection gets lost each time.
I think I've found a potential work-around via a comment in UpdateRepoHookHandler.php: "This only works if there's a user account with the same name on the repo." I've certainly seen article moves by new users that weren't reflected in Wikidata, but I'm not sure exactly what causes this to happen. Also I'm not sure if there is a reliable way to prevent a user account from being automatically created on Wikidata.
(Partial) block is also a workaround, but that requires admin intervention (preventing account creation, on the other hand, requires that the user never visits Wikidata while logged in, which requires much attention even for bots and is nearly impossible for human users), and both limit what other, useful actions the user can do on Wikidata (not registering and full block mean they can’t do anything, partial block means that they can’t touch that one item). I’d like to see a real solution instead of workarounds.