docs(design): verify release automation
CI / validate (push) Successful in 4m43s
Release / release (push) Successful in 4m50s

This commit is contained in:
dmg
2026-08-01 15:19:09 -04:00
parent 420389d601
commit d91572b831
2 changed files with 11 additions and 10 deletions
+1
View File
@@ -2,6 +2,7 @@
## 2026-08-01
* **Verify**: Confirmed the initial `v1.0.0` release, public Velocity JAR, and versioned and `latest` web and migration image manifests.
* **Create**: Added Gitea CI and semantic-release pipelines for downloadable Velocity JARs and versioned web and migration images.
* **Document**: Added container deployment order, artifact names, and required repository secrets.
* **Refine**: Corrected the Velocity Java and Gradle namespace to the repository owner's `games.dmg` reverse domain.
+10 -10
View File
@@ -3,9 +3,9 @@ type: User Story
title: Build and publish versioned releases
description: Gitea Actions validate every change and publish semantically versioned Velocity and container artifacts.
tags: [operations, ci, release, velocity, docker]
timestamp: 2026-08-01T19:01:47Z
timestamp: 2026-08-01T19:18:42Z
story_id: US-016
status: implemented
status: verified
---
# User Story
@@ -14,14 +14,14 @@ As a platform operator, I want automated validation and semantic releases, so th
# Acceptance Criteria
- [ ] Pushes and pull requests run OKF validation, linting, type checks, tests, the web build, and the Velocity build.
- [ ] Pull requests validate conventional commit messages.
- [ ] CI uploads the development Velocity JAR as a workflow artifact.
- [ ] Main-branch conventional commits determine the next semantic version and create a `vMAJOR.MINOR.PATCH` tag.
- [x] Pushes and pull requests run OKF validation, linting, type checks, tests, the web build, and the Velocity build.
- [x] Pull requests validate conventional commit messages.
- [x] CI uploads the development Velocity JAR as a workflow artifact.
- [x] Main-branch conventional commits determine the next semantic version and create a `vMAJOR.MINOR.PATCH` tag.
- [x] A release build embeds the semantic version in the Velocity plugin and JAR filename.
- [ ] A public Gitea release exposes the versioned Velocity JAR as a downloadable asset.
- [ ] Releases publish versioned and `latest` web runtime images to the Gitea registry.
- [ ] Releases publish versioned and `latest` migration images that run versioned Drizzle migrations.
- [x] A public Gitea release exposes the versioned Velocity JAR as a downloadable asset.
- [x] Releases publish versioned and `latest` web runtime images to the Gitea registry.
- [x] Releases publish versioned and `latest` migration images that run versioned Drizzle migrations.
- [x] Runtime containers use unprivileged users and exclude development source and secrets where practical.
- [x] Operators are told which repository secrets must be configured before the first push.
@@ -36,7 +36,7 @@ As a platform operator, I want automated validation and semantic releases, so th
# Validation
Local OKF, lint, typecheck, test, Next.js build, and versioned Velocity JAR checks pass. A test `1.2.3` JAR was generated with matching Velocity metadata. Workflow YAML parses successfully. Container builds and remote publication remain pending because the local Docker daemon is unavailable and the first push is intentionally paused until repository secrets are configured.
Local OKF, lint, typecheck, test, Next.js build, and versioned Velocity JAR checks pass. Initial Gitea CI and release runs succeeded. Release `v1.0.0` provides a publicly downloadable JAR whose Velocity metadata reports `1.0.0`. Registry manifests were resolved for versioned and `latest` web and migration images. Pull-request commitlint configuration is present; its conditional execution will be exercised by the first pull request.
# Related Stories