PluginBench
Skill
Pass
Audit score 90

migration

juliusbrussee/caveman

Implement reversible, compatibility-safe transitions for schema, data, API, and dependency migrations with rollback.

What is migration?

This skill guides you through planning and executing migrations that preserve data, support mixed-version operation, and enable safe rollback. Use it whenever you need to change schemas, APIs, protocols, configurations, or dependencies while maintaining system stability and observability.

  • Map current readers, writers, data shape, compatibility window, and ownership before making changes
  • Define both forward and rollback paths explicitly
  • Preserve existing data with destructive steps marked and separately authorized
  • Keep mixed-version operation safe during overlapping rollouts
  • Sequence expand, migrate, verify, then contract phases appropriately
  • Make retries idempotent and partial failures observable

How to install migration

npx skills add https://github.com/juliusbrussee/caveman --skill migration
Claude Code
Cursor
Windsurf
Cline

How to use migration

  1. 1.Map your current state: identify all readers, writers, data shape, compatibility window, and ownership
  2. 2.Define the forward migration path and corresponding rollback path
  3. 3.Plan the expand phase to add new capacity or schema without breaking old readers
  4. 4.Execute the migrate phase to transform existing data
  5. 5.Verify both old and new paths work at required transition stages
  6. 6.Stop after the requested stage passes; do not perform destructive contraction implicitly

Use cases

Good for
  • Database schema changes that must support old and new code simultaneously
  • API versioning transitions where clients upgrade gradually
  • Configuration format migrations with explicit rollback procedures
  • Dependency upgrades requiring data transformation
  • Protocol changes in distributed systems with staged rollout
Who it's for
  • Backend engineers managing production migrations
  • DevOps and infrastructure teams
  • Database administrators
  • System architects planning breaking changes

migration FAQ

When should I use this skill?

Use it for any migration requiring rollback capability or mixed-version operation: schema changes, API versioning, configuration updates, or dependency upgrades in production systems.

What does 'expand, migrate, verify, contract' mean?

Expand adds new capacity or schema; migrate transforms data; verify confirms both paths work; contract removes old code/schema. Stop after your requested stage—don't auto-contract.

How do I handle partial failures?

Make retries idempotent and log partial failure state so you can observe what succeeded and what needs manual intervention.

Can I roll back mid-migration?

Yes. Define your rollback path upfront and keep it executable at each stage. Stop and rollback if verification fails.

What if old and new code must run together?

Plan your compatibility window carefully: expand first to support both versions, then migrate data, then verify both paths work before contracting.

Full instructions (SKILL.md)

Source of truth, from juliusbrussee/caveman.


name: migration description: Implement reversible compatibility-safe transitions. Use for schema, data, API, protocol, configuration, or dependency migrations requiring rollback and preservation proof.

Migration

Map current readers, writers, data shape, compatibility window, and ownership before editing.

  • Define forward path and rollback path.
  • Preserve existing data; make destructive steps explicit and separately authorized.
  • Keep mixed-version operation safe where rollout can overlap.
  • Sequence expand, migrate, verify, then contract when applicable.
  • Make retries idempotent and partial failure observable.
  • Verify old and new paths at required transition stages.

Stop after requested stage passes; do not perform later destructive contraction implicitly.