@@ -154,6 +154,8 @@ class IsIdentifierFromCommentMatching(Checker, GetTestingFarmJobHelperMixin):
154154 otherwise only jobs with the same identifier.
155155 """
156156
157+ DESCRIPTION : str = "**Identifiers don't match** - test run will be skipped"
158+
157159 def pre_check (self ) -> bool :
158160 if (
159161 not self .testing_farm_job_helper .comment_arguments .labels
@@ -163,7 +165,17 @@ def pre_check(self) -> bool:
163165 logger .info (
164166 f"Using the default identifier for test command: { default_identifier } " ,
165167 )
166- return self .job_config .identifier == default_identifier
168+ if self .job_config .identifier != default_identifier :
169+ # Create structured mismatch data for aggregation
170+ self ._mismatch_data = {
171+ "type" : "identifier_default" ,
172+ "job_value" : self .job_config .identifier ,
173+ "comment_value" : default_identifier ,
174+ "targets" : list (self .job_config .targets ),
175+ }
176+
177+ return False
178+ return True
167179
168180 if (
169181 not self .testing_farm_job_helper .comment_arguments .identifier
@@ -177,6 +189,15 @@ def pre_check(self) -> bool:
177189 f"(job:{ self .job_config .identifier } "
178190 f"!= comment:${ self .testing_farm_job_helper .comment_arguments .identifier } )" ,
179191 )
192+
193+ # Create structured mismatch data for aggregation
194+ self ._mismatch_data = {
195+ "type" : "identifier_explicit" ,
196+ "job_value" : self .job_config .identifier ,
197+ "comment_value" : self .testing_farm_job_helper .comment_arguments .identifier ,
198+ "targets" : list (self .job_config .targets ),
199+ }
200+
180201 return False
181202
182203
@@ -187,17 +208,39 @@ class IsLabelFromCommentMatching(Checker, GetTestingFarmJobHelperMixin):
187208 otherwise only jobs with the same label.
188209 """
189210
211+ DESCRIPTION : str = "**Labels don't match** - test run will be skipped"
212+
190213 def pre_check (self ) -> bool :
191214 if (
192215 not self .testing_farm_job_helper .comment_arguments .labels
193216 and not self .testing_farm_job_helper .comment_arguments .identifier
194217 and (default_labels := self .job_config .test_command .default_labels )
195218 ):
196219 logger .info (f"Using the default labels for test command: { default_labels } " )
220+
197221 if not self .job_config .labels :
222+ # Create structured mismatch data for aggregation
223+ self ._mismatch_data = {
224+ "type" : "labels_default" ,
225+ "job_value" : self .job_config .labels or [],
226+ "comment_value" : list (default_labels ),
227+ "targets" : list (self .job_config .targets ),
228+ }
229+
198230 return False
199231
200- return any (x in default_labels for x in self .job_config .labels )
232+ if not any (x in default_labels for x in self .job_config .labels ):
233+ # Create structured mismatch data for aggregation
234+ self ._mismatch_data = {
235+ "type" : "labels_default" ,
236+ "job_value" : list (self .job_config .labels ),
237+ "comment_value" : list (default_labels ),
238+ "targets" : list (self .job_config .targets ),
239+ }
240+
241+ return False
242+
243+ return True
201244
202245 if not self .testing_farm_job_helper .comment_arguments .labels or (
203246 self .job_config .labels
@@ -213,4 +256,13 @@ def pre_check(self) -> bool:
213256 f"(job:{ self .job_config .labels } "
214257 f"!= comment:${ self .testing_farm_job_helper .comment_arguments .labels } )" ,
215258 )
259+
260+ # Create structured mismatch data for aggregation
261+ self ._mismatch_data = {
262+ "type" : "labels_explicit" ,
263+ "job_value" : list (self .job_config .labels ) if self .job_config .labels else [],
264+ "comment_value" : list (self .testing_farm_job_helper .comment_arguments .labels ),
265+ "targets" : list (self .job_config .targets ),
266+ }
267+
216268 return False
0 commit comments