Such déjà vu! This whole discussion isn't new, and the same suggestions were made before.
I'll just point out a few things:
-> Yesterday I wanted to install qupzilla and pacman automatically updated keyring and system, also breaking GL symlinks. I noticed that, so I came to the forum to check what was happening and fully updated the system, even-though I didn't want to. This should never have happened. The symlink management should have been preformed along with the respective packages update, as sueridgepipe mentioned. Mistakes happen!
-> The proposed changes in mechanics of the branches aren't new. Clearly something needs to change. As I said in previous post (buried somewhere), I believe testing batch updates prior to their move to stable could improve reliability. I don't know if it would attract or repel users. The way I see it, there's not much benefit in having three branches currently because testing and unstable don't seem to differ that much besides development.
-> I and other users also mentioned before the need for a safe and easy way to roll back. I still think this is paramount, not only to ensure recovery from messy situations but also to allow users from testing branch to test both single and batch updates (that is, if the testing mechanics remains essentially the same).
-> As I was reading through the topic, I was thinking on proposing something like this. I wasn't aware of systemd.offline-update, so thank you @Mel.
As for the discussion on wether Linux is for everybody or not, rolling-release model, GUI/wrappers, etc... I believe the aim of any developer is to improve his product and provide usability for the largest possible audience. Of course there are products aimed at different kinds of users with different tastes, but we're talking about a specific product, which advertises itself as professional user-friendly. I'm not criticizing the advertisement, as I believe this to be the true aim of the development team. The important thing is to learn with the past and concentrate on changes which can potentially prevent such issues in the future. This creates a conflict with the "bleeding-edge" part, as stability and development towards that aim necessarily create a lag between updates. That's why I don't fully agree with the "rolling is not for newbies" argument. Instead I think that "bleeding edge is not for newbies".
So, as was also pointed previously (please don't make me search for it), maybe longer periods between stable updates would help, in addiction with bach update testing. This would release some pressure from the stable releases and could potentially attract more users to testing (I would be one of them, at least in what concerns with batch testing).
I probably had more to say but I forgot about it and I don't feel like going through the whole topic again. There are much more knowledgeable persons than me discussing this over here, anyway. I just wanted to contribute with my personal opinion.
Cheers and keep the good work,