Skip to content

release: v10.0.0-rc.9 #840

release: v10.0.0-rc.9

release: v10.0.0-rc.9 #840

name: EVM Integration Tests
on:
push:
branches: [main, v10-rc]
paths:
- 'packages/chain/**'
- 'packages/publisher/**'
- 'packages/agent/**'
- 'packages/core/**'
- 'packages/evm-module/contracts/**'
- 'packages/evm-module/deploy/**'
- 'scripts/test-evm-integration.sh'
- '.github/workflows/evm-integration.yml'
pull_request:
branches: [main, v10-rc]
paths:
- 'packages/chain/**'
- 'packages/publisher/**'
- 'packages/agent/**'
- 'packages/core/**'
- 'packages/evm-module/contracts/**'
- 'packages/evm-module/deploy/**'
- 'scripts/test-evm-integration.sh'
- '.github/workflows/evm-integration.yml'
workflow_dispatch:
concurrency:
group: evm-integration-${{ github.ref }}
cancel-in-progress: true
# Minimum-needed token scope (see ci.yml header for rationale).
permissions:
contents: read
jobs:
# All three matrix scopes (chain, publisher, agent) are TORNADO-tier per
# `dkgv10-spec/CRITICALITY_CATEGORIZATION.md` §1 — this workflow drives
# them against a real Hardhat node to catch EVM-side regressions the
# unit-test lanes in `ci.yml` can't reach.
evm-integration:
name: "Tornado EVM integration: ${{ matrix.scope }}"
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
scope: [chain, publisher, agent]
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
with:
persist-credentials: false
- uses: pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4.3.0
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version-file: .nvmrc
cache: pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Cache Hardhat artifacts
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
with:
path: |
packages/evm-module/artifacts
packages/evm-module/cache
packages/evm-module/typechain
key: hardhat-${{ runner.os }}-${{ hashFiles('packages/evm-module/contracts/**/*.sol', 'packages/evm-module/hardhat.node.config.ts') }}
restore-keys: |
hardhat-${{ runner.os }}-
- name: Build packages
run: pnpm run build:packages
- name: Run EVM integration tests (${{ matrix.scope }})
run: ./scripts/test-evm-integration.sh ${{ matrix.scope }}