Skip to content

V2.6.0 sync

V2.6.0 sync #25

Workflow file for this run

name: Formal verification (Halmos)
on:
workflow_dispatch:
push:
branches:
- QA-Test
- Stable-Test
- master
- "v[0-9]*.[0-9]*.[0-9]*"
pull_request:
branches:
- QA-Test
- Stable-Test
- master
- "v[0-9]*.[0-9]*.[0-9]*"
permissions:
contents: read
packages: read
jobs:
formal-verification:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
submodules: recursive
- name: Use Node.js 20.15.1
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
with:
node-version: "20.15.1"
- name: NPM Login
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npm config set //npm.pkg.github.com/:_authToken $GITHUB_TOKEN
- name: Install dependencies
run: npm ci
- name: Install Foundry
uses: "foundry-rs/foundry-toolchain@50d5a8956f2e319df19e6b57539d7e2acb9f8c1e" # v1.5.0
with:
version: stable
- name: Set up Python 3.12
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
with:
python-version: "3.12"
- name: Install Halmos
# Keep in sync with HALMOS_VERSION in scripts/setup-python.sh
run: pip install "halmos==0.3.3"
- name: Compile contracts
run: npm run compile
- name: Run formal verification
run: npm run test:formal