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