Release checklist¶
Hand-checkable list. Run top to bottom before tagging.
Code¶
-
git statusclean onmaster -
./gradlew clean buildgreen -
./gradlew testgreen (114+ tests) -
mythicrod-paper/build/libs/MythicRod-Paper-<version>.jarexists -
mythicrod-spigot/build/libs/MythicRod-Spigot-<version>.jarexists - No
System.out,System.err,printStackTrace, TODO, FIXME, or em dash in the tracked tree (./scriptsnot present; use ripgrep) -
paper-plugin.ymlmatches latest Paper API generation
Live servers¶
- Paper server starts cleanly with the new jar
- Folia server starts cleanly with the new jar
-
mythicrod statusruns on both -
mythicrod reloadruns on both -
mythicrod drops preview minecraft:oceanruns on both - Player-only commands fail cleanly from console
- No exceptions in the server log during shutdown
Locales¶
-
BundledLocaleParityTestgreen -
LanguageFileLoader.BUNDLED_LANGSlists every bundled locale - Crowdin shows en_US as source
- Crowdin shows ja_JP under translations
Docs¶
-
CHANGELOG.mdhas the new release entry at the top -
README.mdversion badge points at the upcoming tag -
docs/index.mdversion-targets table updated -
docs/release.mdmatches the workflows - All Pages workflow links resolve
Secrets¶
-
HANGAR_API_TOKENexists -
MODRINTH_TOKENexists and passes the probe -
CROWDIN_PERSONAL_TOKENexists -
CROWDIN_PROJECT_IDvariable exists -
SONAR_TOKENexists
Tag and push¶
Three workflows fire in parallel:
Build and Releasecreates the GitHub releasePublish to Hangaruploads the Paper jarPublish to Modrinthuploads the Paper jar
After publish¶
- GitHub release page lists the jar +
.sha256 - Hangar version page is live
- Modrinth version page is live
- Update
docs/index.mdversion-targets table to the next planned version