30.0 / 30
What changed in the harness
Selection accuracy 95→95, token cost up 3%, 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
27.6 / 30
03Economics
20.0 / 20
04Discoverability
12.5 / 20
Highest-impact fix
Estimated gain +7 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.
3 defects 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_asset_content |
no_return_description |
Get the raw content of a Spark asset (prompt text, skill instructions, agent config). Best for prompts and skills that have inline content. Returns the asset's raw content along with its slug and asset type. |
list_popular |
no_return_description |
List the most popular Spark assets by download count. Great for discovering top-rated AI tools. Returns a list of assets with their titles, slugs, types, and download counts. |
list_categories |
no_return_description |
List available categories (domains and AI tags) in the Spark marketplace. Useful for filtering searches. Returns the list of domain categories and AI tags available. |
Selection evidence
Confusable tool pairs.
2 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
get_asset |
get_asset_content |
high | Both take an identical slug parameter, and get_asset explicitly returns 'content' alongside details. A task like 'show me the content of the vb-python-expert asset' is genuinely ambiguous since get_asset also returns content and get_asset_content is a mirror single-asset fetch. |
search_assets |
get_asset |
medium | A task like 'get me the seo expert asset' without a known slug could push an agent to guess a slug for get_asset instead of searching, or a task phrased as 'find asset vb-seo-expert and give details' could misfire into search_assets when get_asset was intended. Both accept asset-oriented input and return asset details. |
Compare the field