Make stable release promotion copy and verify asset bytes #1580

Merged
coilysiren merged 1 commit from issue-1575 into main 2026-07-28 03:07:39 +00:00
Member

This updates stage-two release promotion so the workflow first fetches and verifies the staged draft bytes, then uploads the verified files, then reads the stable release back before publication. The GitHub mirror continues to consume the already-verified dist set.

  • Added scripts/promote-draft-assets.sh and scripts/verify-release-assets.sh.
  • Wired .forgejo/workflows/release.yml through the new helpers.
  • Expanded release contract tests for metadata-on-download Forgejo responses and failure modes.

Tests:

  • go test ./scripts -run 'TestReleasePipelineUsesDraftArtifacts|TestForgejoReleaseAssetHelperReadsRawAssetBody|TestForgejoReleaseAssetHelperPassesMultilineBodiesThrough|TestPromoteDraftAssetsVerifiesAndStagesRawBytes|TestPromoteDraftAssetsRejectsBadDraftPayloads|TestVerifyReleaseAssetsReadsBackStableBytes'
  • make vet
  • make lint
  • pre-commit run --all-files

make test still fails in pre-existing cmd/ward tests unrelated to this release path.

closes #1575

This updates stage-two release promotion so the workflow first fetches and verifies the staged draft bytes, then uploads the verified files, then reads the stable release back before publication. The GitHub mirror continues to consume the already-verified `dist` set. - Added `scripts/promote-draft-assets.sh` and `scripts/verify-release-assets.sh`. - Wired `.forgejo/workflows/release.yml` through the new helpers. - Expanded release contract tests for metadata-on-download Forgejo responses and failure modes. Tests: - `go test ./scripts -run 'TestReleasePipelineUsesDraftArtifacts|TestForgejoReleaseAssetHelperReadsRawAssetBody|TestForgejoReleaseAssetHelperPassesMultilineBodiesThrough|TestPromoteDraftAssetsVerifiesAndStagesRawBytes|TestPromoteDraftAssetsRejectsBadDraftPayloads|TestVerifyReleaseAssetsReadsBackStableBytes'` - `make vet` - `make lint` - `pre-commit run --all-files` `make test` still fails in pre-existing `cmd/ward` tests unrelated to this release path. closes #1575
fix(release): verify promoted release assets
All checks were successful
test / test (pull_request) Successful in 49s
3f86587ad2
closes #1575
Sign in to join this conversation.
No reviewers
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
coilyco-flight-deck/ward!1580
No description provided.