developmerge triggers deployment sync tovip-go-mu-plugins-built(.github/workflows/deploy.yml).stagingpush triggers staging release automation (.github/workflows/release-staging.yml).productionpush triggers production tagging + changelog automation (.github/workflows/release-prod.yml).
Release version format: vYYYYMMDD.N.
.github/workflows/create-release-prs.yml creates weekly release PRs on Tuesdays at 11:00 MST:
Production release: vYYYYMMDD.Nfromstagingintoproduction.Staging release: vYYYYMMDD.Nfromdevelopintostaging.
The N suffix increments from existing same-day release PRs and tags. When no vYYYYMMDD.N release exists yet for the day, the scheduled production PR uses .0 and the scheduled staging PR uses .1.
The workflow can also be run manually with workflow_dispatch. Select both, production-release, or staging-release to choose which release PRs to create.
Manual runs are not limited to Tuesday at 11:00 MST. They use the current MST date for the release version and still skip PR creation when a matching open PR already exists or when there are no commits to promote.
The workflow skips PR creation when a matching open release PR already exists or when there are no commits to promote between the selected branches.
The workflow uses GITHUB_TOKEN to create release PRs. Repository Actions settings must allow GitHub Actions to create pull requests, and workflows will not auto-run for PRs opened by GITHUB_TOKEN (trigger via workflow_dispatch if needed).
Before merging release PRs:
git submodule update --init --recursive
composer install
npm install
npm run lint
npm run testAlso verify required CI workflows are green.
- Create PR from
developintostaging. - Title pattern:
Staging release: vYYYYMMDD.N. - Merge after checks pass.
- Confirm
Release - Stagingworkflow completed (PR label updates + changelog publish).
- Create PR from
stagingintoproduction. - Title pattern:
Production release: vYYYYMMDD.N. - Merge after checks pass.
- Confirm
Release - Productionworkflow completed:- tag created/pushed
- GitHub release created
- PR labels updated
- changelog published
- Preferred rollback is a revert PR merged through normal branch flow.
- After a revert, run the same staging -> production promotion process to publish the fix.
- If a production tag already exists for the day, the next release increments the minor suffix automatically.