feat: add Hoodi testnet support and update ERC20Mock contract #144
Workflow file for this run
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
| # Check that selectors.txt is up-to-date with all contract packages | |
| name: contracts-check-selectors | |
| on: | |
| pull_request: | |
| paths: | |
| - '.github/workflows/contracts-check-selectors.yml' | |
| - 'contracts/**/*.sol' | |
| - 'contracts/selectors.txt' | |
| push: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| permissions: {} | |
| env: | |
| # Safe-chain enforces its own minimum-package-age check independently, | |
| # mirror both the age (72 h) and the exclusion here. This job installs every | |
| # contract package, including confidential-wrapper's @zama-fhe/relayer-sdk. | |
| SAFE_CHAIN_MINIMUM_PACKAGE_AGE_HOURS: "72" | |
| SAFE_CHAIN_MINIMUM_PACKAGE_AGE_EXCLUSIONS: "@zama-fhe/relayer-sdk" | |
| concurrency: | |
| group: ci-contracts-check-selectors-${{ github.ref }} | |
| cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
| jobs: | |
| check-selectors: | |
| name: contracts-check-selectors/check-selectors (bpr) | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: 'read' # Required to checkout repository code | |
| steps: | |
| # TODO: remove once GitHub runner images ship the CVE-2026-31431 kernel fix | |
| - name: Workaround CVE-2026-31431 (copy.fail) | |
| run: | | |
| echo "install algif_aead /bin/false" | sudo tee /etc/modprobe.d/disable-algif-aead.conf | |
| if lsmod | grep -q algif_aead; then | |
| sudo rmmod algif_aead || echo "WARNING: rmmod failed - module may be in use" | |
| elif modinfo algif_aead 2>/dev/null | grep -q builtin; then | |
| echo "WARNING: algif_aead built-in - modprobe.d blacklist has no effect" | |
| fi | |
| - name: Checkout project | |
| uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| with: | |
| persist-credentials: 'false' | |
| - name: Install pnpm | |
| uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v5.0.0 | |
| with: | |
| version: 9 | |
| - name: Setup Node | |
| uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 | |
| with: | |
| node-version: 24 | |
| - name: Install Foundry | |
| uses: foundry-rs/foundry-toolchain@8789b3e21e6c11b2697f5eb56eddae542f746c10 # v1.7.0 | |
| with: | |
| version: v1.3.1 | |
| - name: Cache node_modules | |
| uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 | |
| with: | |
| path: | | |
| contracts/confidential-token-wrappers-registry/node_modules | |
| contracts/confidential-wrapper/node_modules | |
| contracts/feesBurner/node_modules | |
| contracts/governance/node_modules | |
| contracts/pauserSetWrapper/node_modules | |
| contracts/safe/node_modules | |
| contracts/solanaOFT/node_modules | |
| contracts/staking/node_modules | |
| contracts/token/node_modules | |
| key: contracts-node-modules-${{ hashFiles('contracts/*/package-lock.json', 'contracts/*/pnpm-lock.yaml') }} | |
| - name: Install safe-chain (Aikido malicious-package guard) | |
| shell: bash | |
| run: curl -fsSL https://github.com/AikidoSec/safe-chain/releases/download/1.5.8/install-safe-chain.sh | sh -s -- --ci | |
| - name: Check selectors | |
| working-directory: contracts | |
| run: make check-selectors |