As you said, I looked and there are a couple of bugs already that the describe the problem(s). There is one that describes this issue exactly. Unfortunately it is marked "needs feedback", but appears to have been ignored since then (there is a *lot* of feedback in the thread). It seems to be set as a very low priority, so I suspect it's not getting fixed soon :-( The bug was originally reported in 2015, so it's been around for a while.
On the plus side, there seems to be no repercussions for killing everyone, so you can use it as live training. Or you can RP it in a variety of ways. Also, even though the excess merchants seems to involve scuttling the caravan, it does not seem to lead to the missing caravan bug. Caravans and migrants continue to show up as normal (as least it does for me). So basically the major downside is the elimination of some historical figures (as well as possible casualties on your side) if you decide to "clean up". Probably this could be fixed fairly easily with a DFHack script, but I don't use DFHack, so I can't do that.