CtrlK
BlogDocsLog inGet started
Tessl Logo
PluginPublic

testland/migration-operation-taxonomy

Use for any question about whether a database migration is safe to run in production, including quick ones (is adding a NOT NULL column to a big Postgres table safe?) and after a migration locked a table: rename or drop a column, add a default, index or foreign key, change a type on a large PostgreSQL or MySQL table. Classifies each statement (additive, locking, breaking, data-loss) by lock and rewrite.

Quality

89%

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

Overview
Quality
Evals
Security
Files

Quality

Content

86%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.

A rigorous, highly actionable classification procedure: real taxonomy, verdict rules grounded in cited engine behavior, a fully specified output shape, and a well-organized one-level reference file that verifiably matches its description. Verbatim doc quotes for well-known lock behavior and the absence of an error-recovery loop keep conciseness and workflow clarity just short of the top anchors.

DimensionReasoningScore

Conciseness

Dense and fact-heavy with essentially no filler — version gates (PG 11 constant default, MySQL 8.0.12 INSTANT, the 256-byte VARCHAR boundary) and engine divergences earn their tokens. The over-explanation is confined to verbatim manual quotes for commonly known behavior (plain CREATE INDEX blocking writes, ALTER TABLE's ACCESS EXCLUSIVE conflicting with all modes), which could be trimmed to their operative clauses — more than trivial, less than padded sections.

4 / 5

Actionability

Fully executable guidance throughout: an 8-category table with SQL examples and default severities, per-check verdict rules ('Classify a plain CREATE INDEX on PostgreSQL as category 3: Warning with no size signal, Critical on a large table'), concrete boundary cases ('varchar(100) to varchar(500) crosses the boundary and copies; varchar(300) to varchar(900) does not'), and an exact output table schema with two filled example rows plus a count block.

5 / 5

Workflow Clarity

Steps 1-4 are clearly sequenced with genuine checkpoints: an input gate ('say "unknown" rather than guessing'), 'unverified' size flagging, worst-case multi-engine reporting when the engine is unknown, and an output reconciliation block ('Unclassifiable statements: 0'). It lacks an explicit error-recovery loop — nothing says what to do when a statement fits no category or counts don't reconcile — so it sits below the feedback-loop anchor.

4 / 5

Progressive Disclosure

The single bundle file (references/engine-quick-reference.md) exists and its contents match the body's description of it (consolidated lock/rewrite tables, the three severity-flipping divergences, a full worked classification for PostgreSQL 16 across users/orders/products). It is clearly signaled in a dedicated 'Per-engine quick reference' section, exactly one level deep, with the decision procedure correctly kept inline.

5 / 5

Total

18

/

20

Passed

Description

87%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: explicit 'Use for' trigger guidance with a natural example question, a clear what/when split, and a distinct, hard-to-confuse niche. The only visible gap is a few common synonyms ('schema change', 'downtime') that would broaden natural trigger coverage.

DimensionReasoningScore

Specificity

Names concrete operations ('rename or drop a column, add a default, index or foreign key, change a type') and a concrete action with its outputs ('Classifies each statement (additive, locking, breaking, data-loss) by lock and rewrite'). It stops short of the top anchor because the skill performs a single core verb (classify) rather than multiple distinct actions like the anchor-5 example.

4 / 5

Completeness

Explicitly answers 'what' ('Classifies each statement (additive, locking, breaking, data-loss) by lock and rewrite') and 'when' ('Use for any question about whether a database migration is safe to run in production, including quick ones ... and after a migration locked a table') with concrete trigger scenarios, matching the anchor-5 pattern of both halves with explicit trigger phrases.

5 / 5

Trigger Term Quality

Includes natural phrases users would actually say ('safe to run in production', 'after a migration locked a table', the verbatim example question 'is adding a NOT NULL column to a big Postgres table safe?') plus both 'Postgres' and 'PostgreSQL' and 'MySQL'. A few common variations are missing — 'schema change', 'downtime', 'online DDL' — which keeps it below the comprehensive-synonyms anchor.

4 / 5

Distinctiveness Conflict Risk

Occupies a clear niche — migration-statement safety classification for 'a large PostgreSQL or MySQL table' — with distinct triggers ('after a migration locked a table') and minimal conflict risk; the enumerated operations are framed as classification inputs, not as generic authoring or execution tasks that would overlap other skills.

5 / 5

Total

18

/

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.

Reviewed

On this page