When fixing issues in the templates-used list (for T321032), we changed the loading process to also fetch template protection info and any missing interface messages required for protection levels. This means that the loading (which can happen very frequently when Realtime Preview is enabled) is visually disruptive because the list is built progressively and so changes the vertical space in the page.
The current system a) fetches the preview, which comes with a list of templates in use; b) for batches of templates, fetches protection info (and if required, the system messages); and then displays the list item.
Instead, it should immediately display the whole templates-used list, and then progressively fix up each item with the additional info. This would still mean that there are visual changes, but no extra list items would be added so it'd be a much smoother display. Non-existing templates would still be displayed as redlinks initially, as this info is available from the first action=parse API call.
We could either not show the edit link initially, or show it and then change it later if editing isn't permitted for the current user.