Database migration best practices for schema changes, data migrations, rollbacks, and zero-downtime deployments across PostgreSQL, MySQL, and common ORMs (Prisma, Drizzle, Django, TypeORM, golang-migrate).
84
84%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Quality
Discovery
82%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong description with excellent specificity and trigger term coverage across multiple database and ORM ecosystems. Its main weakness is the absence of an explicit 'Use when...' clause, which would help Claude know precisely when to select this skill. Adding trigger guidance would elevate this from good to excellent.
Suggestions
Add a 'Use when...' clause, e.g., 'Use when the user asks about database migrations, schema evolution, migration rollbacks, or zero-downtime database deployments.'
Consider adding common user phrasings like 'add a column', 'rename table', 'migration file', or 'database versioning' to capture more natural trigger terms.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: schema changes, data migrations, rollbacks, zero-downtime deployments. Also names specific technologies: PostgreSQL, MySQL, Prisma, Drizzle, Django, TypeORM, golang-migrate. | 3 / 3 |
Completeness | Clearly answers 'what does this do' (database migration best practices for schema changes, data migrations, rollbacks, zero-downtime deployments), but lacks an explicit 'Use when...' clause or equivalent trigger guidance, which caps this at 2 per the rubric. | 2 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'database migration', 'schema changes', 'rollbacks', 'zero-downtime', plus specific ORM and database names that users would naturally mention. Good coverage of terms across multiple ecosystems. | 3 / 3 |
Distinctiveness Conflict Risk | The combination of database migrations, specific ORMs, and deployment strategies creates a clear niche. The enumeration of specific tools (Prisma, Drizzle, Django, TypeORM, golang-migrate) makes it highly distinguishable from general database or deployment skills. | 3 / 3 |
Total | 11 / 12 Passed |
Implementation
77%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a strong, highly actionable skill with excellent concrete examples covering multiple databases and ORMs. The safety checklist and anti-patterns table are particularly valuable. The main weakness is its length — at ~250 lines covering 5 different tools plus raw SQL, it would benefit from splitting ORM-specific content into separate reference files to keep the main skill lean and focused on universal migration safety patterns.
Suggestions
Split ORM-specific sections (Prisma, Drizzle, Django, golang-migrate) into separate reference files (e.g., PRISMA.md, DJANGO.md) and link from the main skill to reduce token footprint
Trim the core principles to a more concise format — e.g., bullet points without the explanatory dashes, since Claude understands why these matter
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is generally well-written but is quite long (~250 lines). Some sections like the ORM workflows (Prisma, Drizzle, Django, golang-migrate) include basic CLI commands that Claude likely knows. The core principles section, while useful, could be more terse. However, the SQL examples and anti-patterns table earn their tokens. | 2 / 3 |
Actionability | Excellent actionability throughout — every pattern includes executable SQL or CLI commands with GOOD/BAD comparisons. The Prisma custom SQL migration, Django data migration with batch processing, and golang-migrate file examples are all copy-paste ready with real-world patterns. | 3 / 3 |
Workflow Clarity | The zero-downtime expand-contract pattern is clearly sequenced with explicit phases and a timeline example. The rename column pattern shows numbered steps with clear ordering. The safety checklist provides validation checkpoints before any migration. Batch data migration includes progress tracking and exit conditions. | 3 / 3 |
Progressive Disclosure | The content is well-structured with clear headers and logical grouping, but it's a monolithic file with no references to external files for detailed content. The ORM-specific sections (Prisma, Drizzle, Django, golang-migrate) could each be separate reference files linked from the main skill, keeping the core skill focused on universal patterns and the safety checklist. | 2 / 3 |
Total | 10 / 12 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 — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
Reviewed
Table of Contents