MCPcopy
hub / github.com/wshobson/agents / row_from_result

Function row_from_result

plugins/plugin-eval/scripts/eval_all.py:63–109  ·  view source on GitHub ↗
(name: str, result: PluginEvalResult, duration_ms: int)

Source from the content-addressed store, hash-verified

61
62
63def row_from_result(name: str, result: PluginEvalResult, duration_ms: int) -> PluginRow:
64 comp = result.composite
65 if comp is None:
66 return PluginRow(
67 name=name,
68 score=None,
69 badge=None,
70 confidence=None,
71 ci_lower=None,
72 ci_upper=None,
73 anti_patterns=[],
74 weakest_dimensions=[],
75 duration_ms=duration_ms,
76 errored=True,
77 error="No composite score produced",
78 )
79
80 # Collect unique anti-pattern flags across layers
81 seen: set[str] = set()
82 anti_patterns: list[str] = []
83 for layer in result.layers:
84 for ap in getattr(layer, "anti_patterns", []) or []:
85 flag = getattr(ap, "flag", None) or str(ap)
86 if flag and flag not in seen:
87 seen.add(flag)
88 anti_patterns.append(flag)
89
90 # Weakest 3 dimensions (by weighted_score)
91 dims = sorted(
92 comp.dimensions,
93 key=lambda d: (d.weighted_score if d.weight > 0 else 1.0),
94 )[:3]
95 weakest = [(d.name, d.score) for d in dims if d.weight > 0]
96
97 badge_val = comp.badge.value if hasattr(comp.badge, "value") else str(comp.badge)
98 return PluginRow(
99 name=name,
100 score=comp.score,
101 badge=badge_val,
102 confidence=comp.confidence_label,
103 ci_lower=comp.ci_lower,
104 ci_upper=comp.ci_upper,
105 anti_patterns=anti_patterns,
106 weakest_dimensions=weakest,
107 duration_ms=duration_ms,
108 errored=False,
109 )
110
111
112def evaluate_one(

Callers 1

evaluate_oneFunction · 0.85

Calls 2

PluginRowClass · 0.85
addMethod · 0.45

Tested by

no test coverage detected