fingerprint

A stable identity for a violation, independent of run timestamp. Two violations share a fingerprint when they are the "same" problem: same rule, same offending edge or module.