Skip to main content
Glama
Mipiti
by Mipiti

Decide Drift Intent

decide_drift_intent

Decide if a description-drift finding is intended (update description) or a defect (fix code, name control).

Instructions

Decide whether a description-drift finding (the code reported to do more, or less, than a sentence of the description) was intended or is a defect of the code. Mutating; a judgment.

intended: the description is behind the product; revise it (create_proposal kind description_revision). defect: the description is the design and the code is wrong; name in control_id the control whose assertions check the behaviour as designed. The finding closes when one of its assertions passes verification at a commit not earlier than this decision, and while it stands an answer that would write the defect into the model is refused (409 drift_is_defect).

A program's decision is refused with 403 and an escalation_id unless the workspace's delegation policy names drift_intent_decided: do not retry; report it, or raise a drift_intent proposal for a person.

Input Schema

NameRequiredDescriptionDefault
noteNoWhy.
intentYes``intended`` or ``defect``.
model_idYesID of the threat model.
control_idNoFor a defect, the control whose passing assertion closes it.
finding_idYesThe description-drift finding (``list_findings``).
head_commitNoThe commit you read the code at.
server_versionYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.88.0

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations provided, the description carries the full behavioral burden and does so: it declares the tool mutating, defines the closing condition (an assertion passing verification at a commit not earlier than the decision), and discloses two distinct failure modes (409 drift_is_defect while the finding stands, 403 escalation without the required policy grant). This is well beyond what the schema conveys.

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 front-loaded: purpose first, then the two outcome branches, then closing/refusal mechanics, then the authorization caveat. Every sentence carries information, though the backtick-heavy jargon and nested parentheticals make it denser than ideal.

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

Completeness5/5

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

An output schema exists, so return values need not be described. For a mutating, policy-gated decision tool with no annotations, the description covers preconditions, the meaning of each branch, the failure codes, and the escalation fallback — nothing an agent needs to call it correctly is missing.

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 coverage is already 86%, so the baseline is 3, but the description adds real meaning: it explains the semantics of the two 'intent' values, clarifies that control_id must name the control whose assertions check the behaviour as designed, and implies head_commit is the commit the code was read at. This lifts it above the schema baseline.

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 first sentence names a specific verb (decide) and a specific resource (a description-drift finding), and immediately defines the two possible outcomes ('intended' vs 'defect'). This is a semantically unique action that cannot be confused with siblings like decide_proposal or judge_objective, and it even flags the operation as mutating.

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?

It explicitly states when each outcome applies and what to supply for each: 'intended' means revise the description via create_proposal, 'defect' means name the control in control_id. It also spells out the refusal path (403 with escalation_id unless the delegation policy names drift_intent_decided), tells the agent not to retry, and offers the fallback of raising a drift_intent proposal for a person.

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

Deploy Server

Other Tools