Migrates Spring Boot applications to Boot 4 with Java 25, including related Spring Modulith 2 and Testcontainers 2 upgrade work. Use when the task is a concrete upgrade, dependency transition, starter rename, test-annotation migration, or phased migration plan. Do not use for greenfield project creation or for isolated repository design questions.
95
Quality
100%
Does it follow best practices?
Impact
94%
2.29xAverage score across 8 eval scenarios
Passed
No known issues
Spring Boot 4 dependency and starter migration
Scan before migrating
0%
100%
Phased migration plan
100%
100%
Spring Boot version updated
100%
100%
Java version updated to 25
100%
100%
Web starter renamed
0%
100%
AOP starter renamed
0%
100%
Security test starter updated
0%
100%
Flyway starter added
0%
100%
Jackson class renamed
0%
100%
EntityScan import relocated
0%
100%
Jackson properties updated
0%
100%
MockBean migrated
100%
100%
Without context: $0.6039 · 2m 39s · 21 turns · 24 in / 10,279 out tokens
With context: $1.5109 · 3m 57s · 48 turns · 8,140 in / 15,447 out tokens
Full stack migration with Spring Modulith and Testcontainers
Migration order documented
100%
100%
Spring Boot 4 version
100%
100%
Web starter renamed
0%
100%
Modulith version updated
100%
100%
Event publication schema migration
0%
100%
Testcontainers artifacts renamed
0%
100%
Testcontainers import relocated
0%
100%
Generic type removed
0%
100%
MockBean migrated
100%
100%
Flyway starter added
0%
100%
Java version updated
0%
100%
Testcontainers version updated
100%
100%
Without context: $0.8967 · 3m 36s · 34 turns · 40 in / 13,027 out tokens
With context: $1.7041 · 4m 8s · 45 turns · 8,644 in / 14,480 out tokens
Test annotation migration and MockMvc configuration
SharedTestMocks refactored
100%
100%
Mocks moved to test fields
16%
41%
WebMvcTest MockBean migrated
100%
100%
WebMvcTest import relocated
0%
100%
AutoConfigureMockMvc added
100%
100%
Integration test MockBean migrated
100%
100%
JsonComponent renamed
0%
100%
Web starter renamed
0%
100%
Spring Boot 4 version
100%
100%
Java version updated
100%
100%
Phased approach documented
100%
100%
Scan or analysis first
40%
20%
Without context: $0.7201 · 3m 3s · 25 turns · 28 in / 11,643 out tokens
With context: $2.1102 · 6m 4s · 61 turns · 7,697 in / 22,606 out tokens
Testcontainers 2 and LocalStack API migration
LocalStack Service enum removed
100%
100%
withServices removed
0%
100%
getEndpoint used
0%
100%
PostgreSQL import relocated
0%
100%
LocalStack import relocated
0%
100%
Generic types removed
0%
100%
Testcontainers artifacts renamed
0%
100%
Web starter renamed
0%
100%
MockBean migrated
100%
100%
WebMvcTest import relocated
0%
100%
Spring Boot 4 version
100%
100%
Java version updated
100%
100%
Without context: $0.6496 · 3m 27s · 20 turns · 25 in / 11,830 out tokens
With context: $1.4108 · 4m 29s · 46 turns · 51 in / 16,029 out tokens
Jackson 3 migration and retry resilience annotations
Jackson customizer renamed
0%
100%
JsonComponent renamed
0%
100%
Jackson properties updated
0%
100%
AOP starter renamed
0%
100%
Retry mechanism addressed
50%
100%
Web starter renamed
0%
100%
MockBean migrated
100%
100%
WebMvcTest import relocated
0%
100%
Spring Boot 4 version
100%
100%
Java version updated
100%
100%
Phased approach
100%
100%
Testing phase documented
60%
100%
Without context: $0.5846 · 2m 33s · 22 turns · 27 in / 9,746 out tokens
With context: $1.1488 · 3m 32s · 39 turns · 7,602 in / 12,212 out tokens
Migration output format and classic starters strategy
Migration scope section
100%
100%
Planned phases section
100%
100%
Files expected to change section
100%
100%
Verification section
70%
100%
Phase reporting: what changed
100%
100%
Phase reporting: safe to continue
100%
100%
Classic starters used
0%
100%
Security test starter updated
0%
100%
Jackson properties updated
0%
100%
MockBean migrated
100%
100%
Spring Boot 4 version
100%
100%
Java 25 target
0%
0%
Without context: $0.5433 · 2m 33s · 23 turns · 26 in / 8,575 out tokens
With context: $1.0029 · 3m 43s · 32 turns · 1,513 in / 13,045 out tokens
AOP starter conditional and Boot 4 default behavior changes
AOP starter NOT renamed to aspectj
100%
100%
Health probes default documented
35%
100%
DevTools live reload default documented
100%
100%
Web starter renamed
0%
100%
MockBean migrated
0%
100%
Spring Boot 4 version
100%
100%
Java 25 target
0%
0%
Scan step documented
25%
0%
Phased approach
33%
100%
Phase safety reported
0%
0%
Without context: $0.4779 · 2m 42s · 17 turns · 21 in / 8,792 out tokens
With context: $0.5137 · 2m 3s · 19 turns · 7,581 in / 6,341 out tokens
BootstrapRegistry relocation and Jackson dependency group ID exception
BootstrapRegistry import relocated
0%
100%
BootstrapContext import relocated
0%
100%
jackson-databind group ID updated
0%
100%
jackson-annotations group ID unchanged
100%
100%
WebMvcTest import relocated
0%
100%
MockBean migrated
100%
100%
Web starter renamed
0%
100%
Spring Boot 4 version
100%
100%
Java 25 target
0%
0%
Scan step documented
0%
0%
Without context: $0.5490 · 2m 43s · 24 turns · 27 in / 9,448 out tokens
With context: $0.7438 · 2m 38s · 27 turns · 7,589 in / 9,280 out tokens
0d6b2f9
Table of Contents
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.