Skip to content

feat: release workflow with SHA256 checksums + fix Python CI#349

Closed
Spinulosa1111 wants to merge 1 commit into
nextlevelbuilder:mainfrom
Spinulosa1111:feat/release-workflow
Closed

feat: release workflow with SHA256 checksums + fix Python CI#349
Spinulosa1111 wants to merge 1 commit into
nextlevelbuilder:mainfrom
Spinulosa1111:feat/release-workflow

Conversation

@Spinulosa1111

Copy link
Copy Markdown
Contributor

Summary

  • release.yml — New workflow triggered on v*.*.* tags: builds the CLI with Bun, packages a release ZIP, computes a checksums.sha256 file with sha256sum, and uploads both as GitHub Release assets. Completes the integrity story end-to-end (the CLI already verifies magic bytes and logs SHA256 on download).
  • python-package-conda.yml — Replaced broken Conda workflow (depended on environment.yml that doesn't exist) with a clean pytest runner scoped to scripts/** changes on main and PRs.

Test plan

  • Push a v2.5.1 tag → confirm release is created with a .zip and checksums.sha256 asset
  • sha256sum -c checksums.sha256 against the downloaded ZIP should print OK
  • Open a PR touching src/ui-ux-pro-max/scripts/ → Python CI job runs and passes

release.yml:
- Triggers on v*.*.* tags
- Builds CLI with Bun
- Packages a release ZIP (excludes .git, node_modules, dist, __pycache__)
- Computes SHA256 checksum with sha256sum
- Publishes both ZIP and checksums.sha256 as GitHub Release assets
  using softprops/action-gh-release@v2

python-package-conda.yml:
- Replaced broken Conda-based workflow (required environment.yml that
  does not exist) with a clean pytest runner
- Scoped to push/PR on main when scripts/** changes
- Runs: python -m pytest src/ui-ux-pro-max/scripts/tests/ -v

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

@mrgoonie mrgoonie left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary: This adds a tag-triggered release workflow and replaces the broken Conda workflow with a pytest workflow. The release direction is useful for the npm/release gap, but this version is not safe to merge because the new Python workflow points at a test directory that does not exist on main.

Risk level: Medium

Mandatory gates:

  • Duplicate/prior implementation: overlap found with the release/package queue (#348, #353), but this PR covers a distinct release workflow piece.
  • Project standards: checked current workflow/package layout; no existing release workflow is present.
  • Strategic necessity: clear value, because #353 shows the project needs a reliable release path.
  • CI/checks: missing/not run on this PR.

Findings:

  • Important: .github/workflows/python-package-conda.yml now runs python -m pytest src/ui-ux-pro-max/scripts/tests/ -v, but current main has no src/ui-ux-pro-max/scripts/tests/ directory or pytest config. That means any PR touching src/ui-ux-pro-max/scripts/** will fail with “file or directory not found” instead of giving useful validation. Either add the tests in this PR, point the workflow at an existing test path, or keep the workflow disabled until the test harness exists.
  • Important: .github/workflows/release.yml packages the whole repository after building cli, but excludes every dist path (--exclude "*/dist/*"). Because cli/package.json exposes dist/index.js as the executable and the release step just built cli/dist, the generated release ZIP likely omits the built CLI binary. The release artifact should include the files users/installers need, or explicitly package from a staged directory after verifying the expected contents.

Verdict: REQUEST_CHANGES

@mrgoonie mrgoonie added agent:github-maintain Processed by github-maintain automation pr:reviewed PR reviewed by maintain workflow pr:changes-requested Maintain review requested changes labels Jun 20, 2026
@ia-abatista

Copy link
Copy Markdown
Contributor

Recommend closing, @mrgoonie. The release workflow and npm publish path are superseded by merged #375 (semantic-release) and #384 (npm publish).

@mrgoonie

Copy link
Copy Markdown
Contributor

Cron maintainer follow-up: closing this PR as superseded rather than keeping it in the review queue.nnEvidence:n- The release automation path has already landed via #375 (semantic-release) and #384 (npm publish on release).n- Current main also includes later release/install fixes and tags through v2.8.5, including #387 for installing all seven skills.n- This PR is still merge-conflicted (mergeStateStatus=DIRTY) and its original release workflow/checksum approach is no longer the active source of truth.nnDecision: closed / superseded. If anything from this branch is still needed, please reopen as a narrow PR against current main with a specific gap not covered by #375/#384/#387.

@mrgoonie mrgoonie closed this Jun 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent:github-maintain Processed by github-maintain automation pr:changes-requested Maintain review requested changes pr:reviewed PR reviewed by maintain workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants