I think the difference between the two approaches comes down to the release cycle. For something like a backend that gets deployed multiple times a week, the most important thing is to get the backend working again once it breaks. Just as an example, for each minute that the Facebook ads backend is down, hundreds of thousands of dollars are lost. In this case, you really want to be able to remove changes entirely.
This is such a bad idea for the banks. ByteDance has plenty of money. This is a political move to create domestic impact if the U.S. ever wants to ban TikTok again, which almost happened under Trump.
You still haven’t answered the question of why it’s valuable. You’re asking someone to do a lot of work by cleaning up their feature branch. What’s the benefit? The commits all get atomically added to master at the same time. Why would you want to revert to a state that master was never in? For instance, let’s say a feature is added and needs to be reverted. Personally, I prefer doing a single git revert <commit> and knowing that master is in a valid state.
What value do those commits really provide? In master, I want every commit to represent a change in state that I may want to revert to when rolling back or bisecting. I don’t ever want to go back in time mid-way through someone’s feature development. What use is that? If I’m curious about the specific history of that feature, I’ll go to the branch it came from.
The point is that these rabbits holes are dangerous for people, as you mention. TikTok is controlled by the CCP, meaning they control the rabbit holes. They may not be doing anything now, but it’s a huge risk to the American society.
CCP propaganda won’t be a red flying with people chanting “China is great!” It will be something like “masks aren’t effective” to increase the impact of COVID on America.
There are a lot of studies done on small sample sizes. It some sense it’s necessary: if something is unsafe on a small sample, it’s more than likely unsafe on a large sample.