@@ -32,56 +32,42 @@ def validate_environment():
3232
3333def detect_changes (pr_number : int ) -> str :
3434 """Detect modified skills in PR."""
35- print ("\n ==> Detecting changes in PR #{}" .format (pr_number ))
36-
35+ if not os .environ .get ("GITHUB_TOKEN" ):
36+ return ""
37+
3738 result = subprocess .run (
3839 ["python3" , "ci/detect_changes.py" , str (pr_number )],
3940 capture_output = True ,
4041 text = True ,
4142 )
4243
4344 modified_skills = result .stdout .strip ()
44-
45- if modified_skills :
46- skill_list = modified_skills .split ()
47- print (f"✓ Found { len (skill_list )} modified skill(s): { ', ' .join (skill_list [:3 ])} " +
48- (f" +{ len (skill_list )- 3 } more" if len (skill_list ) > 3 else "" ))
49- else :
50- print ("✓ No skills modified - will test all skills" )
51-
5245 return modified_skills
5346
5447
5548def generate_matrix (filter_provider : str = "all" , skills : str = "" ) -> list :
56- """Generate evaluation matrix from configuration with per-skill jobs.
49+ """Generate evaluation matrix from configuration with per-skill jobs."""
5750
58- If skills are provided, creates one matrix item per skill per model.
59- Otherwise creates one item per model (tests all skills).
60- """
61- print ("\n ==> Generating evaluation matrix" )
62-
6351 result = subprocess .run (
6452 ["uv" , "run" , "--with" , "pyyaml" , "ci/matrix_generator.py" , "--filter-provider" , filter_provider ],
6553 capture_output = True ,
6654 text = True ,
6755 )
6856
6957 if result .returncode != 0 :
70- print ("❌ Error generating matrix" )
71- print (result .stderr )
58+ print (f"Error generating matrix: { result .stderr } " , file = sys .stderr )
7259 sys .exit (1 )
7360
7461 try :
7562 matrix_data = json .loads (result .stdout )
7663 except json .JSONDecodeError :
77- print ("❌ Error parsing matrix JSON" )
78- print (result .stdout )
64+ print (f"Error parsing matrix JSON: { result .stdout } " , file = sys .stderr )
7965 sys .exit (1 )
8066
8167 items = matrix_data .get ("include" , [])
8268
8369 if not items :
84- print ("❌ Error: No enabled providers in configuration" )
70+ print ("Error: No enabled providers in configuration" , file = sys . stderr )
8571 sys .exit (1 )
8672
8773 # If skills are specified, expand matrix to one item per skill per model
@@ -97,13 +83,7 @@ def generate_matrix(filter_provider: str = "all", skills: str = "") -> list:
9783 expanded_items .append (expanded_item )
9884
9985 items = expanded_items
100- print (f"✓ Generated matrix with { len (items )} job(s) ({ len (items )// len (skill_list )} model(s) × { len (skill_list )} skill(s))" )
101- else :
102- print (f"✓ Generated matrix with { len (items )} configuration(s) (all skills per model)" )
10386
104- for i , item in enumerate (items , 1 ):
105- print (f" { i } . { item ['display_name' ]} " )
106-
10787 return items
10888
10989
0 commit comments