Skip to content
cccskills
FreePublished on GitHub

db-migration

Writes a Flyway database migration for this project following the team's rules for naming, editing and renaming, so migrations from different developers don't collide and deployed databases stay valid. Use whenever a change needs a new table, column, index or data fix, or the user mentions a schema change or migration.

The English summary is being prepared. Showing the original description.

a-pavithraa/springboot-skills-marketplace80 stars(GitHub 80 + cccskills 0)

Run score Not tested

See how to install

Files included (1)

  • SKILL.md1.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Write a database migration

Migrations live in src/main/resources/db/migration.

  1. Follow the naming the folder already uses. In a folder with no migrations yet, use V<yyyyMMddHHmm>__<what_it_does>.sql in UTC: unlike V7, V8, timestamps don't collide when two developers add a migration on different branches. With numbered names, take the next number after the highest one on the main branch, and renumber yours if someone merges first.
  2. Never edit a migration that is on the main branch. It may already have run on a shared database, and Flyway fails validation when the checksum changes. Write a new migration instead.
  3. Make destructive changes in two releases. To rename or drop a column, first add the new column and write to both, and drop the old one in a later migration once no running version reads it.
  4. Keep each migration to one purpose. Put data fixes in their own file, and make them safe to run on a database where the fix is already done.
  5. Don't let Hibernate create the schema: spring.jpa.hibernate.ddl-auto stays validate or none.
  6. Run ./mvnw verify. If the project has Testcontainers integration tests, they apply every migration to a real database; if it has none, say that the migration is untested.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Adds a new application module to this Spring Modulith project with the package layout the ModuleBoundariesTests gate expects, and a module-scoped integration test. Use when the user asks for a new module, bounded context, or feature area that doesn't belong in an existing module.

The English summary is being prepared. Showing the original description.

a-pavithraa/springboot-skills-marketplace80Updated Oct 27, 2026

Use when asked to review, check or diagnose Spring Boot code: a pull request, diff, module or file before it merges; a slow endpoint or query (N+1, unbounded reads, JPA and Hibernate performance); security, JSpecify null-safety, architecture boundaries or Boot 4 migration risks in existing code; or whether the tests would catch real bugs, proving each finding by running it. Not for Kotlin-only code, non-Spring frameworks, or generic review advice without code context.

The English summary is being prepared. Showing the original description.

a-pavithraa/springboot-skills-marketplace80Updated Oct 27, 2026

Use when starting a new Spring Boot project or service: scaffolding or bootstrapping a backend, REST API, microservice or modular monolith; choosing how to structure it (layered, package-by-module, modular monolith, tomato, DDD-hexagonal); selecting Spring Boot 4 features; generating the base project with progen or Spring Initializr; or applying the bundled templates and references in this skill. Not for migrating existing projects or for isolated JPA/repository work without broader project-creation context.

The English summary is being prepared. Showing the original description.

a-pavithraa/springboot-skills-marketplace80Updated Oct 27, 2026

Use when a team wants every developer's coding agent (Claude Code or Codex) to follow the same rules on a Maven Spring Boot 4 repository: setting up AGENTS.md, guardrails, shared agent settings, or build and CI checks that agents must pass before code merges. It adds ./mvnw verify gates that fail on null-safety bugs (NullAway with JSpecify), module-boundary breaches (Spring Modulith), unknown or deprecated Boot property keys, Spring mistakes that compile (ArchUnit) and unformatted code, Claude Code hooks that run those gates before a turn ends, and a CI workflow.

The English summary is being prepared. Showing the original description.

a-pavithraa/springboot-skills-marketplace80Updated Oct 27, 2026

Use when upgrading an existing Spring Boot application, for example from Boot 3.x to Boot 4 or to the latest Spring Boot and Java: dependency transitions and starter renames, test annotations such as @MockBean to @MockitoBean, Jackson 3 issues, Spring Modulith 2 or Testcontainers 2 upgrades, code that stops compiling after a version bump, or planning a phased migration. Not for greenfield project creation or isolated repository design.

The English summary is being prepared. Showing the original description.

a-pavithraa/springboot-skills-marketplace80Updated Oct 27, 2026

Use when writing or adding tests for Spring Boot code at a service's edges: HTTP clients that call other services (WireMock: 4xx and 5xx responses, timeouts, retries), Kafka or RabbitMQ listeners (redelivery, poison messages, dead-letter topics), events published to other services, or full-API tests against real databases with Testcontainers; also when a Boot 4 test needs the right imports, slices or container wiring. Supplies verified Boot 4.1 templates and the framework traps that make such tests pass without proving anything. Not for reviewing existing tests (see code-reviewer) or Boot 3 to 4 test migration (see springboot-migration).

The English summary is being prepared. Showing the original description.

a-pavithraa/springboot-skills-marketplace80Updated Oct 27, 2026

See all skills by a-pavithraa

Report a problem with this skill