Publish versioned web Docker releases #4

Merged
erik merged 1 commit from task-2901494a-web-docker-releases into main 2026-07-27 07:43:42 -05:00
Owner

Summary

  • publish tag-triggered multi-platform Docker releases to evcraddock/erikvancraddock-web
  • embed the release version in /health through APP_VERSION
  • add a guarded project release skill and release documentation
  • commit the generated src/styles/public.css output

Verification

  • npm run build (working tree remains clean)
  • npm run lint
  • npm test (304 tests)
  • local Docker build with APP_VERSION=1.2.3
  • container /health smoke test returned version 1.2.3
  • workflow structure, tag regex, and skill frontmatter validation

No release tag or image was published.

Task: task-2901494a

## Summary - publish tag-triggered multi-platform Docker releases to `evcraddock/erikvancraddock-web` - embed the release version in `/health` through `APP_VERSION` - add a guarded project release skill and release documentation - commit the generated `src/styles/public.css` output ## Verification - `npm run build` (working tree remains clean) - `npm run lint` - `npm test` (304 tests) - local Docker build with `APP_VERSION=1.2.3` - container `/health` smoke test returned version `1.2.3` - workflow structure, tag regex, and skill frontmatter validation No release tag or image was published. Task: task-2901494a
Add guarded versioned web releases
All checks were successful
CI / build-lint-test (push) Successful in 44s
00e96801e1
Author
Owner

Review update

  • PR: #4 is open and Forgejo CI run #5 passed.
  • Result: approved.
  • Scope: tag-only release workflow, Docker version propagation, project release skill, release documentation, and generated CSS are aligned with the task.
  • Verification evidence: build, lint, 304 tests, workflow and skill validation, local Docker build, and a container /health smoke test returning version 1.2.3 all passed. No release tag or image was published.

Acceptance criteria

  • Met: .forgejo/workflows/web-release.yml is limited to push.tags: web-v* and validates semantic release tags.
  • Met: The workflow uses the docker runner, QEMU, and Buildx to push linux/amd64 and linux/arm64 images to evcraddock/erikvancraddock-web.
  • Met: The workflow emits semantic version, UTC timestamp, and latest image tags.
  • Met: A local image built with APP_VERSION=1.2.3 returned 1.2.3 from /health.
  • Met: Existing automated version tests cover explicit runtime metadata and package/default fallback behavior; all 304 tests passed.
  • Met: .pi/skills/web-release/SKILL.md has valid frontmatter and enforces repository, validation, approval, and monitoring gates.
  • Met: The release skill blocks when src/styles/public.css or another generated file changes during validation.
  • Met: docs/web-release.md documents versioning, image tags, secrets, the release skill, and non-publishing validation.
  • Met: Build, lint, tests, a local Docker build, and the /health smoke test passed without publication; the committed generated CSS remains clean after rebuild.

Findings

  • Blocking issues: none.
  • Warnings: none.
  • Final verdict: approved.
  • Follow-up: wait for explicit human merge approval.
### Review update - PR: #4 is open and Forgejo CI run #5 passed. - Result: approved. - Scope: tag-only release workflow, Docker version propagation, project release skill, release documentation, and generated CSS are aligned with the task. - Verification evidence: build, lint, 304 tests, workflow and skill validation, local Docker build, and a container `/health` smoke test returning version `1.2.3` all passed. No release tag or image was published. ### Acceptance criteria - [x] **Met:** `.forgejo/workflows/web-release.yml` is limited to `push.tags: web-v*` and validates semantic release tags. - [x] **Met:** The workflow uses the `docker` runner, QEMU, and Buildx to push `linux/amd64` and `linux/arm64` images to `evcraddock/erikvancraddock-web`. - [x] **Met:** The workflow emits semantic version, UTC timestamp, and `latest` image tags. - [x] **Met:** A local image built with `APP_VERSION=1.2.3` returned `1.2.3` from `/health`. - [x] **Met:** Existing automated version tests cover explicit runtime metadata and package/default fallback behavior; all 304 tests passed. - [x] **Met:** `.pi/skills/web-release/SKILL.md` has valid frontmatter and enforces repository, validation, approval, and monitoring gates. - [x] **Met:** The release skill blocks when `src/styles/public.css` or another generated file changes during validation. - [x] **Met:** `docs/web-release.md` documents versioning, image tags, secrets, the release skill, and non-publishing validation. - [x] **Met:** Build, lint, tests, a local Docker build, and the `/health` smoke test passed without publication; the committed generated CSS remains clean after rebuild. ### Findings - Blocking issues: none. - Warnings: none. - Final verdict: **approved**. - Follow-up: wait for explicit human merge approval.
erik merged commit 85d7dc3198 into main 2026-07-27 07:43:42 -05:00
erik deleted branch task-2901494a-web-docker-releases 2026-07-27 07:43:42 -05:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
erik/erikvancraddock.com!4
No description provided.