I see putting tags on answers as a way of indicating that a question, although wildly different in detail, is a duplicate of many other questions because it is solved by the same basic principle. I'm most familiar with the situation in
bash-tagged questions, but the idea applies to other categories. Some
bash-inspired examples of answer tags:
* `[quote-parameter-expansion]` - the problem was caused by failure to quote a parameter expansion, due to the resulting string undergoing pathname expansion or word-splitting.
* `[parse-ls]` - related to `[quote-parameter-expansion]`, but not often a direct cause of the problem. Something like `for x in $(ls foo*)` may break if one of the matched files is `foo bar` (contains spaces), where the problem would not exist if `for x in foo*` had been uses. Many answers will contain this fix as a suggested correction while answer an unrelated problem.
* `[subshell-scope]` - a variable does not have the expected value because it was set in a subshell, most frequently caused by a while loop in a pipeline: `... | while read; do foo=something; done echo $foo
* `[bashism]` - an attempt to use a `bash`-specific feature like arrays or brace expansion in a shell (usually `dash`) that does not support it.
Having answer tags could cut down on duplicates by making it far easier to refer the asker to the myriad answers that address their question indirectly. It's often difficult to choose a good question to use as the duplicate, because explaining why it is a duplicate takes almost as much effort as simply re-answering the question.
Perhaps a better solution is to have tag-specific FAQs to use as canonical answers to link to as duplicates.