From 9440c651b6d1e744fca8988e026a5229c67174f0 Mon Sep 17 00:00:00 2001 From: Dylan Garvis Date: Sat, 1 Aug 2026 16:06:07 -0400 Subject: [PATCH] docs(design): verify immutable release policy --- design/log.md | 1 + design/us-016-automated-releases.md | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/design/log.md b/design/log.md index 30842bf..a20b567 100644 --- a/design/log.md +++ b/design/log.md @@ -2,6 +2,7 @@ ## 2026-08-01 +* **Verify**: Confirmed `v1.1.1` left all pre-existing `latest` digests unchanged while publishing versioned artifacts. * **Refine**: Removed mutable `latest` publication so all deployable artifacts use explicit semantic versions. * **Verify**: Confirmed the `v1.1.0` Discord bot image and matching web, migration, and Velocity artifacts. * **Extend**: Added a releasable Discord bot image and a dependency-free web health endpoint for Kubernetes deployment. diff --git a/design/us-016-automated-releases.md b/design/us-016-automated-releases.md index 51fe8b2..ac13c77 100644 --- a/design/us-016-automated-releases.md +++ b/design/us-016-automated-releases.md @@ -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:56:39Z +timestamp: 2026-08-01T20:05:49Z story_id: US-016 -status: implemented +status: verified --- # User Story @@ -23,7 +23,7 @@ As a platform operator, I want automated validation and semantic releases, so th - [x] Releases publish semantically versioned web runtime images to the Gitea registry. - [x] Releases publish semantically versioned Discord bot images to the Gitea registry. - [x] Releases publish semantically versioned migration images that run versioned Drizzle migrations. -- [ ] Releases do not publish mutable container tags such as `latest`. +- [x] Releases do not publish mutable container tags such as `latest`. - [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. @@ -38,7 +38,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. 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 the published semantic-version tags. Release `v1.1.0` also publishes resolvable versioned web, Discord bot, and migration manifests and a public Velocity JAR whose metadata reports `1.1.0`. Pull-request commitlint configuration is present; its conditional execution will be exercised by the first pull request. +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 the published semantic-version tags. Release `v1.1.0` also publishes resolvable versioned web, Discord bot, and migration manifests and a public Velocity JAR whose metadata reports `1.1.0`. Release `v1.1.1` published immutable semantic-version tags only; prior `latest` digests remained unchanged. Pull-request commitlint configuration is present; its conditional execution will be exercised by the first pull request. # Related Stories