Skip to content

[Release] Publish canonical GitHub Releases and immutable version tags #98

Closed

Description

@KeyffMS

Parent project: #95
Depends on: #96, #82, #83, #84, #85, #91

Objective

Use GitHub Releases as the authoritative, dated publication history for SightAdapt versions and downloadable artifacts.

Acceptance criteria

  • Define the release/tag naming convention, beginning with v0.5.0.50-alpha or the next approved version.
  • Use release titles in the format SightAdapt™ <version>.
  • Include the canonical product description in every release.
  • Include release notes, supported Windows versions, known limitations and upgrade/migration notes.
  • Attach the complete verified Windows archive, checksums, SBOM and legal bundle.
  • Include links to https://aiteracja.pl/sightadapt/, documentation, privacy notice and source code.
  • Make tags immutable after publication except for documented emergency withdrawal procedures.
  • Document prerelease versus stable-release policy.
  • Add a release checklist that verifies CI, manual tests, licenses and artifact hashes.
  • Ensure the website can obtain the current version and download link from GitHub Releases without duplicating binary files.
  • Publish a permanent release-history page linking every version and tag.

Current implementation status — 2026-09-23

PR #150 was merged as cc81bb5d367f563723063bca8c5b160aed8e3c2b and implemented the verified GitHub Release publication path.

Verified evidence:

  • pull-request DCO and full Windows build/release-compliance CI passed;
  • the post-merge main build run 35910802970 passed every build, test, notice, SBOM and final-package gate;
  • the first Publish SightAdapt GitHub Release workflow run 35911089822 passed with publish: false;
  • no GitHub Release was created;
  • no v0.5.0.50-alpha tag was created;
  • the publication workflow now requires an exact successful CI artifact, matching version/tag provenance, the github-release final-package gate, manual Windows smoke acceptance and confirmed GitHub release immutability.

Remaining blockers before first publication

  1. GitHub release immutability is enabled and recorded in release/release-request.json by PR Confirm immutable GitHub Releases gate #151 / commit c33954bb9e9d7cbc4cdcbe91a9974964bb0a4020.
  2. Manual Windows smoke testing was completed and recorded in release/manual-smoke/v0.5.0.50-alpha-2026-09-24.md; PR Accept 0.5.0.50-alpha Windows smoke gate #152 set manualWindowsSmokeAccepted to true.
  3. PR Publish SightAdapt 0.5.0.50-alpha #153 set publish to true; main build run 35972748135 passed and release workflow run 35972996206 published v0.5.0.50-alpha.
  4. GitHub reports the release as immutable, the tag points to f51db2f2a2566bde5994ff654dad04a67300a11a, all required assets are present, and PR Finalize 0.5.0.50-alpha release record #154 updated release history and reset publish to false.

Final publication evidence — 2026-09-24

  • Release: https://github.com/KeyffMS/SightAdapt/releases/tag/v0.5.0.50-alpha
  • Release ID: 395462798
  • Title: SightAdapt™ 0.5.0.50-alpha
  • Status: prerelease
  • GitHub immutable release state: true
  • Tag: v0.5.0.50-alpha
  • Tag target: f51db2f2a2566bde5994ff654dad04a67300a11a
  • Main build run: 35972748135 — passed
  • Release workflow run: 35972996206 — passed
  • Official archive: SightAdapt-0.5.0.50-alpha-win-x64.zip
  • Archive SHA-256: c6dc5ba5c0356c84b32a74d298015d63158c57886b835e411da0b60f306fd711
  • Published alongside SHA256SUMS.txt, schema-3 compliance report, SPDX SBOM, dependency/license reports, MIT License, .NET notices, third-party notices and privacy notice.
  • PR Finalize 0.5.0.50-alpha release record #154 recorded the published release in docs/RELEASE-HISTORY.md and disarmed the one-shot publication request by restoring publish: false.

GitHub Releases are now the authoritative binary source for this version.

Activity

  1. self-assigned this
    on Jul 27, 2026
  2. modified the milestone: 0.5.0.50 on Jul 28, 2026
  3. KeyffMS commented on Jul 30, 2026

    @KeyffMS
    OwnerAuthor

    Release-gate dependency update

    PR #144 completed #82 and #91 and introduced the reusable maintained package entry point:

    tools/new-verified-release-package.ps1

    When implementing this Issue, the GitHub Release workflow must:

    • change github-release from planned to maintained in release/distribution-channels.json;
    • require an immutable tag matching refs/tags/<tag>;
    • produce or consume the exact verified portable ZIP through the reusable entry point;
    • publish the matching schema-3 compliance report alongside the ZIP;
    • verify source commit/tag/workflow provenance and per-file staged/archive SHA-256 equality;
    • avoid rebuilding or repackaging different bytes after verification.

    The current final gate deliberately rejects github-release until these requirements are implemented.

  4. 1 remaining item

  5. KeyffMS commented on Sep 24, 2026

    @KeyffMS
    OwnerAuthor

    Final post-release verification completed on 2026-09-24.

    • current main: 84ee2f00acf9dbd3ca5b1d11a8311283d62b9de7
    • finalization main build 35973408352: success
    • post-finalization release workflow 35973630405: success with publish: false (no duplicate publication)
    • release v0.5.0.50-alpha: published prerelease, immutable: true
    • immutable tag target remains f51db2f2a2566bde5994ff654dad04a67300a11a
    • all 13 expected release assets are uploaded
    • official ZIP SHA-256 remains c6dc5ba5c0356c84b32a74d298015d63158c57886b835e411da0b60f306fd711
    • release request is safely disarmed again with publish: false
    • manual Windows smoke and release-immutability gates remain recorded as accepted

    No further work remains in #98.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions