angular.js are two different things, therefore not the logical synonyms, therefore de-synonymization is right in my opinion.
Looks like there is more than one thing here to think about.
Firstly, in my very humble opinion, CR.SE should stick to names that are meaningful/accepted in the communities around the specific technologies. Otherwise, why bother with terminology and vocabulary at all? It means, Angular version 2 and above should be called
Angular. Everything before v2 is
Angular.js. This is how we should tag the questions today. In other words, I agree with desynonymization "starting today and going forward".
Secondly, we don't really know whether the new terms will appear on Angular's landscape. If they do, it's fine to reflect these new terms in CR tags, why not? Is tag proliferation a big deal? Not to me, but more experienced CR Meta users know better.
Lastly, would we like to dive into revisiting & re-tagging all the exiting (old) question which say "angular" but mean "angular.js" for very little benefits? Why put an effort into this? Just for the consistency? It's okay to have these artifacts that show how Angular-related technologies evolved over time. (In a way, it's similar to Git's idea of not messing up with history). Again, what does the renaming of older questions achieve exactly?
And here's another (not my) idea. We can always take a look at what does the SO do with these Angular[.js] tags. I'm not proposing blindly accepting their decision, but at lest enlighten ourselves on what was their thinking process. In addition to that, I believe (have no real stats/data) that on SO it's a bit more important to keep the old questions in a good shape, because the site visitors are much more likely to search for their answer before posing a question. This is very different in CR.SE because it's usually much harder to even formulate a search query when one wants their code to be reviewed -- I bet the site visitor just clicks the "Ask Question" and jumps into formatting his/her code.
Just my five cents.