Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
3 changes: 2 additions & 1 deletion espresso/devnet-tests/devnet_tools.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,9 @@ func (d *Devnet) Up() (err error) {
"docker", "compose", "up", "-d",
)
cmd.Env = append(
cmd.Env,
os.Environ(),
fmt.Sprintf("OP_BATCHER_PRIVATE_KEY=%s", hex.EncodeToString(crypto.FromECDSA(d.secrets.Batcher))),
"COMPOSE_PROFILES=default",
)
buf := new(bytes.Buffer)
cmd.Stderr = buf
Expand Down
4 changes: 2 additions & 2 deletions espresso/docker/l1-geth/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# L1 Geth Dockerfile, modified from ops/docker/deployment-utils/Dockerfile
FROM golang:1.24-alpine AS builder
FROM golang:1.23-alpine AS builder

# Install build dependencies
RUN apk add --no-cache \
Expand All @@ -12,7 +12,7 @@ RUN apk add --no-cache \

# Build eth-beacon-genesis
RUN --mount=type=cache,target=/go/pkg/mod --mount=type=cache,target=/root/.cache/go-build \
go install -ldflags '-linkmode external -extldflags "-static"' \
GOTOOLCHAIN=auto go install -ldflags '-linkmode external -extldflags "-static"' \
github.com/ethpandaops/eth-beacon-genesis/cmd/eth-beacon-genesis@703e97a

# Build eth2-val-tools
Expand Down
4 changes: 2 additions & 2 deletions espresso/docker/op-geth/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ RUN cp ./verification/rust/target/release/libespresso_crypto_helper.a \
/libespresso/libespresso_crypto_helper-x86_64-unknown-linux-gnu.a

# CGO builder for components that need Espresso crypto linking
FROM alpine:3.22 AS op-cgo-builder
FROM golang:1.23.8-alpine3.20 AS op-cgo-builder
# Install dependencies
RUN apk add musl-dev gcc go g++ curl tar gzip make gcc linux-headers git jq bash yq
RUN apk add musl-dev gcc g++ curl tar gzip make linux-headers git jq bash yq
# Install just from mise
COPY ./mise.toml .
RUN curl -L https://github.com/casey/just/releases/download/$(yq '.tools.just' mise.toml)/just-$(yq '.tools.just' mise.toml)-x86_64-unknown-linux-musl.tar.gz | \
Expand Down
26 changes: 13 additions & 13 deletions espresso/docker/op-stack/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ ARG TARGETOS
ARG TARGETARCH

# Base builder image
FROM golang:1.24.5-alpine3.22 AS builder
FROM golang:1.23.8-alpine3.20 AS builder

RUN apk add --no-cache curl tar gzip make gcc musl-dev linux-headers git jq bash

Expand Down Expand Up @@ -59,9 +59,9 @@ RUN cp ./verification/rust/target/release/libespresso_crypto_helper.a \
/libespresso/libespresso_crypto_helper-x86_64-unknown-linux-gnu.a

# CGO builder for components that need Espresso crypto linking
FROM alpine:3.22 AS op-cgo-builder
FROM golang:1.23.8-alpine3.20 AS op-cgo-builder
# Install dependencies
RUN apk add musl-dev gcc go g++ curl tar gzip make gcc linux-headers git jq bash yq
RUN apk add musl-dev gcc g++ curl tar gzip make linux-headers git jq bash yq
# Install just from mise
COPY ./mise.toml .
RUN case $(uname -m) in \
Expand Down Expand Up @@ -109,10 +109,8 @@ RUN --mount=type=cache,target=/go/pkg/mod --mount=type=cache,target=/root/.cache
GOOS=$TARGETOS GOARCH=$TARGETARCH GITCOMMIT=$GIT_COMMIT GITDATE=$GIT_DATE VERSION="$OP_PROPOSER_VERSION"
RUN --mount=type=cache,target=/go/pkg/mod --mount=type=cache,target=/root/.cache/go-build cd op-challenger && make op-challenger \
GOOS=$TARGETOS GOARCH=$TARGETARCH GITCOMMIT=$GIT_COMMIT GITDATE=$GIT_DATE VERSION="$OP_PROPOSER_VERSION"
RUN --mount=type=cache,target=/go/pkg/mod --mount=type=cache,target=/root/.cache/go-build make cannon-prestate \
GOOS=$TARGETOS GOARCH=$TARGETARCH GITCOMMIT=$GIT_COMMIT GITDATE=$GIT_DATE VERSION="$OP_PROPOSER_VERSION"

FROM golang:1.24-alpine AS deployment-utils-builder
FROM golang:1.23-alpine AS deployment-utils-builder
ENV GOOS=$TARGETOS GOARCH=$TARGETARCH GITCOMMIT=$GIT_COMMIT GITDATE=$GIT_DATE
RUN apk add gcc lld musl-dev # For CGO
RUN --mount=type=cache,target=/go/pkg/mod --mount=type=cache,target=/root/.cache/go-build go install -ldflags '-linkmode external -extldflags "-static"' github.com/tomwright/dasel/v2/cmd/dasel@v2.8.1
Expand Down Expand Up @@ -175,13 +173,15 @@ RUN apk add jq
COPY espresso/docker/op-stack/entrypoint.sh /bin/entrypoint.sh
RUN chmod +x /bin/entrypoint.sh
COPY --from=op-proposer-builder /app/op-challenger/bin/op-challenger /usr/local/bin
COPY --from=op-proposer-builder /app/cannon/bin/cannon /usr/local/bin
COPY --from=op-proposer-builder /app/op-program/bin/op-program /usr/local/bin
COPY --from=op-proposer-builder /app/op-program/bin/prestate-proof.json /app/prestate-proof.json

ENV OP_CHALLENGER_CANNON_BIN /usr/local/bin/cannon
ENV OP_CHALLENGER_CANNON_SERVER /usr/local/bin/op-program
ENV OP_CHALLENGER_CANNON_PRESTATE /app/prestate-proof.json
# Note: cannon, op-program, and prestate-proof.json are not built in this Dockerfile
# They would require separate builder stages with CGO support
# COPY --from=op-proposer-builder /app/cannon/bin/cannon /usr/local/bin
# COPY --from=op-proposer-builder /app/op-program/bin/op-program /usr/local/bin
# COPY --from=op-proposer-builder /app/op-program/bin/prestate-proof.json /app/prestate-proof.json

# ENV OP_CHALLENGER_CANNON_BIN /usr/local/bin/cannon
# ENV OP_CHALLENGER_CANNON_SERVER /usr/local/bin/op-program
# ENV OP_CHALLENGER_CANNON_PRESTATE /app/prestate-proof.json
ENV ENV_PREFIX OP_CHALLENGER

ENTRYPOINT [ "/bin/entrypoint.sh" ]
Expand Down
5 changes: 3 additions & 2 deletions espresso/environment/enclave_helpers.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,9 @@ func appendArg(args *[]string, flagName string, value any) {

strSliceValue, isStrSlice := value.([]string)
if isStrSlice {
*args = append(*args, fmt.Sprintf("--%s", flagName), strings.Join(strSliceValue, ","))
if len(strSliceValue) > 0 {
*args = append(*args, fmt.Sprintf("--%s", flagName), strings.Join(strSliceValue, ","))
}
return
}

Expand Down Expand Up @@ -91,7 +93,6 @@ func LaunchBatcherInEnclave() DevNetLauncherOption {
// as Odyn proxy inside the enclave doesn't support websocket
l1Rpc := sys.L1.UserRPC().(endpoint.HttpRPC).HttpRPC()
appendArg(&args, flags.L1EthRpcFlag.Name, l1Rpc)
appendArg(&args, txmgr.L1RPCFlagName, l1Rpc)
l2EthRpc := sys.EthInstances[e2esys.RoleSeq].UserRPC().(endpoint.HttpRPC).HttpRPC()
appendArg(&args, flags.L2EthRpcFlag.Name, l2EthRpc)
rollupRpc := sys.RollupNodes[e2esys.RoleSeq].UserRPC().(endpoint.HttpRPC).HttpRPC()
Expand Down
3 changes: 3 additions & 0 deletions espresso/scripts/prepare-allocs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,9 @@ op-deployer bootstrap implementations \
--artifacts-locator="${ARTIFACTS_DIR}" \
--protocol-versions-proxy=`jq -r .protocolVersionsProxyAddress < ${DEPLOYER_DIR}/bootstrap_superchain.json` \
--superchain-config-proxy=`jq -r .superchainConfigProxyAddress < ${DEPLOYER_DIR}/bootstrap_superchain.json` \
--superchain-proxy-admin=`jq -r .proxyAdminAddress < ${DEPLOYER_DIR}/bootstrap_superchain.json` \
--upgrade-controller="${OPERATOR_ADDRESS}" \
--challenger="${OPERATOR_ADDRESS}" \
--outfile="${DEPLOYER_DIR}/bootstrap_implementations.json"

op-deployer init --l1-chain-id "${L1_CHAIN_ID}" \
Expand All @@ -74,6 +76,7 @@ dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .chains.[0].espressoEnabled -t boo
dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .chains.[0].preApprovedBatcherKey -v "${OPERATOR_ADDRESS}"
dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .l1ContractsLocator -v "${ARTIFACTS_DIR}"
dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .l2ContractsLocator -v "${ARTIFACTS_DIR}"
dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .opcmAddress -v `jq -r .opcmAddress < ${DEPLOYER_DIR}/bootstrap_implementations.json`
dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .fundDevAccounts -t bool -v true
dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .chains.[0].baseFeeVaultRecipient -v "${OPERATOR_ADDRESS}"
dasel put -f "${DEPLOYER_DIR}/intent.toml" -s .chains.[0].l1FeeVaultRecipient -v "${OPERATOR_ADDRESS}"
Expand Down
12 changes: 12 additions & 0 deletions espresso/streamer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,18 @@ func (l *NoOpLogger) Crit(msg string, ctx ...interface{}) { pan
func (l *NoOpLogger) Write(level slog.Level, msg string, attrs ...any) {}
func (l *NoOpLogger) Enabled(ctx context.Context, level slog.Level) bool { return true }
func (l *NoOpLogger) Handler() slog.Handler { return nil }
func (l *NoOpLogger) TraceContext(ctx context.Context, msg string, ctxArgs ...interface{}) {}
func (l *NoOpLogger) DebugContext(ctx context.Context, msg string, ctxArgs ...interface{}) {}
func (l *NoOpLogger) InfoContext(ctx context.Context, msg string, ctxArgs ...interface{}) {}
func (l *NoOpLogger) WarnContext(ctx context.Context, msg string, ctxArgs ...interface{}) {}
func (l *NoOpLogger) ErrorContext(ctx context.Context, msg string, ctxArgs ...interface{}) {}
func (l *NoOpLogger) CritContext(ctx context.Context, msg string, ctxArgs ...interface{}) {
panic("critical error")
}
func (l *NoOpLogger) LogAttrs(ctx context.Context, level slog.Level, msg string, attrs ...slog.Attr) {
}
func (l *NoOpLogger) SetContext(ctx context.Context) {}
func (l *NoOpLogger) WriteCtx(ctx context.Context, level slog.Level, msg string, args ...any) {}

func createHashFromHeight(height uint64) common.Hash {
var hash common.Hash
Expand Down
10 changes: 5 additions & 5 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@
];
pkgs = import inputs.nixpkgs { inherit overlays system; };

go_1_22_7 = pkgs.go_1_22.overrideAttrs (oldAttrs: {
version = "1.22.7";
go_1_23_8 = pkgs.go_1_23.overrideAttrs (oldAttrs: {
version = "1.23.8";

src = pkgs.fetchurl {
url = "https://go.dev/dl/go1.22.7.src.tar.gz";
sha256 = "sha256-ZkMth9heDPrD7f/mN9WTD8Td9XkzE/4R5KDzMwI8h58=";
url = "https://go.dev/dl/go1.23.8.src.tar.gz";
sha256 = "sha256-DKHx436iVePOKDrz9OYoUC+0RFh9qYelu5bWxvFZMNQ=";
};
});

Expand Down Expand Up @@ -123,7 +123,7 @@
enclaver
eth-beacon-genesis
eth2-val-tools
go_1_22_7
go_1_23_8

pkgs.awscli2
pkgs.cargo
Expand Down
6 changes: 3 additions & 3 deletions kurtosis-devnet/enclaver/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ ARG UBUNTU_TARGET_BASE_IMAGE=ubuntu:22.04
ARG KONA_VERSION="kona-client-v0.1.0-beta.5"

# We may be cross-building for another platform. Specify which platform we need as builder.
FROM --platform=$BUILDPLATFORM golang:1.22.7-alpine3.20 AS builder
FROM --platform=$BUILDPLATFORM golang:1.23.8-alpine3.20 AS builder


RUN apk add --no-cache curl tar gzip make gcc musl-dev linux-headers git jq bash
Expand Down Expand Up @@ -97,10 +97,10 @@ RUN set -e; \
sha256sum -c -

# We don't use the golang image for batcher because it doesn't play well with CGO
FROM --platform=$BUILDPLATFORM alpine:3.20 AS op-batcher-builder
FROM --platform=$BUILDPLATFORM golang:1.23.8-alpine3.20 AS op-batcher-builder
ARG OP_BATCHER_VERSION=v0.0.0
# Install dependencies
RUN apk add musl-dev gcc go g++ curl tar gzip make gcc linux-headers git jq bash yq
RUN apk add musl-dev gcc g++ curl tar gzip make linux-headers git jq bash yq
# Install just from mise (alpine's outdated and incompatible)
COPY ./mise.toml .
RUN curl -L https://github.com/casey/just/releases/download/$(yq '.tools.just' mise.toml)/just-$(yq '.tools.just' mise.toml)-x86_64-unknown-linux-musl.tar.gz | \
Expand Down
2 changes: 1 addition & 1 deletion kurtosis-devnet/enclaver/Dockerfile.nonEnclave
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ ARG UBUNTU_TARGET_BASE_IMAGE=ubuntu:22.04
ARG KONA_VERSION="kona-client-v0.1.0-beta.5"

# We may be cross-building for another platform. Specify which platform we need as builder.
FROM --platform=$BUILDPLATFORM golang:1.22.7-alpine3.20 AS builder
FROM --platform=$BUILDPLATFORM golang:1.23.8-alpine3.20 AS builder


RUN apk add --no-cache curl tar gzip make gcc musl-dev linux-headers git jq bash
Expand Down
18 changes: 13 additions & 5 deletions op-batcher/enclave-entrypoint.bash
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
# to directly pass commandline arguments when starting EIF images)

# We will need to start a proxy for each of those urls
URL_ARG_RE='^(--altda\.da-server|--espresso-url|--l1-eth-rpc|--l2-eth-rpc|--rollup-rpc|--signer\.endpoint)(=|$)'
URL_ARG_RE='^(--altda\.da-server|--espresso-url|--l1-eth-rpc|--l2-eth-rpc|--rollup-rpc|--signer\.endpoint)$'

# Re-populate the arguments passed through the environment
if [ -n "$ENCLAVE_BATCHER_ARGS" ]; then
Expand All @@ -27,6 +27,9 @@ fi

unset http_proxy HTTP_PROXY https_proxy HTTPS_PROXY

# Store the original arguments from ENCLAVE_BATCHER_ARGS
original_args=("$@")

# Launch nc listener to receive null-separated arguments
NC_PORT=8337
received_args=()
Expand All @@ -44,11 +47,13 @@ echo "Starting nc listener on port $NC_PORT (60 second timeout)"
} < <(nc -l -p "$NC_PORT" -w 60)

if [ ${#received_args[@]} -eq 0 ]; then
echo "Warning: No arguments received via nc listener within 60 seconds, continuing with existing arguments"
echo "Warning: No arguments received via nc listener within 60 seconds, using original arguments"
# Use original arguments from ENCLAVE_BATCHER_ARGS
set -- "${original_args[@]}"
else
echo "Received ${#received_args[@]} arguments via nc, appending to existing arguments"
# Append received arguments to existing positional parameters
set -- "$@" "${received_args[@]}"
echo "Received ${#received_args[@]} arguments via nc, merging with original arguments"
# Merge: original args + received args
set -- "${original_args[@]}" "${received_args[@]}"
fi

wait_for_port() {
Expand Down Expand Up @@ -157,3 +162,6 @@ all_args=("${filtered_args[@]}" "${url_args[@]}")

echo "${all_args[@]}"
op-batcher "${all_args[@]}"
exit_code=$?
echo "Debug: op-batcher exited with code $exit_code"
exit $exit_code
2 changes: 1 addition & 1 deletion op-batcher/flags/flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,7 @@ var Flags []cli.Flag
func CheckRequired(ctx *cli.Context) error {
for _, f := range requiredFlags {
if !ctx.IsSet(f.Names()[0]) {
return fmt.Errorf("flag %s is required", f.Names()[0])
return fmt.Errorf("flag %s is required for op-batcher", f.Names()[0])
}
}
return nil
Expand Down
2 changes: 1 addition & 1 deletion op-deployer/Dockerfile.default
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM golang:1.22-bookworm AS builder
FROM golang:1.23-bookworm AS builder
WORKDIR /app
COPY . .

Expand Down
6 changes: 6 additions & 0 deletions op-deployer/pkg/deployer/bootstrap/flags.go
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,11 @@ var (
Usage: "Superchain proxy admin.",
EnvVars: deployer.PrefixEnvVar("SUPERCHAIN_PROXY_ADMIN"),
}
ChallengerFlag = &cli.StringFlag{
Name: "challenger",
Usage: "Challenger address.",
EnvVars: deployer.PrefixEnvVar("CHALLENGER"),
}
ConfigFileFlag = &cli.StringFlag{
Name: "config",
Usage: "Path to a JSON file",
Expand All @@ -157,6 +162,7 @@ var ImplementationsFlags = []cli.Flag{
ProtocolVersionsProxyFlag,
UpgradeControllerFlag,
SuperchainProxyAdminFlag,
ChallengerFlag,
}

var ProxyFlags = []cli.Flag{
Expand Down
5 changes: 5 additions & 0 deletions op-node/metrics/metered/metered_l1fetcher.go
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,11 @@ func (m *MeteredL1Fetcher) FetchReceipts(ctx context.Context, blockHash common.H
return m.inner.FetchReceipts(ctx, blockHash)
}

func (m *MeteredL1Fetcher) L1FinalizedBlock() (eth.L1BlockRef, error) {
defer m.recordTime("L1FinalizedBlock")()
return m.inner.L1FinalizedBlock()
}

func (m *MeteredL1Fetcher) recordTime(method string) func() {
start := m.now()
return func() {
Expand Down
1 change: 1 addition & 0 deletions op-node/rollup/derive/altda_data_source_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -603,6 +603,7 @@ func TestAltDADataSourceL1FetcherErrors(t *testing.T) {
L2: refA0.ID(),
L2Time: refA0.Time,
},
L1ChainID: big.NewInt(1),
BlockTime: 1,
SeqWindowSize: 20,
BatchInboxAddress: batcherInbox,
Expand Down
1 change: 1 addition & 0 deletions op-node/rollup/derive/blob_data_source_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,7 @@ func TestBlobDataSourceL1FetcherErrors(t *testing.T) {
L2: refA0.ID(),
L2Time: refA0.Time,
},
L1ChainID: big.NewInt(1),
BlockTime: 1,
SeqWindowSize: 20,
BatchInboxAddress: batcherInbox,
Expand Down
1 change: 1 addition & 0 deletions op-node/rollup/derive/calldata_source_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ func TestCallDataSourceL1FetcherErrors(t *testing.T) {
L2: refA0.ID(),
L2Time: refA0.Time,
},
L1ChainID: big.NewInt(1),
BlockTime: 1,
SeqWindowSize: 20,
BatchInboxAddress: batcherInbox,
Expand Down
1 change: 1 addition & 0 deletions op-node/rollup/derive/pipeline.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ type L1Fetcher interface {
L1BlockRefByHashFetcher
L1ReceiptsFetcher
L1TransactionFetcher
L1FinalizedBlock() (eth.L1BlockRef, error)
}

type ResettableStage interface {
Expand Down
5 changes: 5 additions & 0 deletions op-service/sources/l1_client.go
Original file line number Diff line number Diff line change
Expand Up @@ -81,3 +81,8 @@ func (s *L1Client) L1BlockRefByNumber(ctx context.Context, num uint64) (eth.L1Bl
func (s *L1Client) L1BlockRefByHash(ctx context.Context, hash common.Hash) (eth.L1BlockRef, error) {
return s.BlockRefByHash(ctx, hash)
}

// L1FinalizedBlock returns the latest finalized L1 block reference.
func (s *L1Client) L1FinalizedBlock() (eth.L1BlockRef, error) {
return s.L1BlockRefByLabel(context.Background(), eth.Finalized)
}
9 changes: 9 additions & 0 deletions op-service/testutils/mock_l1.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,12 @@ func (m *MockL1Source) L1BlockRefByHash(ctx context.Context, hash common.Hash) (
func (m *MockL1Source) ExpectL1BlockRefByHash(hash common.Hash, ref eth.L1BlockRef, err error) {
m.Mock.On("L1BlockRefByHash", hash).Once().Return(ref, err)
}

func (m *MockL1Source) L1FinalizedBlock() (eth.L1BlockRef, error) {
out := m.Mock.Called()
return out.Get(0).(eth.L1BlockRef), out.Error(1)
}

func (m *MockL1Source) ExpectL1FinalizedBlock(ref eth.L1BlockRef, err error) {
m.Mock.On("L1FinalizedBlock").Once().Return(ref, err)
}
4 changes: 2 additions & 2 deletions ops/docker/op-stack-go/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -98,10 +98,10 @@ RUN set -e; \
sha256sum -c -

# We don't use the golang image for batcher & op-node because it doesn't play well with CGO
FROM --platform=$BUILDPLATFORM alpine:3.20 AS op-cgo-builder
FROM --platform=$BUILDPLATFORM golang:1.23.8-alpine3.20 AS op-cgo-builder
ARG OP_BATCHER_VERSION=v0.0.0
# Install dependencies
RUN apk add musl-dev gcc go g++ curl tar gzip make gcc linux-headers git jq bash yq
RUN apk add musl-dev gcc g++ curl tar gzip make linux-headers git jq bash yq
# Install just from mise (alpine's outdated and incompatible)
COPY ./mise.toml .
RUN curl -L https://github.com/casey/just/releases/download/$(yq '.tools.just' mise.toml)/just-$(yq '.tools.just' mise.toml)-x86_64-unknown-linux-musl.tar.gz | \
Expand Down
11 changes: 6 additions & 5 deletions packages/contracts-bedrock/foundry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,7 @@ timeout = 300

[profile.lite]
optimizer = false
optimizer_runs = 200

# IMPORTANT:
# See the info in the "DEFAULT" profile to understand this section.
Expand All @@ -142,11 +143,11 @@ additional_compiler_profiles = [
{ name = "via-ir", via_ir = true },
]
compilation_restrictions = [
{ paths = "src/dispute/FaultDisputeGame.sol", optimizer_runs = 0 },
{ paths = "src/dispute/PermissionedDisputeGame.sol", optimizer_runs = 0 },
{ paths = "src/L1/OPContractsManager.sol", optimizer_runs = 0 },
{ paths = "src/L1/OPContractsManagerStandardValidator.sol", optimizer_runs = 0 },
{ paths = "src/L1/OptimismPortal2.sol", optimizer_runs = 0 },
{ paths = "src/dispute/FaultDisputeGame.sol", optimizer_runs = 5000 },
{ paths = "src/dispute/PermissionedDisputeGame.sol", optimizer_runs = 5000 },
{ paths = "src/L1/OPContractsManager.sol", optimizer_runs = 5000 },
{ paths = "src/L1/OPContractsManagerStandardValidator.sol", optimizer_runs = 5000 },
{ paths = "src/L1/OptimismPortal2.sol", optimizer_runs = 5000 },
{ paths = "src/L1/StandardValidator.sol", optimizer_runs = 5000 },
{ paths = "lib/espresso-tee-contracts/lib/nitro-validator/**", via_ir = false },
{ paths = "lib/espresso-tee-contracts/lib/automata-dcap-attestation/**", via_ir = true },
Expand Down
Loading