What Changed

Our GitHub Actions jobs now run on Blacksmith runners instead of GitHub's own. The machine size is the same, 2 vCPU. Blacksmith's wizard wrote the pull request, we added one follow-up for the two Turbo jobs, and both merged on October 22.

Jobs finish a quarter to a third faster. We compared the two weeks before the move with the first three days after, skipping the cold first run.

Most of that comes from cache. Blacksmith keeps the cache next to the runners, so restoring the pnpm store and checking out the repo each take about half the time. Its cached checkout action handles the second part. Pickup is a few seconds slower, and the faster run makes up for it.

GitHub Actions has been unreliable for the last few weeks. GitHub's incident history lists ten Actions incidents in October so far, five of them critical. Every one of them held up our checks, and we merge many changes a day, so the delays added up fast. This was a change we had to make.

Blacksmith doesn't fix all of that. GitHub still schedules the jobs, so a GitHub Actions outage can still hold a check up. What it does fix is everything after scheduling, the machines and the cache, and that's where our time was going.