--- type: User Story title: "US-001: Build and release the plugin" description: Give maintainers repeatable Purpur builds, automated verification, and versioned Gitea releases. status: done --- # US-001: Build and release the plugin As a **plugin maintainer**, I want repeatable builds and automated releases so that tested, correctly versioned artifacts can be distributed consistently. ## Acceptance criteria - [x] The Gradle project compiles against Purpur API `26.2.build.2618-stable` using a Java 25 toolchain. - [x] Compiler lint warnings fail the build. - [x] Automated JUnit 5 tests run as part of the Gradle check lifecycle. - [x] Pushes and pull requests build and test the plugin in Gitea Actions. - [x] Pull requests validate conventional commit messages. - [x] CI stores a development JAR as a workflow artifact. - [x] Main-branch conventional commits drive semantic versioning. - [x] A successful release builds a versioned JAR and attaches it to the corresponding Gitea release. - [x] Build files, Gradle wrapper, workflows, and release behavior follow `../spigot-base/` where applicable while using Spigot Inventory Helper names and identifiers. ## Related - [User-story catalog](index.md)