From c14046110241b32b545a649880fcc0cbc56e8859 Mon Sep 17 00:00:00 2001 From: Chisanan232 Date: Wed, 3 Jun 2026 09:08:42 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=F0=9F=90=9B=20(release):=20Fix=20gh=20rele?= =?UTF-8?q?ase=20download=20--tag=20flag=20=E2=80=94=20tag=20is=20position?= =?UTF-8?q?al?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `gh release download` takes the tag as a positional argument, not a `--tag` flag. The current invocation expands `TAG_ARG=(--tag "$AASM_TAG")` to `--tag v0.0.1-alpha.4` which the CLI rejects with `unknown flag: --tag`. Switch the array to hold the bare tag value so it expands as the positional. When `AASM_TAG` is empty (workflow_dispatch dry-run) the array stays empty and `gh release download` defaults to the latest release. This was the proximate cause of all four wheel-build jobs failing on the v0.0.1-alpha.4 release run (https://github.com/AI-agent-assembly/python-sdk/actions/runs/26855112577). --- .github/workflows/release-python.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release-python.yml b/.github/workflows/release-python.yml index ea3a20a..0fba63a 100644 --- a/.github/workflows/release-python.yml +++ b/.github/workflows/release-python.yml @@ -75,7 +75,7 @@ jobs: # client_payload; workflow_dispatch (dry-run) leaves it empty # and falls back to the latest release. TAG_ARG=() - if [ -n "$AASM_TAG" ]; then TAG_ARG=(--tag "$AASM_TAG"); fi + if [ -n "$AASM_TAG" ]; then TAG_ARG=("$AASM_TAG"); fi # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). @@ -140,7 +140,7 @@ jobs: mkdir -p agent_assembly/bin # See linux-x86_64 above for tag-pinning rationale. TAG_ARG=() - if [ -n "$AASM_TAG" ]; then TAG_ARG=(--tag "$AASM_TAG"); fi + if [ -n "$AASM_TAG" ]; then TAG_ARG=("$AASM_TAG"); fi # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). @@ -197,7 +197,7 @@ jobs: mkdir -p agent_assembly/bin # See linux-x86_64 above for tag-pinning rationale. TAG_ARG=() - if [ -n "$AASM_TAG" ]; then TAG_ARG=(--tag "$AASM_TAG"); fi + if [ -n "$AASM_TAG" ]; then TAG_ARG=("$AASM_TAG"); fi # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). @@ -237,7 +237,7 @@ jobs: mkdir -p agent_assembly/bin # See linux-x86_64 above for tag-pinning rationale. TAG_ARG=() - if [ -n "$AASM_TAG" ]; then TAG_ARG=(--tag "$AASM_TAG"); fi + if [ -n "$AASM_TAG" ]; then TAG_ARG=("$AASM_TAG"); fi # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). From bf6d6b9526a44efe9f9a2e21221acf638200010b Mon Sep 17 00:00:00 2001 From: Chisanan232 Date: Wed, 3 Jun 2026 09:09:16 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=90=9B=20(release):=20Correct=20aasm?= =?UTF-8?q?=20asset=20patterns=20to=20Rust=20target=20triples?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit agent-assembly's release.yml publishes the sidecar binary under Rust-target-triple names with `.tar.gz` suffix: aasm-x86_64-unknown-linux-gnu.tar.gz aasm-aarch64-unknown-linux-gnu.tar.gz aasm-x86_64-apple-darwin.tar.gz aasm-aarch64-apple-darwin.tar.gz This workflow was looking for the legacy `aasm-{os}-{arch}` names (linux-x86_64, linux-aarch64, macos-x86_64, macos-arm64) which have never existed on the upstream release. Until PR #73 the mismatch was masked by a `2>/dev/null` fallback that silently shipped wheels with no bundled binary; the published 0.0.2 wheel confirms this — `aasm` is not present inside it. Point each platform job at its correct triple-named asset. The follow-up commit replaces the `mv` (which now operates on a `.tar.gz` file) with a proper tar extraction. --- .github/workflows/release-python.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/release-python.yml b/.github/workflows/release-python.yml index 0fba63a..13d5dc7 100644 --- a/.github/workflows/release-python.yml +++ b/.github/workflows/release-python.yml @@ -79,8 +79,8 @@ jobs: # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). - gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-linux-x86_64' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-linux-x86_64 agent_assembly/bin/aasm + gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-x86_64-unknown-linux-gnu.tar.gz' --dir agent_assembly/bin/ + mv agent_assembly/bin/aasm-x86_64-unknown-linux-gnu.tar.gz agent_assembly/bin/aasm chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Build wheel @@ -144,8 +144,8 @@ jobs: # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). - gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-linux-aarch64' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-linux-aarch64 agent_assembly/bin/aasm + gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-aarch64-unknown-linux-gnu.tar.gz' --dir agent_assembly/bin/ + mv agent_assembly/bin/aasm-aarch64-unknown-linux-gnu.tar.gz agent_assembly/bin/aasm chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Build wheel @@ -201,8 +201,8 @@ jobs: # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). - gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-macos-arm64' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-macos-arm64 agent_assembly/bin/aasm + gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-aarch64-apple-darwin.tar.gz' --dir agent_assembly/bin/ + mv agent_assembly/bin/aasm-aarch64-apple-darwin.tar.gz agent_assembly/bin/aasm chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Install protoc (macOS) @@ -241,8 +241,8 @@ jobs: # Hard error on missing binary: the repository_dispatch event # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). - gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-macos-x86_64' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-macos-x86_64 agent_assembly/bin/aasm + gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-x86_64-apple-darwin.tar.gz' --dir agent_assembly/bin/ + mv agent_assembly/bin/aasm-x86_64-apple-darwin.tar.gz agent_assembly/bin/aasm chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Install protoc (macOS) From 1817cd57e0f5d61f813fd33c1ee09f116586ca76 Mon Sep 17 00:00:00 2001 From: Chisanan232 Date: Wed, 3 Jun 2026 09:09:46 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=90=9B=20(release):=20Extract=20aasm-?= =?UTF-8?q?*.tar.gz=20instead=20of=20mv?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The upstream assets are gzipped tarballs, not raw binaries. Verified against v0.0.1-alpha.4: `tar tzf aasm-x86_64-unknown-linux-gnu.tar.gz` lists a single `aasm` entry at the root. Replace the `mv tarball aasm` (which would leave the wheel containing a gzipped archive named `aasm` instead of an executable) with a proper `tar -xzf` extraction followed by removal of the archive. The subsequent `chmod +x agent_assembly/bin/aasm` is now correct because the extracted file actually is the executable. --- .github/workflows/release-python.yml | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release-python.yml b/.github/workflows/release-python.yml index 13d5dc7..d0765e7 100644 --- a/.github/workflows/release-python.yml +++ b/.github/workflows/release-python.yml @@ -80,7 +80,10 @@ jobs: # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-x86_64-unknown-linux-gnu.tar.gz' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-x86_64-unknown-linux-gnu.tar.gz agent_assembly/bin/aasm + # Tarball contains a single `aasm` binary at the root; + # extract in place, then drop the archive. + tar -xzf agent_assembly/bin/aasm-x86_64-unknown-linux-gnu.tar.gz -C agent_assembly/bin/ + rm -f agent_assembly/bin/aasm-x86_64-unknown-linux-gnu.tar.gz chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Build wheel @@ -145,7 +148,10 @@ jobs: # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-aarch64-unknown-linux-gnu.tar.gz' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-aarch64-unknown-linux-gnu.tar.gz agent_assembly/bin/aasm + # Tarball contains a single `aasm` binary at the root; + # extract in place, then drop the archive. + tar -xzf agent_assembly/bin/aasm-aarch64-unknown-linux-gnu.tar.gz -C agent_assembly/bin/ + rm -f agent_assembly/bin/aasm-aarch64-unknown-linux-gnu.tar.gz chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Build wheel @@ -202,7 +208,10 @@ jobs: # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-aarch64-apple-darwin.tar.gz' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-aarch64-apple-darwin.tar.gz agent_assembly/bin/aasm + # Tarball contains a single `aasm` binary at the root; + # extract in place, then drop the archive. + tar -xzf agent_assembly/bin/aasm-aarch64-apple-darwin.tar.gz -C agent_assembly/bin/ + rm -f agent_assembly/bin/aasm-aarch64-apple-darwin.tar.gz chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Install protoc (macOS) @@ -242,7 +251,10 @@ jobs: # guarantees the aasm-* assets exist on the upstream release # at this point (see AI-agent-assembly/agent-assembly#842). gh release download "${TAG_ARG[@]}" --repo "$AASM_REPO" --pattern 'aasm-x86_64-apple-darwin.tar.gz' --dir agent_assembly/bin/ - mv agent_assembly/bin/aasm-x86_64-apple-darwin.tar.gz agent_assembly/bin/aasm + # Tarball contains a single `aasm` binary at the root; + # extract in place, then drop the archive. + tar -xzf agent_assembly/bin/aasm-x86_64-apple-darwin.tar.gz -C agent_assembly/bin/ + rm -f agent_assembly/bin/aasm-x86_64-apple-darwin.tar.gz chmod +x agent_assembly/bin/aasm echo "Bundled aasm binary into wheel" - name: Install protoc (macOS)