I get your drift 🙂 But that's not quite what I meant.
My proposal would be to save approximately what a user enters in a textbox on the site. I.e. the same that happens now. So you'll save <b>blabla</b> instead of **blabla**, but you'll just keep NodeBB/NodeBB# 1234 as it is.
When you edit the post <em> is converted back to * if the composer you use accepts Markdown. If the site uses a a WYSIWGY editor you can just keep the HTML and work with that.
Plugins can still hook into all that, just make sure that they don't put presentation HTML in the DB. I can imagine that they do add something like <widget=github>NodeBB/NodeBB#1234</widget> to the text that goes in the DB (and deal with this appropriately when editing). This would make it easier to build more complex widgets I guess. But that's all optional.
My main point is that saving (really basic) HTML in the DB is much more universal and more extendable than saving Markdown.
Well, actually my main point is that I found a different (better?) way to deal with the realtime preview of the MarkDown 🙂