CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

principle-migrate-callers-then-delete-legacy-apis

Apply when introducing a new internal API while old callers still exist. Migrate callers and delete the old API in the same wave instead of preserving compatibility layers.

68

Quality

85%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

80%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An efficient, well-structured instruction-only principle skill: concise, actionable directives with clear applicability boundaries and no bundle-file overhead. The main gap is the absence of a verification step before the destructive delete-the-old-API action, which caps workflow clarity.

Suggestions

Add a verification checkpoint before deletion, e.g., 'Before deleting the old API, grep the codebase for remaining references (e.g., `rg "old_api_name"`) and confirm zero hits.'

Add a post-migration validation step such as 'Run the full test suite after migration; the tests should now assert the new contract.'

Give one concrete hint for the caller-inventory step (e.g., search for call sites of the old API's public symbols) to make the first step of the sequence executable rather than implied.

DimensionReasoningScore

Conciseness

The 24-line body is lean and assumes Claude's competence: terse rule bullets, explicit applicability conditions, and a single rationale line — no explanations of concepts Claude already knows and no padding to trim, matching the anchor-5 example.

5 / 5

Actionability

Guidance is concrete and directive ("Inventory callers, migrate them, and delete the old API immediately"; "Update tests to assert the new contract, and delete tests that only protect pre-refactor implementation details"), but minor gaps remain — no concrete technique for inventorying callers (e.g., grep for call sites) and no example of what a time-boxed adapter looks like, so it falls short of anchor 5.

4 / 5

Workflow Clarity

A rough sequence exists (inventory callers → migrate → delete old API, update tests), but there is no validation checkpoint such as verifying zero remaining references to the old API or running the test suite before deletion. Migrating all callers is a batch operation and deleting an API is destructive, so per the rubric cap a destructive/batch skill without validation cannot score above 3.

3 / 5

Progressive Disclosure

The skill is under 50 lines, needs no external references (none exist in the bundle), and is well-organized into clearly labeled sections (Rule, When this applies) — the rubric's simple-skill exception for a 5 applies.

5 / 5

Total

17

/

20

Passed

Description

83%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it explicitly answers both what the skill does and when to apply it, using concrete, natural refactoring vocabulary in third person with no padding. The only weakness is modest keyword coverage — a few common synonyms (deprecate, legacy, backwards compatibility) are absent.

DimensionReasoningScore

Specificity

The description lists several concrete actions — "migrate callers", "delete the old API in the same wave", "instead of preserving compatibility layers" — which goes beyond the 1-2 actions of anchor 3, but coverage is not comprehensive (e.g., test updates are only covered in the body), so it does not reach anchor 5.

4 / 5

Completeness

Both parts are explicit: the what ("Migrate callers and delete the old API in the same wave instead of preserving compatibility layers") and a concrete when ("Apply when introducing a new internal API while old callers still exist"), matching the anchor-5 pattern rather than anchor 4's less specific 'when'.

5 / 5

Trigger Term Quality

It includes natural phrases developers actually use — "new internal API", "old callers", "compatibility layers", "migrate callers" — giving good keyword coverage, though common synonyms like "deprecate", "legacy", or "backwards compatibility" are missing, keeping it below anchor 5.

4 / 5

Distinctiveness Conflict Risk

It occupies a clear niche — same-wave API migration and legacy deletion versus compatibility layers — but a principle this general could overlap with closely related refactoring/cleanup skills, matching anchor 4 ("mostly distinct; minor overlap risk") rather than anchor 5's minimal conflict risk.

4 / 5

Total

17

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

adamsardo/pstack-claude

Path

plugins/pstack/skills/principle-migrate-callers-then-delete-legacy-apis/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.