Skip to main content
Glama

Review a proposed patch

jev_review

Score a proposed diff against the original request to decide if the task is done. Returns rubric scores, safe-to-apply probability, and an auto, review, or escalate action without applying the patch.

Instructions

Score a proposed diff against the request with TypeSafe Jev before the task is called done. Returns 0..2 rubric scores for correctness, spec match, test gap, and blast radius (the last two lower the weighted composite), a safe_to_apply probability, and an auto | review | escalate action. Auto requires safe_to_apply and min score confidence at auto_accept and the composite at composite_floor; truncated or malformed input never returns auto. Does not apply the patch or run tests. Use jev_gate to also verify completion claims against evidence in the same call.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
diffYesProposed patch, file excerpt, or change summary. Truncated at 50000 chars.
testsNoReported test output, if any. Truncated at the same cap.
requestYesWhat the user asked for; this frames the review, it is not proof of anything.
review_atNoMin score confidence or safe_to_apply below this escalates. Must be <= auto_accept. Default min(0.5, auto_accept).
auto_acceptNosafe_to_apply and min score confidence at or above this may stand automatically. Default 0.8.
composite_floorNoWeighted composite at or above this is required for auto. Default 0.7.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.5.0

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states the tool is non-mutating ('Does not apply the patch or run tests'), explains the auto/escalate decision logic, and discloses truncation behavior ('Truncated at 50000 chars'). It could add more about failure modes or error handling, but the key behavioral traits are well covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but efficient, front-loading the core action and rubric before moving to decision logic and exclusions. Every sentence earns its place, though the decision-logic sentence is long and packs several conditions together. It is appropriately sized for a tool with 6 parameters and complex auto-accept behavior.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a review tool with no output schema, the description does a good job of explaining what the tool returns (rubric scores, safe_to_apply probability, action) and how the action is determined. It could be more complete by describing the exact output format or error behavior, but the essential context for an agent to decide whether to call this tool and interpret its result is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 6 parameters. The description adds meaningful context beyond the schema: it explains how the parameters interact (auto requires safe_to_apply and min score confidence at auto_accept and composite at composite_floor), and clarifies that 'request' frames the review but is not proof. This is valuable semantic glue that the schema alone doesn't provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('Score'), a specific resource ('a proposed diff against the request'), and a named method ('TypeSafe Jev'). It distinguishes itself from siblings by naming jev_gate as the alternative for verifying completion claims, and the rubric detail (correctness, spec match, test gap, blast radius) makes the tool's function unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool ('before the task is called done') and names the sibling alternative ('Use jev_gate to also verify completion claims against evidence in the same call'). It also states what the tool does not do ('Does not apply the patch or run tests'), which helps an agent avoid misusing it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.