01Safety
0.0 / 30
What changed in the harness
Selection accuracy 100→100, token cost up 1%, unconfirmed writes 0%→0%.
Category breakdown
Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.
0.0 / 30
29.4 / 30
20.0 / 20
15.8 / 20
Highest-impact fix
Estimated gain +30 pointsExpose machine-readable principal/tenant confirmation and a non-mutating permission check so agents can verify both before destructive actions.
Description evidence
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 |
|---|---|---|
get_meme_template |
no_return_description |
Fetch one meme template by its slug (obtained from search_meme_templates or from a memebo.at/templates/<slug> URL). Returns the template's dimensions (width and height), its image URL, and its suggested caption count. |
Selection evidence
2 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
search_meme_templates |
get_meme_template |
medium | Both are retrieval operations and the get tool's description even references search as its source of slugs. A task phrased as 'get me meme templates about X' or 'find the X template' could push an agent toward get_meme_template, which requires a slug the agent doesn't have, or toward search for what is really a single-template detail fetch. |
get_meme_template |
create_meme |
low | A request like 'get me a meme of drake' could be misread: get_meme_template fetches only template metadata (not a finished meme), while create_meme produces the actual meme. The shared tokens 'meme'/'template' plus both acting on a single slug create mild ambiguity, though the contrasting verbs leave little confusion when captions are mentioned. |
Compare the field