It's the little things that make the craft
There's a class of engineering work that every team knows they should do but often deprioritizes. Library upgrades, dependency removals, build optimizations, framework migrations. The work isn't technically hard. It's just tedious, touches a lot of files, and has a low enough upside that it's far more likely to lose out to feature work when priorities are set.
The blocker was never capability. It was the effort-to-impact ratio. When a Rails or Angular upgrade requires touching dozens of files across the codebase, the time investment makes it impossible to justify against feature work. You'd have to convince yourself it was worth doing, then convince your team, then convince whoever owns the sprint plan. That's a lot of social and mental energy spent before a single line of code changes.
Begging Forgiveness vs Asking Permission
AI tooling lets you have a bias towards action with this kind of work. Try the upgrade. Spike the migration. If it doesn't pan out, you're out an afternoon, not a sprint. Nobody even needs to know 😈.
Worst case, you learn that an approach is a dead end and move on. Best case, that thing that's been rotting in the backlog for six months lands as a PR on Monday morning. When the cost of being wrong is small, trying becomes easy.