@@ -96,7 +96,8 @@ class SASTResult(Result):
96
96
97
97
98
98
@dataclass (frozen = True , kw_only = True )
99
- class SarifResult (SASTResult , ABCDataclass ):
99
+ class SarifResult (SASTResult ):
100
+ finding_msg : str | None = None
100
101
location_type : ClassVar [Type [SarifLocation ]]
101
102
102
103
@classmethod
@@ -119,12 +120,17 @@ def from_sarif(
119
120
url = cls .rule_url_from_id (sarif_result , sarif_run , rule_id ),
120
121
),
121
122
),
123
+ finding_msg = cls .extract_finding_message (sarif_result , sarif_run ),
122
124
)
123
125
124
126
@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
128
134
129
135
@classmethod
130
136
def extract_locations (cls , sarif_result ) -> Sequence [Location ]:
0 commit comments