Column strategy should be able to distinguish between existing and new violations on the changed code lines and show new violations only. Current patchedline strategy can't understand what exactly was changed in the line (e.g. a whitespace was added between words), so it may show old violations as well.
Investigate ways to implement a column strategy. One of them can be usage of https://github.com/google/diff-match-patch to compare an old and a new line and get the columns within those lines with a new text.