Skip to content

Commit f7ce04b

Browse files
committed
Merge branch 'optimism-v1.7.4' into feat/bump-op-v1.7.4
# Conflicts: # .circleci/config.yml # bedrock-devnet/devnet/__init__.py # go.mod # go.sum # op-batcher/batcher/config.go # op-batcher/batcher/driver.go # op-bindings/bindings/delayedweth.go # op-bindings/bindings/delayedweth_more.go # op-bindings/bindings/disputegamefactory.go # op-bindings/bindings/disputegamefactory_more.go # op-bindings/bindings/faultdisputegame.go # op-bindings/bindings/faultdisputegame_more.go # op-bindings/bindings/optimismportal.go # op-bindings/bindings/optimismportal_more.go # op-bindings/bindingspreview/optimismportal2.go # op-bindings/bindingspreview/optimismportal2_more.go # op-chain-ops/deployer/deployer.go # op-chain-ops/genesis/config.go # op-chain-ops/genesis/layer_one.go # op-chain-ops/genesis/layer_one_test.go # op-chain-ops/genesis/layer_two.go # op-chain-ops/genesis/layer_two_test.go # op-chain-ops/genesis/setters.go # op-chain-ops/immutables/immutables.go # op-challenger/cmd/list_claims.go # op-challenger/cmd/list_games.go # op-challenger/cmd/main_test.go # op-challenger/cmd/utils.go # op-challenger/game/fault/agent.go # op-challenger/game/fault/agent_test.go # op-challenger/game/fault/contracts/delayed_weth.go # op-challenger/game/fault/contracts/delayed_weth_test.go # op-challenger/game/fault/contracts/faultdisputegame.go # op-challenger/game/fault/contracts/faultdisputegame_test.go # op-challenger/game/fault/contracts/gamefactory.go # op-challenger/game/fault/contracts/gamefactory_test.go # op-challenger/game/fault/player.go # op-challenger/game/fault/register.go # op-challenger/game/service.go # op-challenger/metrics/metrics.go # op-challenger/metrics/noop.go # op-dispute-mon/mon/bonds/monitor.go # op-dispute-mon/mon/bonds/monitor_test.go # op-dispute-mon/mon/claims.go # op-dispute-mon/mon/claims_test.go # op-dispute-mon/mon/extract/bond_enricher_test.go # op-dispute-mon/mon/extract/caller.go # op-dispute-mon/mon/extract/claim_enricher.go # op-dispute-mon/mon/extract/claim_enricher_test.go # op-dispute-mon/mon/extract/extractor.go # op-dispute-mon/mon/extract/extractor_test.go # op-dispute-mon/mon/resolution/delay.go # op-dispute-mon/mon/resolution/delay_test.go # op-dispute-mon/mon/resolutions.go # op-dispute-mon/mon/resolutions_test.go # op-dispute-mon/mon/service.go # op-dispute-mon/mon/types/types.go # op-e2e/e2eutils/disputegame/output_alphabet_helper.go # op-e2e/e2eutils/disputegame/output_cannon_helper.go # op-e2e/e2eutils/disputegame/output_game_helper.go # op-node/rollup/derive/fuzz_parsers_test.go # op-node/rollup/types.go # op-plasma/daclient_test.go # op-ufm/go.mod # op-ufm/go.sum # ops-bedrock/docker-compose.yml # package.json # packages/contracts-bedrock/.gas-snapshot # packages/contracts-bedrock/deploy-config/sepolia-devnet-0.json # packages/contracts-bedrock/deploy-config/sepolia.json # packages/contracts-bedrock/lib/forge-std # packages/contracts-bedrock/package.json # packages/contracts-bedrock/scripts/Deploy.s.sol # packages/contracts-bedrock/scripts/autogen/generate-snapshots.ts # packages/contracts-bedrock/scripts/fpac/FPACOPS.s.sol # packages/contracts-bedrock/semver-lock.json # packages/contracts-bedrock/snapshots/abi/FaultDisputeGame.json # packages/contracts-bedrock/snapshots/abi/PermissionedDisputeGame.json # packages/contracts-bedrock/snapshots/state-diff/Kontrol-Deploy.json # packages/contracts-bedrock/snapshots/storageLayout/FaultDisputeGame.json # packages/contracts-bedrock/snapshots/storageLayout/PermissionedDisputeGame.json # packages/contracts-bedrock/src/L1/OptimismPortal2.sol # packages/contracts-bedrock/src/dispute/DisputeGameFactory.sol # packages/contracts-bedrock/src/dispute/FaultDisputeGame.sol # packages/contracts-bedrock/src/universal/StandardBridge.sol # packages/contracts-bedrock/test/L1/OptimismPortal.t.sol # packages/contracts-bedrock/test/L1/OptimismPortal2.t.sol # packages/contracts-bedrock/test/dispute/AnchorStateRegistry.t.sol # packages/contracts-bedrock/test/dispute/DisputeGameFactory.t.sol # packages/contracts-bedrock/test/dispute/FaultDisputeGame.t.sol # packages/contracts-bedrock/test/governance/GovernanceToken.t.sol # packages/contracts-bedrock/test/governance/MintManager.t.sol # packages/contracts-bedrock/test/kontrol/proofs/OptimismPortal.k.sol # packages/contracts-bedrock/test/kontrol/proofs/utils/DeploymentSummary.sol # packages/contracts-bedrock/test/kontrol/scripts/make-summary-deployment.sh # packages/contracts-bedrock/test/setup/Setup.sol # packages/contracts-ts/package.json # packages/fee-estimation/package.json # packages/sdk/package.json # packages/sdk/src/utils/contracts.ts # packages/web3js-plugin/package.json # pnpm-lock.yaml # proxyd/go.mod # proxyd/go.sum # versions.json
2 parents 4067714 + 24a8d3e commit f7ce04b

File tree

426 files changed

+45867
-14836
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

426 files changed

+45867
-14836
lines changed

.circleci/config.yml

Lines changed: 86 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ version: 2.1
33
parameters:
44
ci_builder_image:
55
type: string
6-
default: us-docker.pkg.dev/oplabs-tools-artifacts/images/ci-builder:v0.46.1
6+
default: us-docker.pkg.dev/oplabs-tools-artifacts/images/ci-builder:v0.48.0
77
ci_builder_rust_image:
88
type: string
99
default: us-docker.pkg.dev/oplabs-tools-artifacts/images/ci-builder-rust:latest
@@ -229,11 +229,17 @@ jobs:
229229
- "packages/contracts-bedrock/tsconfig.tsbuildinfo"
230230
- "packages/contracts-bedrock/tsconfig.build.tsbuildinfo"
231231
- ".devnet/allocs-l1.json"
232+
- ".devnet/allocs-l2.json"
233+
- ".devnet/allocs-l2-delta.json"
232234
- ".devnet/addresses.json"
233235
- ".devnet-fault-proofs/allocs-l1.json"
234236
- ".devnet-fault-proofs/addresses.json"
237+
- ".devnet-fault-proofs/allocs-l2.json"
238+
- ".devnet-fault-proofs/allocs-l2-delta.json"
235239
- ".devnet-plasma/allocs-l1.json"
236240
- ".devnet-plasma/addresses.json"
241+
- ".devnet-plasma/allocs-l2.json"
242+
- ".devnet-plasma/allocs-l2-delta.json"
237243
- "packages/contracts-bedrock/deploy-config/devnetL1.json"
238244
- "packages/contracts-bedrock/deployments/devnetL1"
239245

@@ -506,6 +512,16 @@ jobs:
506512
command: |
507513
pnpm lint:check || echo "export LINT_STATUS=1" >> "$BASH_ENV"
508514
working_directory: packages/contracts-bedrock
515+
- run:
516+
# The solc warnings check must be the first step to build the contracts, that way the
517+
# warnings are output here. On subsequent runs, forge will read artifacts from the cache
518+
# so warnings would not occur.
519+
name: solc warnings check
520+
command: |
521+
forge build --deny-warnings || echo "export SOLC_WARNINGS_CHECK=1" >> "$BASH_ENV"
522+
environment:
523+
FOUNDRY_PROFILE: ci
524+
working_directory: packages/contracts-bedrock
509525
- run:
510526
name: gas snapshot
511527
command: |
@@ -525,13 +541,24 @@ jobs:
525541
command: |
526542
pnpm snapshots:check || echo "export SNAPSHOTS_STATUS=1" >> "$BASH_ENV"
527543
working_directory: packages/contracts-bedrock
544+
- run:
545+
name: size check
546+
command: |
547+
forge build --sizes --skip "/**/test/**" --skip "/**/scripts/**" || echo "export SIZE_CHECK=1" >> "$BASH_ENV"
548+
environment:
549+
FOUNDRY_PROFILE: ci
550+
working_directory: packages/contracts-bedrock
528551
- run:
529552
name: check statuses
530553
command: |
531554
if [[ "$LINT_STATUS" -ne 0 ]]; then
532555
echo "Linting failed, see job output for details."
533556
FAILED=1
534557
fi
558+
if [[ "$SOLC_WARNINGS_CHECK" -ne 0 ]]; then
559+
echo "Solidity emitted warnings, see job output for details."
560+
FAILED=1
561+
fi
535562
if [[ "$GAS_SNAPSHOT_STATUS" -ne 0 ]]; then
536563
echo "Gas snapshot failed, see job output for details."
537564
FAILED=1
@@ -552,6 +579,10 @@ jobs:
552579
echo "Snapshots check failed, see job output for details."
553580
FAILED=1
554581
fi
582+
if [[ "$SIZE_CHECK" -ne 0 ]]; then
583+
echo "Contract(s) exceed size limit, see job output for details."
584+
FAILED=1
585+
fi
555586
if [[ "$FAILED" -ne 0 ]]; then
556587
exit 1
557588
fi
@@ -938,6 +969,8 @@ jobs:
938969
name: Load devnet-allocs
939970
command: |
940971
mkdir -p .devnet
972+
cp /tmp/workspace/.devnet<<parameters.fpac>>/allocs-l2.json .devnet/allocs-l2.json
973+
cp /tmp/workspace/.devnet<<parameters.fpac>>/allocs-l2-delta.json .devnet/allocs-l2-delta.json
941974
cp /tmp/workspace/.devnet<<parameters.fpac>>/allocs-l1.json .devnet/allocs-l1.json
942975
cp /tmp/workspace/.devnet<<parameters.fpac>>/addresses.json .devnet/addresses.json
943976
cp /tmp/workspace/packages/contracts-bedrock/deploy-config/devnetL1.json packages/contracts-bedrock/deploy-config/devnetL1.json
@@ -1130,6 +1163,8 @@ jobs:
11301163
- persist_to_workspace:
11311164
root: .
11321165
paths:
1166+
- ".devnet/allocs-l2.json"
1167+
- ".devnet/allocs-l2-delta.json"
11331168
- ".devnet/allocs-l1.json"
11341169
- ".devnet/addresses.json"
11351170
- "packages/contracts-bedrock/deploy-config/devnetL1.json"
@@ -1146,15 +1181,23 @@ jobs:
11461181
DEVNET_NO_BUILD: 'true'
11471182
# Default value; Can be overridden.
11481183
DEVNET_FPAC: 'false'
1184+
DEVNET_PLASMA: 'false'
11491185
steps:
11501186
- checkout
11511187
- when:
11521188
condition:
1153-
equal: ['-fault-proofs', <<parameters.fpac>>]
1189+
equal: ['fault-proofs', <<parameters.fpac>>]
11541190
steps:
11551191
- run:
11561192
name: Set DEVNET_FPAC = true
11571193
command: echo 'export DEVNET_FPAC=true' >> $BASH_ENV
1194+
- when:
1195+
condition:
1196+
equal: ['plasma', <<parameters.fpac>>]
1197+
steps:
1198+
- run:
1199+
name: Set DEVNET_PLASMA = true
1200+
command: echo 'export DEVNET_PLASMA=true' >> $BASH_ENV
11581201
- check-changed:
11591202
patterns: op-(.+),packages,ops-bedrock,bedrock-devnet
11601203
- run:
@@ -1202,6 +1245,14 @@ jobs:
12021245
command: make submodules
12031246
- attach_workspace:
12041247
at: "."
1248+
- when:
1249+
condition:
1250+
not:
1251+
equal: ['legacy', <<parameters.fpac>>]
1252+
steps:
1253+
- run:
1254+
name: Use non-legacy devnet allocs
1255+
command: rm -r .devnet && mv .devnet-<<parameters.fpac>> .devnet
12051256
- run:
12061257
name: Load and tag docker images
12071258
command: |
@@ -1211,11 +1262,13 @@ jobs:
12111262
docker load < "./op-node.tar"
12121263
docker load < "./op-proposer.tar"
12131264
docker load < "./op-batcher.tar"
1265+
docker load < "./da-server.tar"
12141266
# rename to the tags that the docker-compose of the devnet expects
12151267
docker tag "$IMAGE_BASE_PREFIX/op-stack-go:<<pipeline.git.revision>>" "$IMAGE_BASE_PREFIX/op-stack-go:devnet"
12161268
docker tag "$IMAGE_BASE_PREFIX/op-node:<<pipeline.git.revision>>" "$IMAGE_BASE_PREFIX/op-node:devnet"
12171269
docker tag "$IMAGE_BASE_PREFIX/op-proposer:<<pipeline.git.revision>>" "$IMAGE_BASE_PREFIX/op-proposer:devnet"
12181270
docker tag "$IMAGE_BASE_PREFIX/op-batcher:<<pipeline.git.revision>>" "$IMAGE_BASE_PREFIX/op-batcher:devnet"
1271+
docker tag "$IMAGE_BASE_PREFIX/da-server:<<pipeline.git.revision>>" "$IMAGE_BASE_PREFIX/da-server:devnet"
12191272
- run:
12201273
name: pnpm i
12211274
command: |
@@ -1258,6 +1311,11 @@ jobs:
12581311
command: |
12591312
docker logs ops-bedrock-op-challenger-1 || echo "No logs."
12601313
when: on_fail
1314+
- run:
1315+
name: Dump da-server logs
1316+
command: |
1317+
docker logs ops-bedrock-da-server-1 || echo "No logs."
1318+
when: on_fail
12611319
- run:
12621320
name: Log deployment artifact
12631321
command: |
@@ -1663,7 +1721,7 @@ workflows:
16631721
name: op-e2e-action-tests<< matrix.fpac >>
16641722
matrix:
16651723
parameters:
1666-
fpac: ["", "-fault-proofs"]
1724+
fpac: ["", "-fault-proofs", "-plasma"]
16671725
module: op-e2e
16681726
target: test-actions
16691727
parallelism: 1
@@ -1772,18 +1830,25 @@ workflows:
17721830
docker_tags: <<pipeline.git.revision>>,<<pipeline.git.branch>>
17731831
requires: ['op-stack-go-docker-build']
17741832
save_image_tag: <<pipeline.git.revision>> # for devnet later
1833+
- docker-build:
1834+
name: da-server-docker-build
1835+
docker_name: da-server
1836+
docker_tags: <<pipeline.git.revision>>,<<pipeline.git.branch>>
1837+
requires: ['op-stack-go-docker-build']
1838+
save_image_tag: <<pipeline.git.revision>> # for devnet later
17751839
- cannon-prestate:
17761840
requires:
17771841
- go-mod-download
17781842
- devnet:
17791843
matrix:
17801844
parameters:
1781-
fpac: ["legacy", "fault-proofs"]
1845+
fpac: ["legacy", "fault-proofs", "plasma"]
17821846
requires:
17831847
- pnpm-monorepo
17841848
- op-batcher-docker-build
17851849
- op-proposer-docker-build
17861850
- op-node-docker-build
1851+
- da-server-docker-build
17871852
- cannon-prestate
17881853
- docker-build:
17891854
name: indexer-docker-build
@@ -1813,14 +1878,14 @@ workflows:
18131878
type: approval
18141879
filters:
18151880
tags:
1816-
only: /^(proxyd|chain-mon|indexer|ci-builder(-rust)?|ufm-[a-z0-9\-]*|op-[a-z0-9\-]*)\/v.*/
1881+
only: /^(da-server|proxyd|chain-mon|indexer|ci-builder(-rust)?|ufm-[a-z0-9\-]*|op-[a-z0-9\-]*)\/v.*/
18171882
branches:
18181883
ignore: /.*/
18191884
- docker-build: # just to warm up the cache (other jobs run in parallel)
18201885
name: op-stack-go-docker-build-release
18211886
filters:
18221887
tags:
1823-
only: /^(proxyd|chain-mon|indexer|ci-builder(-rust)?|ufm-[a-z0-9\-]*|op-[a-z0-9\-]*)\/v.*/
1888+
only: /^(da-server|proxyd|chain-mon|indexer|ci-builder(-rust)?|ufm-[a-z0-9\-]*|op-[a-z0-9\-]*)\/v.*/
18241889
branches:
18251890
ignore: /.*/
18261891
docker_name: op-stack-go
@@ -1933,6 +1998,21 @@ workflows:
19331998
release: true
19341999
context:
19352000
- oplabs-gcr-release
2001+
- docker-build:
2002+
name: da-server-docker-release
2003+
filters:
2004+
tags:
2005+
only: /^da-server\/v.*/
2006+
branches:
2007+
ignore: /.*/
2008+
docker_name: da-server
2009+
docker_tags: <<pipeline.git.revision>>
2010+
requires: ['op-stack-go-docker-build-release']
2011+
platforms: "linux/amd64,linux/arm64"
2012+
publish: true
2013+
release: true
2014+
context:
2015+
- oplabs-gcr-release
19362016
- docker-build:
19372017
name: op-ufm-docker-release
19382018
filters:

.github/CODEOWNERS

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# Packages
2-
/packages/chain-mon @ethereum-optimism/devxpod
2+
/packages/chain-mon @ethereum-optimism/security-reviewers
3+
/packages/chain-mon/src/balance-mon @ethereum-optimism/infra-reviewers
34
/packages/common-ts @ethereum-optimism/typescript-reviewers
45
/packages/contracts-bedrock @ethereum-optimism/contract-reviewers
56
/packages/core-utils @ethereum-optimism/legacy-reviewers

.github/actions/setup/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ runs:
44
using: composite
55
steps:
66
- name: Setup pnpm
7-
uses: pnpm/action-setup@v2
7+
uses: pnpm/action-setup@v3
88
with:
9-
version: 8.6.5
9+
version: 9
1010
- name: Setup node
1111
uses: actions/setup-node@v3
1212
with:

.github/workflows/tag-service.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ on:
3030
- op-program
3131
- op-dispute-mon
3232
- op-ufm
33+
- da-server
3334
- proxyd
3435
- ufm-metamask
3536
- op-contracts

.gitmodules

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,6 @@
77
[submodule "packages/contracts-bedrock/lib/solmate"]
88
path = packages/contracts-bedrock/lib/solmate
99
url = https://github.com/transmissions11/solmate
10-
[submodule "packages/contracts-bedrock/lib/clones-with-immutable-args"]
11-
path = packages/contracts-bedrock/lib/clones-with-immutable-args
12-
url = https://github.com/Saw-mon-and-Natalie/clones-with-immutable-args
1310
[submodule "packages/contracts-bedrock/lib/forge-std"]
1411
path = packages/contracts-bedrock/lib/forge-std
1512
url = https://github.com/foundry-rs/forge-std

Makefile

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,18 @@ golang-docker:
4141
op-node op-batcher op-proposer op-challenger
4242
.PHONY: golang-docker
4343

44+
chain-mon-docker:
45+
# We don't use a buildx builder here, and just load directly into regular docker, for convenience.
46+
GIT_COMMIT=$$(git rev-parse HEAD) \
47+
GIT_DATE=$$(git show -s --format='%ct') \
48+
IMAGE_TAGS=$$(git rev-parse HEAD),latest \
49+
docker buildx bake \
50+
--progress plain \
51+
--load \
52+
-f docker-bake.hcl \
53+
chain-mon
54+
.PHONY: chain-mon-docker
55+
4456
contracts-bedrock-docker:
4557
IMAGE_TAGS=$$(git rev-parse HEAD),latest \
4658
docker buildx bake \

0 commit comments

Comments
 (0)