@@ -98,6 +98,9 @@ def apply_screening(variants: list[Variant], sampling: SamplingConfig, seed: int
9898 return variants
9999
100100
101+ DIMENSIONS = ("model" , "agent_instructions" , "skills" , "mcp" , "environment" )
102+
103+
101104def apply_filter (variants : list [Variant ], filter_expr : str ) -> list [Variant ]:
102105 from calibra .config import ConfigError
103106
@@ -106,28 +109,16 @@ def apply_filter(variants: list[Variant], filter_expr: str) -> list[Variant]:
106109 key , _ , value = part .strip ().partition ("=" )
107110 pairs [key .strip ()] = value .strip ()
108111
109- dim_attr = {
110- "model" : lambda v : v .model .label ,
111- "agent_instructions" : lambda v : v .agent_instructions .label ,
112- "skills" : lambda v : v .skills .label ,
113- "mcp" : lambda v : v .mcp .label ,
114- "environment" : lambda v : v .environment .label ,
115- }
116-
117- unknown = set (pairs .keys ()) - set (dim_attr .keys ())
112+ unknown = set (pairs .keys ()) - set (DIMENSIONS )
118113 if unknown :
119114 raise ConfigError (
120115 f"Unknown filter dimension(s): { ', ' .join (sorted (unknown ))} . "
121- f"Valid dimensions: { ', ' .join (sorted (dim_attr . keys () ))} "
116+ f"Valid dimensions: { ', ' .join (sorted (DIMENSIONS ))} "
122117 )
123118
124119 result = []
125120 for v in variants :
126- match = True
127- for dim , label in pairs .items ():
128- if dim_attr [dim ](v ) != label :
129- match = False
130- break
131- if match :
121+ labels = v .dim_labels ()
122+ if all (labels [dim ] == label for dim , label in pairs .items ()):
132123 result .append (v )
133124 return result
0 commit comments