0.0 / 30
What changed in the harness
Selection accuracy 98%, destructive-action safety rate 0% (baseline only -- no rewrite pass applied).
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
28.5 / 30
03Economics
12.6 / 20
04Discoverability
10.9 / 20
Highest-impact fix
Estimated gain +30 pointsAdd explicit identity and permission preflight tools
Expose machine-readable principal/tenant confirmation and a non-mutating permission check so agents can verify both before destructive actions.
Description evidence
Defects and rewrites.
0 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 |
|---|---|---|
| No description defects were flagged in this assessment. | ||
Selection evidence
Confusable tool pairs.
4 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
create_standing_order |
create_monitored_area |
high | Both descriptions open with nearly identical framing ('Put an area under CONTINUOUS watch' vs 'Put a place under continuous satellite measurement') and both are created with just a bbox, so a task like 'keep continuous watch over this region' is genuinely ambiguous — only deeper reading (scheduled analyst question re-answer vs metric-based satellite measurement) disambiguates. |
list_standing_orders |
list_monitored_areas |
medium | Both are free, parameterless list tools for continuously-watched areas on the key. A task like 'show me all the areas I'm watching / my active monitors' plausibly maps to either; only the underlying distinction (scheduled analyst questions vs satellite quantity measurements) separates them. |
search_imagery |
plan_event_imagery |
medium | A task like 'get satellite imagery for this event' could plausibly route to search_imagery (the catalog search) even though plan_event_imagery is the intended one-shot wrapper given an event_id; an agent that skips the guidance ('Prefer this over several search_imagery calls') may pick the wrong member. |
list_monitored_areas |
get_monitored_area |
low | Tasks like 'get my monitored areas' are somewhat ambiguous between the summary list and single-area detail (list already reports latest value and anomaly flag), but the singular name, required area_id, and clear history-vs-summary schema descriptions make wrong selection unlikely. |
Compare the field