fix(l1): reject BAL under-declaration outside transaction execution #6164
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
| name: Upgradeability | |
| on: | |
| pull_request: | |
| branches: ["**"] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| jobs: | |
| upgradeability: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout sources | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: 20 | |
| - name: Install dependencies | |
| run: | | |
| npm install | |
| cd tooling/hardhat | |
| npm install | |
| npm run compile | |
| - name: Run Hardhat tests | |
| working-directory: tooling/hardhat | |
| run: npm test | |
| - name: Add main worktree | |
| run: | | |
| git fetch origin main | |
| git worktree add ./.tmp/ethrex-main origin/main | |
| # Here we ensure the main worktree is buildable, main may not have the tooling or package.json | |
| - name: Sync hardhat tooling into base | |
| run: | | |
| if [ ! -d ./.tmp/ethrex-main/tooling/hardhat ]; then | |
| mkdir -p ./.tmp/ethrex-main/tooling | |
| cp -R tooling/hardhat ./.tmp/ethrex-main/tooling/ | |
| fi | |
| if [ ! -f ./.tmp/ethrex-main/package.json ]; then | |
| cp package.json ./.tmp/ethrex-main/ | |
| fi | |
| rm -rf ./.tmp/ethrex-main/tooling/hardhat/artifacts ./.tmp/ethrex-main/tooling/hardhat/cache | |
| - name: Install base dependencies | |
| working-directory: ./.tmp/ethrex-main | |
| run: | | |
| npm install | |
| cd tooling/hardhat | |
| npm install | |
| npm run compile | |
| - name: Prepare reference build-info | |
| run: | | |
| mkdir -p ./.tmp/upgrade-reference/main | |
| cp -v ./.tmp/ethrex-main/tooling/hardhat/artifacts/build-info/*.json ./.tmp/upgrade-reference/main/ || { | |
| echo "Error: No build-info JSON files found; compilation may have failed or produced no output." | |
| exit 1 | |
| } | |
| - name: Validate upgrade compatibility | |
| run: node tooling/hardhat/scripts/validate-upgrades.js --reference ./.tmp/upgrade-reference/main |