How AI and Automation are Improving the Woo Release Process

Over the past few months, the Woo team has significantly automated and streamlined the WooCommerce core release process. This overhaul improves reliability, reduces human error, leverages advancements in AI, and shortens the time it takes to cut a release — all while improving observability into the release and creating a feedback loop to continue improving this process for future development.

From automated builds to AI-assisted quality checks, every phase of the release has been touched. Below is a detailed breakdown of some of the work completed and where we’re going next.

Documentation and Resources

To provide better transparency and support for the developer community, we’ve focused on improving the quality and accessibility of our documentation. By streamlining how we generate and update crucial resources like release notes, changelogs, and API references, we’ve made it easier for everyone to stay informed about the latest changes and contribute to the project. We started by improving the documentation for the release process iteself.

Better Release Process Documentation

  • Add documentation for building and publishing a WooCommerce Core Release #59573
  • Document the point release flow #59713

The previous release documentation took quite a while to parse and suffered from heavy fragmentation. We maintain a public repo and committed to providing better visibility into our release, both for our community and ourselves. Documentation for the release has been completed revamped and is now public and easily maintainable within our repo. Browse the updated release documentation.

Changelog and Contributor Updates

  • Changelogs are now auto-updated post-release #59090#59562
  • Contributor lists are generated automatically #58151

Changelog and contributor workflows have been further simplified, ensuring that the changes in each release are immediately available to the developer community and that every community contributor is recognized for the work improving WooCommerce.

Updated REST API and Code References

  • Regeneration of API and code references per release: #28
  • Auto-prompts for REST API updates: #58948

One overlooked part of the release process is ensuring that the actual changes to the core codebase are reflected in some of the docs that live outside of the monorepo. In particular, the WC REST API and WooCommerce Code Reference repositories were subject to becoming out of date with the plugin. We’ve added some precautionary checks and build processes to ensure these don’t become stale.

In the future we’re exploring an updated approach to our WC REST API docs to ensure that they’re up-to-date and discoverable.

Release Workflows

The heart of our overhaul focused on automating the core steps of the release process. By introducing structured workflows and moving the entire build process to GitHub, we’ve drastically reduced the manual effort required for each new WooCommerce version.

Release Preparation, Commit, and Clean-Up

  • Builds are created automatically at feature freeze #59305
  • Versioning and branching are verified automatically #58241
  • Feature freeze is now triggered by calendar events #58847

The entire process of preparing, committing, and cleaning up a release is now managed through structured, automated workflows based on our release calendar. Instead of relying on manual actions, a series of automated checks and build processes are now in place to ensure a smooth and reliable release.

For instance, the feature freeze is no longer a manual event; it is now automatically triggered on a pre-defined calendar date, which automatically protects the branch from further feature merges. A new automated system verifies versioning and branching, ensuring that all new releases are correctly numbered and that the project structure is sound before the final build is tagged and pushed.

Automated Backporting (CFEs)

  • Update cherry picking flows and drop CFE process #59048

We’ve simplified and automated the process of back-porting fixes to previous branches to make it easier to get bug fixes in place during a release.

GitHub-Driven Release Build

The release build process has been fully migrated into GitHub Actions. Local tooling, special credentials, and additional access outside of the GitHub repo are no longer needed to cut a release. This ensures the integrity of the build and removes the risk of a person making a mistake during a critical, time-sensitive step.

The ultimate result of these efforts is a streamlined, transparent process where the workflows now include automated tagging as stable and directly handle the process of pushing new releases to WordPress.org, a task that was previously done manually. The move to GitHub Actions has effectively made the release process self-contained and auditable within the repository itself.

Code Quality and AI Experiments

  • Enhanced canonical extension testing workflows #59502
  • New Cursor rules to enforce quality #59601
  • More defensive PR reviews with CodeRabbit #59374
  • Issue tracking and automated trend analysis #59412
  • Experimenting with AI-based critical issue detection #59401

Alongside the release process improvements, we took the opportunity to enhance our quality control measures. We’ve introduced new rules, improved our testing workflows, and began integrating AI into our review process. Currently, the AI reviews are an experimental change that we’ll monitor closely and evaluate for impact.

Overall, these changes help us catch potential issues earlier and maintain a high standard of code quality for all WooCommerce releases.

Updated Release Schedule

In recent releases, you may have noticed that the version we marked stable on WordPress.org was 10.0.2 for the 10.0 branch and 9.9.3 for the 9.9 branch. As a part of the release process we do a staggered rollout to a small percentage of sites in our hosted environments where we have high visibility into any issues that pop up. This allows us to revert quickly when they do and prevent a broader rollout onto sites where we don’t have this level of visibility.

To make this a bit more clearer in our versioning scheme, we’re optimizing our internal testing process to use a final Release Candidate in that final stage, ensuring that the first stable release is .0 to clearly signal our confidence in it’s readiness.

Starting with WooCommerce 10.1, new WooCommerce releases will take place on Tuesdays, with the Monday being reserved for that last phase of testing. We will continue to announce and publish betas (at +1 week and +2 week after feature freeze) and release candidates will be used for final internal checks. You can continue to follow the scheduled releases on the release calendar.

Next Steps

While we’re proud of the progress we’ve made, the work of improving and refining the release process is never truly finished. We’re committed to continuing this evolution, building on the foundation we’ve established. We’re always looking for new ways to make releases smoother and more reliable, and we encourage the contributor community to be part of that journey.


2 responses to “How AI and Automation are Improving the Woo Release Process”

  1. What possesses companies to think telling us they are using AI is an advantage? Less reliable than humans. Can’t tell facts from fiction. Never developed for bug testing. Anyone who knows how these things work can see the BS people are swallowing about AI.

    1. Brian Coords Avatar
      Brian Coords

      Hi Dr Brandt! Thanks for your comment here. Just to clarify, the AI experiment PRs we linked to are only for AI code reviews of PRs (and the codebase generally) and are not replacing our regular human code review and QA processes for WooCommerce.

Leave a Reply

Your email address will not be published. Required fields are marked *