Rails 7.1 to 8 with AI: A Real Client Upgrade Case Study

How a client's EMR application was moved from EOL Rails 7.1 to Rails 8 in days using the Rails Upgrade Skill for Anthropic's Claude.

A client of mine runs a Ruby on Rails application in the electronic medical records space — an EMR, with all the regulatory weight that implies. It was on Rails 7.1, a version that had already reached end-of-life. Last month we moved it to Rails 8, in two steps and about a week of elapsed time, using the Rails Upgrade Skill for Claude I had introduced a couple of weeks earlier.

Image: Upgrade to 7.2 summary report

The sequence was: upgrade to Rails 7.2, deploy it to production, and a few days later make the jump to Rails 8.

To be honest, the changes to the existing codebase were minor:

  • A few broken specs.
  • One gem that hadn’t been updated for recent Rails versions.
  • Two small issues that were not caught by the test suite but were easily fixed before they became real-world problems.

Currently, I even have a Work-In-Progress (WIP) Pull Request for the Rails 8.1 version of this application. It’s blocked only because the Mongoid gem doesn’t yet support the latest released gems in Rails 8.1, but the core upgrade code is ready in the repository. Once again, the skill performed most of the work; we’re just waiting for the gem to be released to continue the upgrade.

The Real Power of the Skill 💡

The skill doesn’t just provide a high-level analysis; it gives clear, actionable guidance on the changes between versions. This includes:

Image: Files changes report

  • Step-by-step actions with a tailored script to check for breaking changes.
  • Precise instructions for creating a branch and running necessary commands.
  • Exactly what files to modify and the rationale behind each change.

Crucially, it makes merging configuration-specific changes much easier—a task that is often painful when using the rails app:update command.


If you want the mechanics of the skill itself — what it checks, how it guides the migration, and how to adapt it to your own codebase — read Upgrading Rails applications with an AI skill. The repository lives at github.com/maquina-app/rails-upgrade-skill.

For a second look at the same problem from the code-quality side, see Testing GLM-5.2 on a real Rails upgrade, where I ran the upgrade to Rails 8.1 on a different model and moved the app to SQLite along the way.