@@ -96,7 +96,8 @@ class SASTResult(Result):
9696
9797
9898@dataclass (frozen = True , kw_only = True )
99- class SarifResult (SASTResult , ABCDataclass ):
99+ class SarifResult (SASTResult ):
100+ finding_msg : str | None = None
100101 location_type : ClassVar [Type [SarifLocation ]]
101102
102103 @classmethod
@@ -119,12 +120,17 @@ def from_sarif(
119120 url = cls .rule_url_from_id (sarif_result , sarif_run , rule_id ),
120121 ),
121122 ),
123+ finding_msg = cls .extract_finding_message (sarif_result , sarif_run ),
122124 )
123125
124126 @classmethod
125- @abstractmethod
126- def rule_url_from_id (cls , result : dict , run : dict , rule_id : str ) -> str :
127- raise NotImplementedError
127+ def extract_finding_message (cls , sarif_result : dict , sarif_run : dict ) -> str | None :
128+ return sarif_result .get ("message" , {}).get ("text" , None )
129+
130+ @classmethod
131+ def rule_url_from_id (cls , result : dict , run : dict , rule_id : str ) -> str | None :
132+ del result , run , rule_id
133+ return None
128134
129135 @classmethod
130136 def extract_locations (cls , sarif_result ) -> Sequence [Location ]:
0 commit comments