Skip to content
Open
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
683 commits
Select commit Hold shift + click to select a range
a228867
Merge branch 'zksync-os-stable' of ssh://github.com/matter-labs/era-c…
kelemeno Jan 19, 2026
1bb57a3
Merge pull request #1969 from matter-labs/kl/merge-zkstable2
kelemeno Jan 19, 2026
22ecaea
Kl/merge zkstable (#1967) (#1970)
kelemeno Jan 19, 2026
c98a9d7
tests: Claude/implement feature mkg0qknhgvlcv5r6 lf6 eq (#1962)
kelemeno Jan 19, 2026
7cdcdf6
chore: extend zkstack out (#1971)
zkzoomer Jan 19, 2026
03c8d4c
zkstack-out (#1972)
kelemeno Jan 19, 2026
505087d
chore: add gw asset tracker to zkstack out (#1973)
zkzoomer Jan 19, 2026
96cfb4e
Merge branch 'draft-v31' into niktia/fix-test-suite-flakiness
0xValera Jan 19, 2026
41aab8c
add `--threads 1` to `coverage:foundry` script
nikitastupin-matterlabs Jan 19, 2026
807df26
Merge pull request #1966 from matter-labs/niktia/fix-test-suite-flaki…
0xValera Jan 19, 2026
67affae
chore: add zkstack-out CI check (#1977)
zkzoomer Jan 20, 2026
82a893d
ci: use zksync-foundry v0.1.5 (#1959)
antonbaliasnikov Jan 20, 2026
2505a96
fix: return ZKsyncOSDualVerifier as non-testnet verifier for ZKSyncOS
sanekmelnikov Jan 20, 2026
e954a9e
Merge pull request #1980 from matter-labs/add-zksyncos-dual-verifier
sanekmelnikov Jan 20, 2026
853fca9
c-01
0xValera Jan 21, 2026
774fc84
c-02
0xValera Jan 21, 2026
d433ec9
h-01
0xValera Jan 21, 2026
f8274be
h-02
0xValera Jan 21, 2026
41f8d47
h-03
0xValera Jan 21, 2026
9ac174a
h-05
0xValera Jan 21, 2026
a32c09b
h-06
0xValera Jan 21, 2026
0e4fce2
h-07
0xValera Jan 21, 2026
53e5e34
h-09
0xValera Jan 21, 2026
3fb1b28
fix: foundry fixes (#1981)
zkzoomer Jan 21, 2026
8e2d619
h-10
0xValera Jan 21, 2026
29dcdd7
m-01
0xValera Jan 21, 2026
d59d9e6
m-02
0xValera Jan 21, 2026
0feb81b
m-03
0xValera Jan 21, 2026
5dd7030
m-04
0xValera Jan 21, 2026
e63031b
m-05
0xValera Jan 21, 2026
e8646f4
m-06
0xValera Jan 21, 2026
ec8ea99
m-07
0xValera Jan 21, 2026
74db2b2
m-08
0xValera Jan 21, 2026
b27f6b9
m-09
0xValera Jan 21, 2026
2ef8406
lint + delete ai artifacts
0xValera Jan 21, 2026
2be5928
hashes, selectors
0xValera Jan 21, 2026
c4d447b
tests: Add missing assertions to interop tests (#1976)
kelemeno Jan 21, 2026
fb9d285
Merge pull request #1984 from matter-labs/vg/v30-audits-regression-tests
0xValera Jan 21, 2026
34d2352
Add minimal SystemContextZKsyncOS
antoniolocascio Dec 10, 2025
d39acbc
Add tests for new Systemcontext contract
antoniolocascio Jan 22, 2026
88f5f7a
Add zksync os tests to l1-contracts package
antoniolocascio Jan 22, 2026
36ec113
Fix selectors
antoniolocascio Jan 22, 2026
0c54128
Merge pull request #1926 from matter-labs/alocascio-zksync-os-system-…
antoniolocascio Jan 22, 2026
b9f26d2
feat: Splitting GatewayCTMDeployer (#1964)
StanislavBreadless Jan 26, 2026
875b1c5
Fix CI for v30 (#1997)
StanislavBreadless Jan 26, 2026
6ef36ed
Message root log index for interop roots + EVM-compatible bytecode su…
StanislavBreadless Jan 26, 2026
ca9c70b
feat: add `getMerklePathForChain` (#1986)
perekopskiy Jan 26, 2026
f9a86ef
fix: fix GatewayVotePreparation.s.sol (#1999)
AntonD3 Jan 27, 2026
522d69f
Claude/foundry gateway vote test n1c hd (#2001)
kelemeno Jan 28, 2026
99c2004
chore: fix genesis tool issue with bridgehub contract name (#2005)
antonbaliasnikov Jan 29, 2026
062ec44
Claude/fix zkfoundry 3 uw f cx (#2010)
kelemeno Feb 2, 2026
117c440
fix: token balance migration fixes (#1985)
zkzoomer Feb 2, 2026
10c95a1
chore: more abis (#2012)
zkzoomer Feb 2, 2026
0f1adab
Merge branch 'draft-v31' of https://github.com/matter-labs/era-contra…
0xValera Feb 4, 2026
dd5c39e
Merge pull request #1852 from matter-labs/vg/oz-zkos-L-01
0xValera Feb 4, 2026
4f01faf
Merge pull request #1872 from matter-labs/vg/oz-zkos-L-02
0xValera Feb 4, 2026
4c0a5be
Merge branch 'vg/merge-v30-non-interop-audit-fixes' of https://github…
0xValera Feb 4, 2026
82a2a35
lint
0xValera Feb 4, 2026
8e1f5b4
Merge pull request #1853 from matter-labs/vg/oz-zkos-L-03
0xValera Feb 4, 2026
f2c22ca
Merge branch 'vg/merge-v30-non-interop-audit-fixes' of https://github…
0xValera Feb 4, 2026
b93341d
Merge pull request #1854 from matter-labs/vg/oz-zkos-L-04
0xValera Feb 4, 2026
b960052
Revert "fix: OZ ZKsync OS non interop v30, L-04"
0xValera Feb 4, 2026
02ac4e9
Merge pull request #2016 from matter-labs/revert-1854-vg/oz-zkos-L-04
0xValera Feb 4, 2026
01ac190
fix: emit GatewayToL1MigrationInitiated (#2014)
zkzoomer Feb 4, 2026
2cf2f57
fix: index chain id on GatewayToL1MigrationInitiated (#2020)
zkzoomer Feb 6, 2026
8411592
Merge branch 'zksync-os-stable' of ssh://github.com/matter-labs/era-c…
kelemeno Feb 10, 2026
171e949
More advanced bootloader and default account unit testing (#2021)
StanislavBreadless Feb 10, 2026
e5d22a7
Merge pull request #2024 from matter-labs/kl/merge-zksyncos
kelemeno Feb 10, 2026
56aecc5
Merge pull request #1978 from matter-labs/kl/v31-upgrade-2
kelemeno Feb 10, 2026
362f018
Across recovery during v31 upgrade (#2022)
StanislavBreadless Feb 11, 2026
5c9d792
interface update (#2019)
kelemeno Feb 12, 2026
224bf18
chore: cleanup `L1AssetTracker` and `L1MessageRoot` (#2031)
nikitastupin-matterlabs Feb 12, 2026
469a4fd
Simple Stage 1 (#1943)
vladbochok Feb 12, 2026
e69bb44
feat: add migration intervals tracking and verifying settlement layer…
0xValera Feb 12, 2026
038545b
implement basic easier upgrades (#2013)
kelemeno Feb 13, 2026
303f8b7
Add Era 2FA validator
vladbochok Feb 16, 2026
50ae288
Revert "Add Era 2FA validator"
vladbochok Feb 16, 2026
648e5f7
add back system contracts testing (#2033)
kelemeno Feb 17, 2026
b5466ed
chore: merge v30 non interop audit fixes (#2017)
0xValera Feb 17, 2026
7a00eae
feat!: mailbox legacy fns deprecation (#2003)
jcsec-security Feb 17, 2026
03634a6
Set of patches for draft-v31 (#2034)
StanislavBreadless Feb 20, 2026
05bff84
update genesis
Artemka374 Feb 20, 2026
3e2aa8c
remove serde skip
Artemka374 Feb 20, 2026
8da2634
feat: Interop fees (#1911)
0xValera Feb 21, 2026
d3335ea
Remove unneeded pausing logic (#2040)
StanislavBreadless Feb 21, 2026
cb4e195
fix: fix RegisterZKChain script (#2046)
AntonD3 Feb 23, 2026
a53d009
use additional_storage directly
Artemka374 Feb 23, 2026
b94d112
return back serde skip
Artemka374 Feb 23, 2026
4aff388
feat: add sl chain id to zkos batch data and batch output hash (#2049)
perekopskiy Feb 24, 2026
f03f080
Merge pull request #2045 from matter-labs/afo/update-genesis
Artemka374 Feb 24, 2026
7cdd547
fix: add destination base token asset id to bundle (#2042)
zkzoomer Feb 24, 2026
2c015f3
Missing IS_TESTNET_VERIFIER and a missing method for IComplexUpgrader…
tomg10 Feb 24, 2026
22423f0
Make chain balance migration use totalWithdrawn/totalSuccessfulDeposi…
StanislavBreadless Feb 25, 2026
b722640
Fix `prettier` (#1995)
nikitastupin-matterlabs Feb 25, 2026
b7a30ee
chore: refactor interop handler (#2056)
zkzoomer Feb 25, 2026
5767133
fix: draft-v31 tiny fixes (#2035)
AntonD3 Feb 25, 2026
cee3232
Add more comments and asserts (#2058)
StanislavBreadless Feb 26, 2026
84e5c59
chore: merge main into draft-v31 (#2057)
zkzoomer Feb 26, 2026
b76b832
fix: use normal getter for chain tree (#2060)
perekopskiy Mar 2, 2026
0e74142
Refactor DiamondProxy selectors sourcing (#2063)
nikitastupin-matterlabs Mar 6, 2026
c2f21b0
Refactor lint jobs (#2064)
nikitastupin-matterlabs Mar 10, 2026
ce5c144
EN 2FA validator for Era (#2037)
vladbochok Mar 10, 2026
4e8d4cd
Populate the legacy shared bridge addresses mapping (#2068)
StanislavBreadless Mar 10, 2026
9760794
feat: Base Token Holder contract (#1992)
Raid5594 Mar 11, 2026
03dae5b
feat: roll-back of Mailbox function deprecation (#2066)
jcsec-security Mar 11, 2026
b740520
fix genesis
Artemka374 Mar 11, 2026
f72b0f5
chore: regenesis (#2069)
zkzoomer Mar 11, 2026
bd5e015
get rid of setting balance of base token holder
Artemka374 Mar 12, 2026
9146de0
cleanup the tool
Artemka374 Mar 12, 2026
fc401d2
Merge pull request #2070 from matter-labs/afo/fix-base-token-holder-g…
Artemka374 Mar 12, 2026
5bda03a
feat: remove `execution_version` from genesis
itegulov Mar 12, 2026
1008396
feat: get rid of base token holder additional storage
itegulov Mar 12, 2026
09bf63a
fix: add L2InteropRootStorage and L2MessageVerification to genesis
itegulov Mar 12, 2026
de7e561
fmt
Artemka374 Mar 12, 2026
2eb1456
Merge branch 'draft-v31' into di/draft-v31-fixes
Artemka374 Mar 12, 2026
42d67d9
fix conflict
Artemka374 Mar 12, 2026
02106bc
fix conflicts
Artemka374 Mar 12, 2026
add6767
Merge pull request #2074 from matter-labs/di/draft-v31-fixes
Artemka374 Mar 12, 2026
5420534
test: fix loadtest on server (#2071)
zkzoomer Mar 13, 2026
4271d0a
store pending balance (#2072)
StanislavBreadless Mar 16, 2026
c146f39
feat: add system context to genesis (#2075)
Artemka374 Mar 17, 2026
0f45c01
Align zksync os system context with the era one (#2081)
StanislavBreadless Mar 18, 2026
4160515
Log id once per block (#2086)
StanislavBreadless Mar 19, 2026
30d1f76
Disallow chain id 270 (#2089)
StanislavBreadless Mar 19, 2026
dd7e3bf
fix: zksync os base token total supply (#2079)
AntonD3 Mar 20, 2026
a35be75
basic 4 chain anvil setup (#1988)
kelemeno Mar 24, 2026
c8c5b5e
fix: enable automatic upgrades on the server side (#1981) (#1983)
kelemeno Mar 25, 2026
c4e0a24
chore: regenesis (#2099)
zkzoomer Mar 26, 2026
86dbfcb
Write migration intervals for chains (#2102)
StanislavBreadless Mar 27, 2026
095b8e0
Make storage layout compatible with `main` (#2103)
StanislavBreadless Mar 30, 2026
ba6edec
clean up force deployments helper (#2090)
kelemeno Mar 30, 2026
16f9458
Restrict permanentlyAllowPriorityMode to ZKsync OS chains (#2104)
StanislavBreadfulAI Mar 30, 2026
2f024c5
zksync-os-genesis-gen: deploy all system contracts as proxy+impl pair…
StanislavBreadfulAI Mar 30, 2026
84d1e0b
init commit
sanekmelnikov Jan 19, 2026
fffa932
adjust for changes in draft-v31
sanekmelnikov Jan 20, 2026
0fb0767
removed contracts.yaml
sanekmelnikov Feb 3, 2026
29901a2
forge ctx
sanekmelnikov Feb 4, 2026
ce8e4cd
init commands
sanekmelnikov Feb 5, 2026
099db9e
clean up
sanekmelnikov Feb 6, 2026
21b2e6c
add anvil to docker
sanekmelnikov Feb 6, 2026
3cc0908
dockerfile: fix telemery prompt
sanekmelnikov Feb 11, 2026
f7b4469
Create2 and permanent values
sanekmelnikov Feb 12, 2026
e6acb27
cleanup
sanekmelnikov Feb 14, 2026
f413052
combine all modules into one
sanekmelnikov Feb 14, 2026
86bb79a
remove dev
sanekmelnikov Feb 15, 2026
2326e59
cleanup
sanekmelnikov Feb 15, 2026
11bdddc
added versions checking + fix dockerfile
tomg10 Feb 17, 2026
6770272
build protocol-ops on pushes
tomg10 Feb 17, 2026
0534e4a
fixes after rebase
tomg10 Feb 17, 2026
a0b58d0
fix
tomg10 Feb 17, 2026
c835c51
missing change
tomg10 Feb 18, 2026
cc5db0a
fix
tomg10 Feb 18, 2026
3f2d9ad
typos
tomg10 Feb 18, 2026
7da45f4
getting rid of permanent values
tomg10 Feb 20, 2026
34171ca
fix
tomg10 Feb 20, 2026
e606a34
remove saving create2 permanent values in protocol ops
tomg10 Feb 20, 2026
61d8974
remove create2 related arguments from commands
tomg10 Feb 20, 2026
6fae594
fixes of upgrade scripts
tomg10 Feb 23, 2026
e6593d1
check-tooling-versions command
tomg10 Feb 24, 2026
26d846b
calldata generation for upgrade commands
tomg10 Feb 26, 2026
6ed4e0c
missing changes
tomg10 Feb 26, 2026
36a60e6
add forge script for executing transactions
tomg10 Feb 26, 2026
f5f793a
improved ecosystem init command
tomg10 Mar 11, 2026
66d3330
unused
sanekmelnikov Mar 17, 2026
5fafc2a
fix
tomg10 Mar 24, 2026
4203eaa
cleanup
tomg10 Mar 24, 2026
0df30f7
ci fix
tomg10 Mar 24, 2026
07de4d4
fmt
tomg10 Mar 24, 2026
6838d4f
fix
tomg10 Mar 24, 2026
e8f2cbc
fix
tomg10 Mar 24, 2026
aa14871
fix
tomg10 Mar 24, 2026
286db1e
fixes
tomg10 Mar 24, 2026
932d31b
fix
tomg10 Mar 24, 2026
2f3b681
scripts cleanup
tomg10 Mar 24, 2026
a0b97db
fmt
tomg10 Mar 24, 2026
4b552d3
fix
tomg10 Mar 24, 2026
9f89608
latest
sanekmelnikov Mar 26, 2026
aa1c482
rebased
sanekmelnikov Mar 26, 2026
3519c07
add todo
StanislavBreadless Mar 27, 2026
4c3de67
small refactor + README
tomg10 Mar 27, 2026
32cc312
missing methods
sanekmelnikov Mar 27, 2026
fd8eff5
fmt
sanekmelnikov Mar 27, 2026
d973fd6
fmt
sanekmelnikov Mar 27, 2026
0bc66f2
follow ups
sanekmelnikov Mar 27, 2026
046647d
fixes
sanekmelnikov Mar 27, 2026
982f1cc
fixes
sanekmelnikov Mar 31, 2026
2ed285b
fmt
sanekmelnikov Mar 31, 2026
81dc3d7
fixes
tomg10 Mar 31, 2026
35371c6
PR feedback
tomg10 Mar 31, 2026
d5dfde6
fix
tomg10 Apr 1, 2026
a502460
PR feedback
tomg10 Apr 1, 2026
91c4bbd
removed permanent values from protocol ops
tomg10 Apr 1, 2026
b20467d
fixes
sanekmelnikov Apr 1, 2026
b806f98
prettier
sanekmelnikov Apr 1, 2026
52d6527
library: public -> internal
sanekmelnikov Apr 1, 2026
d3cca4c
upgrade test fix
sanekmelnikov Apr 1, 2026
d252a18
test-foundry-zksync fix (EraZkosRouter -> library)
sanekmelnikov Apr 1, 2026
051d803
lint
sanekmelnikov Apr 1, 2026
b7b11b3
lint
sanekmelnikov Apr 1, 2026
967331f
PR feedback part 1 of N
tomg10 Apr 2, 2026
c55d2b6
PR part 2 of N
tomg10 Apr 2, 2026
fa76479
fix test
tomg10 Apr 2, 2026
2d0b895
fmt
tomg10 Apr 2, 2026
d5fa69b
fix
tomg10 Apr 2, 2026
6d820d6
fix another test
tomg10 Apr 2, 2026
0a2f431
fix
tomg10 Apr 2, 2026
8f1aa2a
option to pass zk-token-id
sanekmelnikov Apr 2, 2026
e857abe
unused
sanekmelnikov Apr 2, 2026
b85f98b
gateway commands
tomg10 Apr 1, 2026
04b70b5
fixes
sanekmelnikov Apr 1, 2026
36fa88e
removed duplicate
sanekmelnikov Apr 2, 2026
ad6ddba
finalize migration to gateway command
tomg10 Apr 3, 2026
5367d59
wallets gen + genesis gen in dockerfile
tomg10 Apr 4, 2026
849753e
fix Dockerfile
tomg10 Apr 4, 2026
be37327
fmt
tomg10 Apr 4, 2026
a6b9d04
optimized docker build
tomg10 Apr 4, 2026
666f3dd
fix missing ts-node
tomg10 Apr 4, 2026
26cd9ab
fix
tomg10 Apr 4, 2026
79c723d
simplify dockerfile
tomg10 Apr 4, 2026
85fd95f
fix
tomg10 Apr 4, 2026
5e0193a
improvements
tomg10 Apr 4, 2026
97e2e6c
fix
tomg10 Apr 4, 2026
cd85f40
fix
tomg10 Apr 5, 2026
282ffae
dockerfile improvements
tomg10 Apr 5, 2026
4fe68b2
added missing solc cache
tomg10 Apr 5, 2026
b1eac05
feat: update zksync-os constants related to pubdata and intrinsic nat…
Raid5594 Apr 6, 2026
354281d
docs: add testing guidelines and PR workflow rules to AGENTS.md (#2115)
valera-grinenko-ai Apr 6, 2026
d7ce5c7
added safe transactions format support and more wallets for wallets gen
tomg10 Apr 6, 2026
a5ff301
feat: add dangerous contracts mapping to GatewayTransactionFilterer (…
StanislavBreadfulAI Apr 7, 2026
62de149
Introduce protocol ops tool (#2097)
tomg10 Apr 8, 2026
08ffce8
Merge origin/draft-v31 into gateway-commands-in-protocol-ops
tomg10 Apr 8, 2026
0cabbdf
cleanup
tomg10 Apr 9, 2026
c02a013
fix
tomg10 Apr 9, 2026
98a570a
fix
tomg10 Apr 9, 2026
daa34b2
fmt
tomg10 Apr 9, 2026
1968aa0
missing dockerfile changes
tomg10 Apr 9, 2026
e89fa19
small cleanup
tomg10 Apr 9, 2026
0d3bbc6
fmt
tomg10 Apr 9, 2026
d1a770c
Regression test rework
jcsec-security Apr 13, 2026
2a8b8da
Remove console logs
jcsec-security Apr 13, 2026
cd2746d
Merge pull request #2136 from matter-labs/jcr/reent_regression_test_r…
jcsec-security Apr 13, 2026
fa5f6d2
create2 salt
sanekmelnikov Apr 13, 2026
1ba1387
address PR review comments on gateway commands
tomg10 Apr 14, 2026
e992995
Merge branch 'gateway-commands-in-protocol-ops' of https://github.com…
tomg10 Apr 14, 2026
2f88930
Add ai review folder (#2137)
StanislavBreadless Apr 14, 2026
2cf08c4
Remove dead permanentValuesPath parameter from Solidity scripts
tomg10 Apr 14, 2026
b06815a
PR feedback
tomg10 Apr 14, 2026
839aa31
fmt
tomg10 Apr 15, 2026
4fcc348
restore permanent values paths just to be sure for now
tomg10 Apr 15, 2026
a6e90be
Merge pull request #2107 from matter-labs/gateway-commands-in-protoco…
tomg10 Apr 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 61 additions & 0 deletions .github/workflows/build-docker.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Build Docker Image (manual)

on:
workflow_dispatch:
inputs:
ref:
description: "Branch, tag or commit to build the docker image from. If empty, ref that triggered the workflow will be used."
type: string
required: false
image_tag_override:
description: "Optional override of the default image tag name"
type: string
required: false

jobs:
build-image:
name: Build and Push protocol Docker Image
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
env:
IMAGE_NAME: protocol

steps:
- name: Checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ inputs.ref != '' && inputs.ref || github.sha }}
submodules: recursive

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0

- name: Compute image tag
shell: bash
run: |
if [ -n "${{ inputs.image_tag_override }}" ]; then
IMAGE_TAG="${{ inputs.image_tag_override }}"
else
IMAGE_TAG=$(git rev-parse --short HEAD)-$(date +%s)
fi
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV
echo "Computed image tag: $IMAGE_TAG"

- name: Login to GitHub Container Registry
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build & Push Docker Image
uses: docker/build-push-action@471d1dc4e07e5cdedd4c2171150001c434f0b7a4 # v6.15.0
with:
context: .
push: true
platforms: linux/amd64
file: docker/protocol/Dockerfile
tags: |
ghcr.io/${{ github.repository_owner }}/${{ env.IMAGE_NAME }}:${{ env.IMAGE_TAG }}
6 changes: 3 additions & 3 deletions .github/workflows/build-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
type: string
description: tag to build from
required: true
create:
push:
tags:
- "v*" # for main releases
- "zkos*" # for zk releases
Expand Down Expand Up @@ -37,8 +37,8 @@ jobs:
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/dead-links.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
name: Check Dead Links in Markdown Files

on: pull_request
# Only run on pull requests to main branch
# Otherwise, any external change (like docs location change), can cause 100s of PRs to start failing.
on:
pull_request:
branches:
- main

jobs:
check-dead-links:
Expand Down
133 changes: 85 additions & 48 deletions .github/workflows/l1-contracts-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ jobs:
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

Expand Down Expand Up @@ -146,6 +146,45 @@ jobs:
- name: Check hashes
run: yarn calculate-hashes:check

check-selectors:
needs: [build]
runs-on: ubuntu-latest

steps:
- name: Checkout the repository
uses: actions/checkout@v4
with:
submodules: recursive

- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn
- name: Install dependencies
run: yarn

- name: Restore artifacts cache
uses: actions/cache/restore@v3
with:
fail-on-cache-miss: true
key: artifacts-l1-${{ github.sha }}
path: |
l1-contracts/cache-forge
l1-contracts/out
l1-contracts/zkout

- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

- name: Check selectors
run: yarn l1 selectors --check

test-foundry:
needs: [build, lint]
runs-on: ubuntu-latest
Expand All @@ -165,8 +204,8 @@ jobs:
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

Expand Down Expand Up @@ -201,55 +240,53 @@ jobs:
# working-directory: ./l1-contracts
# run: forge test --match-test MeasureGas --gas-snapshot-check=true

# TODO: recover, not needed for zksync os specifically as it does not use zkEVM
# test-foundry-zksync:
# needs: [build, lint]
# runs-on: ubuntu-latest
test-foundry-zksync:
needs: [build, lint]
runs-on: ubuntu-latest

# steps:
# - name: Checkout the repository
# uses: actions/checkout@v4
# with:
# submodules: recursive
steps:
- name: Checkout the repository
uses: actions/checkout@v4
with:
submodules: recursive

# - name: Use Node.js
# uses: actions/setup-node@v3
# with:
# node-version: 18.18.0
# cache: yarn
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.18.0
cache: yarn

# - name: Install foundry-zksync
# run: |
# mkdir ./foundry-zksync
# curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
# tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
# chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
# echo "$PWD/foundry-zksync" >> $GITHUB_PATH
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

# - name: Install dependencies
# run: yarn
- name: Install dependencies
run: yarn

# - name: Build system contract artifacts
# run: yarn sc build:foundry
- name: Build system contract artifacts
run: yarn sc build:foundry

# - name: Restore artifacts cache
# uses: actions/cache/restore@v3
# with:
# fail-on-cache-miss: true
# key: artifacts-l1-${{ github.sha }}
# path: |
# da-contracts/cache-forge
# da-contracts/out
# l1-contracts/cache-forge
# l1-contracts/out
# # TODO: cached `zkout` and the one for tests produce different hashes and so it causes the tests to fail
# l2-contracts/cache-forge
# l2-contracts/zkout
# system-contracts/zkout
- name: Restore artifacts cache
uses: actions/cache/restore@v3
with:
fail-on-cache-miss: true
key: artifacts-l1-${{ github.sha }}
path: |
da-contracts/out
l1-contracts/cache-forge
l1-contracts/out
# TODO: cached `zkout` and the one for tests produce different hashes and so it causes the tests to fail
l2-contracts/cache-forge
l2-contracts/zkout
system-contracts/zkout

# - name: Run tests
# working-directory: ./l1-contracts
# run: yarn test:zkfoundry
- name: Run tests
working-directory: ./l1-contracts
run: yarn test:zkfoundry

check-verifier-generator-l1:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -311,8 +348,8 @@ jobs:
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

Expand Down
14 changes: 9 additions & 5 deletions .github/workflows/l1-contracts-foundry-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ jobs:
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

Expand All @@ -33,6 +33,9 @@ jobs:
- name: Install dependencies
run: yarn

- name: Build da-contracts artifacts
run: yarn da build:foundry

- name: Build artifacts
run: yarn l1 build:foundry

Expand All @@ -42,9 +45,6 @@ jobs:
- name: Build l2 artifacts
run: yarn l2 build:foundry

- name: Build da-contracts artifacts
run: yarn da build:foundry

- name: Create cache
uses: actions/cache/save@v4
with:
Expand Down Expand Up @@ -93,6 +93,10 @@ jobs:

- name: Use Foundry
uses: foundry-rs/foundry-toolchain@v1
# Using "stable" channel leads to issues with files not being opened for writing.
# Before removing specific version, ensure the issue is resolved.
with:
version: "v1.4.0"

- name: Copy configs from template
working-directory: ./l1-contracts
Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/l2-contracts-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ jobs:
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

Expand All @@ -30,6 +30,9 @@ jobs:
- name: Install dependencies
run: yarn

- name: Build da-contracts artifacts
run: yarn da build:foundry

# In the future, we should simply take the artifacts that are built by l1-contracts.
- name: Build l1 contracts
working-directory: l1-contracts
Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/secrets_scanner.yaml
Original file line number Diff line number Diff line change
@@ -1,15 +1,17 @@
name: Leaked Secrets Scan
on: [pull_request]
on:
pull_request:
merge_group:
jobs:
TruffleHog:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
- name: TruffleHog OSS
uses: trufflesecurity/trufflehog@0c66d30c1f4075cee1aada2e1ab46dabb1b0071a
uses: trufflesecurity/trufflehog@a94d152bf65bebf5baa486d3d4dfee520af2ceed # v3.88.2
with:
path: ./
base: ${{ github.event.repository.default_branch }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/slither.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ jobs:
- name: Install foundry-zksync
run: |
mkdir ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly/foundry_nightly_linux_amd64.tar.gz
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/foundry-zksync-v0.0.30/foundry_zksync_v0.0.30_linux_amd64.tar.gz
tar zxf foundry_zksync_v0.0.30_linux_amd64.tar.gz -C ./foundry-zksync
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

Expand Down
Loading
Loading