Skip to main content
Glama

Roll back repository cleanup

codeinspectus_rollback_cleanup
Destructive

Restore an applied V3.3 cleanup from its managed checkpoint after explicit confirmation, and block rollback if files changed since cleanup.

Instructions

Restore an applied V3.3 cleanup from its managed checkpoint after explicit confirmation. Rollback refuses to overwrite files or cleaned copies that changed after cleanup.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cleanup_idYes
confirm_rollbackYesMust be true after reviewing the exact cleanup record to restore.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetYes
outcomeYes
plan_idYes
checkpointYes
cleanup_idYes
operationsYes
started_atYes
limitationsYes
completed_atYes
verificationYes
audit_log_pathYes
schema_versionYes
repository_trust_afterYes
repository_trust_beforeYes
repository_trust_changesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv3.3.1

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and readOnlyHint=false, so the safety profile is covered. The description adds real value beyond that by disclosing the guard behavior: rollback refuses to overwrite files or cleaned copies modified after cleanup, and it operates from a managed checkpoint.

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

Conciseness5/5

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

Two sentences, zero filler, and the action is front-loaded before the safety caveat. Every clause carries information an agent needs.

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?

An output schema exists so return values need not be explained, and annotations cover the destructive profile. The description covers the confirmation requirement and the overwrite-protection behavior; it could still note required permissions or what happens to the checkpoint after rollback, but it is nearly complete for a two-parameter tool.

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

Parameters3/5

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

Schema coverage is 50%; confirm_rollback is documented in the schema, but cleanup_id only carries a regex pattern with no explanation. The description's mention of 'explicit confirmation' loosely maps to confirm_rollback but adds no syntax or format detail for cleanup_id, so it only partially compensates for the gap.

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

Purpose4/5

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

States a specific verb (restore) and resource (an applied V3.3 cleanup from its managed checkpoint), which is clearly the inverse of the sibling apply_cleanup. It does not explicitly name a sibling to differentiate against, but the scope is unambiguous.

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

Usage Guidelines3/5

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

The phrase 'after explicit confirmation' implies the precondition for invoking it, but there is no guidance on when to roll back versus reapplying a cleanup, nor on prerequisites such as the cleanup still being in an applied state. Usage is implied rather than stated.

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