I'd suggest adding a class method `Offence.from_diagnostic` instead of using the constructor directly.