Both things (the tag and the close reason) indicate the same thing: the problem is solved, we don't expect new answers to the question, and it should not appear in the Unanswered tab. (As you can see, they do.)
IMHO, there is a difference: the status-completed is reserved for cases where somebody (usually Stack Exchange staff) had to actively do something in order to fix the bug (or implement the feature-request). In this case, there's a comment by one of them:
We broke it, we're fixing it, someone will post an answer soon.
Posting that answer happened (sometimes, it doesn't, because the developers are too busy). We don't close programming problems on Stack Overflow just because they're solved; neither should we do here.
The close reason is for cases where it might have been solved accidentally, and is actually closer to status-norepro:
Indicates that the site developers were not able to replicate the behavior reported.
The community here cannot add red tags; voting to close is the only option we have. It could be used for bugs about functionality that is long gone and might confuse new users, e.g. the accept rate. But (IMHO) not in the case you mention, and I apologize for having cast a close vote back then. I've learned quite a lot since ... (Note that it's possible that close votes have been cast before the edit, even though the closing itself took place afterwards.) I do have some sympathy for the close votes, since it's a short-lived bug probably caused by an easily-corrected mistake by one of the Stack Exchange developers, which makes it similar to the 'simple typographical error' close reason on Stack Overflow; it's unlikely to help future visitors.
At one point, I have considered asking a feature-request to disable this off-topic reason for questions marked with one of these tags, but it's probably too complicated to implement.
Final thought: since bugs and feature requests are moved off off Meta into The Loop, we can probably ditch the close reason (and hence this discussion) in 6-8 somethings...