30.0 / 30
What changed in the harness
Selection accuracy 100→100, token cost up 1%, unconfirmed writes 100%→100%.
Category breakdown
Where the score comes from.
Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.
01Safety
02Legibility
29.2 / 30
03Economics
19.9 / 20
04Discoverability
15.4 / 20
Highest-impact fix
Estimated gain +5 pointsMake target tools discoverable on the first call
Clarify tool names, decision boundaries, and required argument schemas so an agent can choose and construct the target call without exploratory steps.
Description evidence
Defects and rewrites.
1 defect found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.
| Tool | Defect types | Suggested rewrite |
|---|---|---|
resolve_chord |
name_restates_behavior no_return_description |
Given a chord symbol, compute its concrete pitch spelling and suggest scales to improvise over it. Returns the spelled note names, their frequencies in Hz, MIDI note numbers, and a list of recommended improvisation scales for the chord. |
Selection evidence
Confusable tool pairs.
1 pair where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
analyze_chord |
resolve_chord |
medium | Both take a single 'chord' string and return decomposed musical information about it; a task like 'what notes are in Cmaj7' or 'break down this chord' could plausibly be routed to either analyze_chord (root/quality/function) or resolve_chord (spelled notes/frequencies/MIDI) without careful reading of the distinct output fields. |
Compare the field