ci(release): honor dry_run=false on manual dispatch; correct a download-artifact pin - #63
Merged
Merged
Conversation
…ad-artifact pin The attest and publish steps were conditioned on github.ref_type == 'tag' in addition to DRY_RUN, so a manual dispatch with dry_run=false built everything but uploaded nothing. The workflow's only triggers are tag pushes and manual dispatch, and DRY_RUN already evaluates to false on tag pushes, so the ref_type clause is redundant there and only prevented the documented dry_run=false path from working. Removing it lets a manual dispatch (still gated by the release environment approval) publish; all registry legs skip already-existing files and versions, so such a run is idempotent and can add newly supported platform wheels to 0.1.0-alpha.4 (PR #57) on PyPI. Also correct the actions/download-artifact pin in the python job to the actual v8.0.1 commit 3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c (resolved from the upstream repository via the GitHub API; it is the same pin the typescript and dotnet jobs use). The previously merged SHA does not exist upstream, which would make the python job fail at action resolution. Signed-off-by: MohammadHaroonAbuomar <40180927+MohammadHaroonAbuomar@users.noreply.github.com>
MohammadHaroonAbuomar
requested a review
from Caitie McCaffrey (CaitieM20)
as a code owner
August 4, 2026 19:07
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Two release-pipeline fixes needed to append the new multi-platform Python wheels (#57) to the already-published PyPI release 0.1.0a4:
Honor
dry_run=falseon manual dispatch. Every attest/publish step was conditioned ongithub.ref_type == 'tag'in addition toDRY_RUN, so aworkflow_dispatchwithdry_run=falsebuilt everything but uploaded nothing. The workflow's only triggers are tag pushes and manual dispatch, andDRY_RUNalready evaluates tofalseon tag pushes, so theref_typeclause only blocked the documented non-dry dispatch path. A non-dry dispatch remains gated by thereleaseenvironment approval, and every registry leg is idempotent (PyPIskip-existing, crates sparse-index probe, npmnpm viewprobe, NuGet--skip-duplicate), so re-runs and appends are safe.Correct the
actions/download-artifactpin in thepythonjob. The SHA merged in ci(python): publish wheels for supported platforms #57 (3e5f45b2cfb9172054f4087a40e8e0b5a5461e7c) does not exist upstream; the job would fail at action resolution. Replaced with the real v8.0.1 commit3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c, resolved viagh api repos/actions/download-artifact/git/ref/tags/v8.0.1— the same pin thetypescriptanddotnetjobs already use.The header comment and the
dry_runinput description are updated to match the actual semantics.Why now
PyPI
agent-hooks-sdk0.1.0a4 ships only a manylinux x86_64 wheel + sdist; macOS and Windows users build from source, which blocks microsoft/agent-framework#7515.sdk/pythonandsdk/rustare unchanged sincev0.1.0-alpha.4and every version surface onmainstill reads 0.1.0-alpha.4 (scripts/check-version-consistency.pypasses), so a non-dry dispatch of this workflow onmainwill build the missing a4 wheels and append them to the existing release.Verification
actionlintv1.7.12 (same pin + checksum as CI): clean.scripts/check-version-consistency.py:version surfaces agree: 0.1.0-alpha.4.--compatibility pypioff-Linux is validated and then filtered out (resolve_platform_tagsinsrc/build_context/builder.rs), so the never-yet-exercised macOS/Windows wheel legs from ci(python): publish wheels for supported platforms #57 are sound.