From 67d51037c041e2551ebeaf9f404290f9ded9221c Mon Sep 17 00:00:00 2001 From: Nicolas Chamo Date: Tue, 19 May 2026 05:41:39 -0300 Subject: [PATCH 1/2] feat(ci): run aztec-cli acceptance test on macOS (#23309) ## Summary - Adds `macos-latest` to the `aztec-cli-acceptance-test` workflow via `strategy.matrix` so the full dev onboarding test runs on both Ubuntu and macOS in parallel, with `fail-fast: false` so one OS failure doesn't cancel the other. - Splits Slack notifications into a downstream `notify` job (`needs: release-acceptance` + `always()`) so a single consolidated message fires after both matrix entries finish. - Moves all Node setup into `run-test.sh`: it now installs NVM if missing and `nvm install --lts` unconditionally, then `aztec-up`'s `install_node` can upgrade further via the same NVM if needed. This makes the runner self-contained and unblocks macOS, where the GitHub Actions image ships without NVM (the previous `setup-node` step put Node 22 in PATH but left `aztec-up` with no way to satisfy its `>=24.12.0` requirement). Fixes F-566 --- .../workflows/aztec-cli-acceptance-test.yml | 29 ++++++++++++------- .../aztec-cli-acceptance-test/run-test.sh | 16 ++++++---- 2 files changed, 29 insertions(+), 16 deletions(-) diff --git a/.github/workflows/aztec-cli-acceptance-test.yml b/.github/workflows/aztec-cli-acceptance-test.yml index 575c7afc64d6..ef9da15b4b45 100644 --- a/.github/workflows/aztec-cli-acceptance-test.yml +++ b/.github/workflows/aztec-cli-acceptance-test.yml @@ -18,7 +18,11 @@ on: jobs: release-acceptance: - runs-on: ubuntu-latest + strategy: + fail-fast: false # Don't cancel the other OS if one fails. + matrix: + os: [ubuntu-latest, macos-latest] + runs-on: ${{ matrix.os }} if: >- github.event_name == 'workflow_dispatch' || (github.event_name == 'workflow_run' @@ -32,19 +36,24 @@ jobs: with: ref: ${{ github.event.workflow_run.head_sha || github.sha }} - # Node is only used to run the .ts harness in run-test.sh, which needs >=22.18 for TS - # type-stripping. The aztec CLI installer manages its own node version independently. - - name: Setup Node.js - uses: actions/setup-node@v4 - with: - node-version: 22 - - name: Run Aztec CLI acceptance test timeout-minutes: 30 run: ./aztec-up/test/aztec-cli-acceptance-test/run-test.sh + notify: + needs: release-acceptance + if: always() && github.event_name != 'workflow_dispatch' + runs-on: ubuntu-latest + env: + VERSION: ${{ github.event.inputs.version || github.event.workflow_run.head_branch }} + steps: + - name: Checkout + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 + with: + ref: ${{ github.event.workflow_run.head_sha || github.sha }} + - name: Notify Slack on success - if: success() && github.event_name != 'workflow_dispatch' + if: needs.release-acceptance.result == 'success' env: SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} run: | @@ -54,7 +63,7 @@ jobs: "#team-fairies" - name: Notify Slack and dispatch ClaudeBox on failure - if: failure() && github.event_name != 'workflow_dispatch' + if: needs.release-acceptance.result == 'failure' env: SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }} GITHUB_TOKEN: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }} diff --git a/aztec-up/test/aztec-cli-acceptance-test/run-test.sh b/aztec-up/test/aztec-cli-acceptance-test/run-test.sh index 2ea5413c43fd..c40db7d5ce8f 100755 --- a/aztec-up/test/aztec-cli-acceptance-test/run-test.sh +++ b/aztec-up/test/aztec-cli-acceptance-test/run-test.sh @@ -2,7 +2,8 @@ # Launcher for the Aztec CLI acceptance test. # # Steps: -# 1. Install Node via NVM if not present (skipped with SKIP_INSTALL=1) +# 1. Install NVM and the latest LTS Node (skipped with SKIP_INSTALL=1). NVM is required by the +# aztec installer to upgrade Node when the system version is too old. # 2. Install the Aztec toolchain via the public installer (skipped with SKIP_INSTALL=1) # 3. Run aztec-cli-acceptance-test.ts which exercises the installed toolchain end-to-end # @@ -20,14 +21,17 @@ else echo "ERROR: VERSION must be set when SKIP_INSTALL is not 1." >&2 exit 1 fi - if ! command -v node &>/dev/null; then - echo ">>> Installing Node via NVM" + if [ ! -f "$HOME/.nvm/nvm.sh" ]; then + echo ">>> Installing NVM" curl -sL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh -o /tmp/nvm-install.sh PROFILE=/dev/null bash /tmp/nvm-install.sh - export NVM_DIR="$HOME/.nvm" - set +eu; . "$NVM_DIR/nvm.sh"; set -eu - nvm install --lts fi + + # Install latest LTS node, since we need it to run the acceptance test correctly + export NVM_DIR="$HOME/.nvm" + set +eu; . "$NVM_DIR/nvm.sh"; set -eu + echo ">>> Installing latest LTS Node via NVM" + nvm install --lts echo ">>> Installing aztec ${VERSION}" NO_NEW_SHELL=1 VERSION="${VERSION}" bash <(curl -sL https://install.aztec.network) fi From 4f2bf86d75081481246b9d824678c445f30d13b2 Mon Sep 17 00:00:00 2001 From: josh crites Date: Thu, 21 May 2026 14:44:48 +0000 Subject: [PATCH 2/2] docs(operators): expand ATP and ATV on first use in registering-sequencer (#23254) Clarify docs so the LLMs don't get confused. --- docs/docs-operate/operators/setup/registering-sequencer.md | 6 +++--- .../operators/setup/registering-sequencer.md | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/docs-operate/operators/setup/registering-sequencer.md b/docs/docs-operate/operators/setup/registering-sequencer.md index cd7cd9d07d89..45a3483dc810 100644 --- a/docs/docs-operate/operators/setup/registering-sequencer.md +++ b/docs/docs-operate/operators/setup/registering-sequencer.md @@ -18,7 +18,7 @@ Before proceeding, ensure you have completed the [Sequencer Setup Guide](./seque - Completed sequencer node setup with keystore generated - Access to your **public keystore** file (`keyN_staker_output.json`) -- Sufficient ATP/ATV tokens for staking +- Sufficient **Aztec Token Position (ATP)** or **Aztec Token Vault (ATV)** balance for staking - Wallet with ETH for gas fees - Web browser for accessing the staking dashboard @@ -124,7 +124,7 @@ Follow these steps to register your sequencer(s) through the staking dashboard: 1. **Navigate to the staking dashboard** at https://stake.aztec.network -2. **Connect your wallet** with the account that holds your ATP/ATV tokens +2. **Connect your wallet** with the account that holds your Aztec Token Position (ATP) or Aztec Token Vault (ATV) balance 3. **Click "Stake"** @@ -136,7 +136,7 @@ Follow these steps to register your sequencer(s) through the staking dashboard: 5. **Click through "Start Registration"** after reviewing the requirements -6. **Select the ATP/ATV tokens you want to stake** +6. **Select the ATP or ATV balance you want to stake** 7. **Upload your keystore JSON file** (either single or combined multi-sequencer file) diff --git a/docs/network_versioned_docs/version-v2.1.11-ignition/operators/setup/registering-sequencer.md b/docs/network_versioned_docs/version-v2.1.11-ignition/operators/setup/registering-sequencer.md index cd7cd9d07d89..45a3483dc810 100644 --- a/docs/network_versioned_docs/version-v2.1.11-ignition/operators/setup/registering-sequencer.md +++ b/docs/network_versioned_docs/version-v2.1.11-ignition/operators/setup/registering-sequencer.md @@ -18,7 +18,7 @@ Before proceeding, ensure you have completed the [Sequencer Setup Guide](./seque - Completed sequencer node setup with keystore generated - Access to your **public keystore** file (`keyN_staker_output.json`) -- Sufficient ATP/ATV tokens for staking +- Sufficient **Aztec Token Position (ATP)** or **Aztec Token Vault (ATV)** balance for staking - Wallet with ETH for gas fees - Web browser for accessing the staking dashboard @@ -124,7 +124,7 @@ Follow these steps to register your sequencer(s) through the staking dashboard: 1. **Navigate to the staking dashboard** at https://stake.aztec.network -2. **Connect your wallet** with the account that holds your ATP/ATV tokens +2. **Connect your wallet** with the account that holds your Aztec Token Position (ATP) or Aztec Token Vault (ATV) balance 3. **Click "Stake"** @@ -136,7 +136,7 @@ Follow these steps to register your sequencer(s) through the staking dashboard: 5. **Click through "Start Registration"** after reviewing the requirements -6. **Select the ATP/ATV tokens you want to stake** +6. **Select the ATP or ATV balance you want to stake** 7. **Upload your keystore JSON file** (either single or combined multi-sequencer file)