ci: align agent toolchain versions#24
Conversation
🤖 Augment PR SummarySummary: Aligns CI/agent bootstrap tooling so Copilot/OpenHands runs use the same pinned Deno/.NET/Aspire versions. Changes:
🤖 Was this summary useful? React with 👍 or 👎 |
| installer_url="https://raw.githubusercontent.com/dotnet/aspire/d7d0b6759ce4b936c76bc4775814d27db560dd6d/eng/scripts/get-aspire-cli.sh" | ||
| installer_sha256="df1247d87f6e5ca83e71abf55f78bca1bd9a421a3f2f0fd5481f153fc958632a" | ||
| aspire_version="${{ steps.toolchain.outputs.aspire-version }}" | ||
| installer_url="https://aspire.dev/install.sh" |
There was a problem hiding this comment.
.github/workflows/copilot-setup-steps.yml:69: Switching to installer_url="https://aspire.dev/install.sh" without any pin/hash verification means CI is now trusting a mutable remote script, which weakens supply-chain integrity compared to the previous pinned+verified installer.
Severity: high
Other Locations
.openhands/setup.sh:50
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
| aspire --version | ||
| actual="$(aspire --version)" | ||
| echo "$actual" | ||
| test "$actual" = "${{ steps.toolchain.outputs.aspire-version }}" |
There was a problem hiding this comment.
.github/workflows/copilot-setup-steps.yml:83: test "$actual" = "..." assumes aspire --version outputs exactly the raw version string; if the CLI ever includes a prefix/suffix this will fail even when the correct version is installed.
Severity: medium
Other Locations
.openhands/setup.sh:65
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
Summary
Fixes the CI/agent toolchain drift that let OpenHands and Copilot bootstrap with stale or mismatched runner tools.
Changes
.github/toolchain.envas the shared NetScript CI/agent toolchain source:v2.7.1110.0.x/ install channel10.013.2.2docker/setup-docker-action@v5.13.2.2over any stale preinstalled8.xWhy
The failing
database.initE2E gate is caused by CI using an incompatible Aspire CLI/runtime environment. The project scaffold constants target Aspire13.2.2, so CI and cloud-agent bootstrap must install that version instead of using whicheveraspirebinary happens to be on the runner.Validation
bash -n .openhands/setup.shjsr:@std/yamlgit diff --checkThe Deno YAML parse emitted existing workspace config warnings from
examples/playground/deno.json; both workflow files parsed successfully.