Version migrations
Sequence the jakarta move. Do not freeze production.
The obvious approach — stop features, upgrade everything, cut over in one weekend — is how Java migrations become rewrites nobody planned for.
We audit the dependency tree first, because a library that never made the javax to jakarta switch blocks the whole Spring Boot 3 upgrade. That audit tells you whether this is a three-week job or a three-month one.
Domain logic stays separable from the framework shell, so next year's LTS upgrade is a planned effort rather than a quarter-long freeze.