-
Notifications
You must be signed in to change notification settings - Fork 621
feat(permissionless batches): batch production toolkit and operator recovery #1555
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
jonastheis
wants to merge
135
commits into
develop
Choose a base branch
from
jt/permissionless-batches-recovery
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from 16 commits
Commits
Show all changes
135 commits
Select commit
Hold shift + click to select a range
dca69ce
implement first steps for minimal recovery to permissionlessly produc…
jonastheis 2e09118
Merge remote-tracking branch 'origin/develop' into jt/permissionless-…
jonastheis 496314f
add config for recovery mode
jonastheis c12d380
structure code and implement restoreMinimalPreviousState and fetchL2B…
jonastheis c329959
produce chunks from specified L2 blocks and batch from chunks
jonastheis 71f240b
start implementation of restoring full previous state for relayer
jonastheis acc7083
implement processFinalizedBatch
jonastheis 59ea991
handle batches
jonastheis 2df07a9
introduce ForceL1MessageCount to config to be able to set a custom L1…
jonastheis 0f5ebf3
add Dockerfile for relayer in permissionless batches mode
jonastheis f96af8e
add docker compose file to spin up all necessary services together
jonastheis 16a471d
move docker file to build/dockerfiles
jonastheis d25094b
add coordinator-cron and proving-service-bundle
jonastheis 603feed
add bundle creation
jonastheis 5ddd6d6
add permissionless-batches/conf/ to dockerignore files
jonastheis 5ff6fd0
refactor cmd/permissionless_batches/app
jonastheis 0108873
implement RecoveryNeeded functionality to allow re-running without ov…
jonastheis a6f914a
refactor cmd/rollup_relayer/app and split into FullRecovery struct
jonastheis 0123502
clean up
jonastheis 596d9fe
introduce profiles to docker-compose.yml
jonastheis d85bdf5
initial instructions in README.md
jonastheis a9eac08
address review comments
jonastheis 606162e
add dummy configuration and documentation for permissionless batch pr…
jonastheis 30c0201
ignore /conf folder from git
jonastheis ec9d862
add documentation for operator recovery
jonastheis 6ef4775
address review comments
jonastheis 41606fe
support first version of CodecV6 in relayer and add functionality to …
jonastheis 0c0c417
adjust Sender to support multiple blobs when sending a transaction
jonastheis 78c9963
implement batch submission of multiple batches per transaction and co…
jonastheis 940fde0
implement missing part of commit logic for CodecV6
jonastheis ca8d930
feat(rollup-relayer): add Euclid support
omerfirmak 421afe9
deprecate halo2 provers, start openvm prover
omerfirmak b460d4a
Merge remote-tracking branch 'origin/omerfirmak/mpt' into feat/use-co…
jonastheis 182f8e3
update go.mod to latest da-codec version V7
jonastheis 783b965
update go.mod to latest da-codec version V7
jonastheis 5a479c3
address review comments
jonastheis 310abdd
add InitialL1MessageQueueHash and LastL1MessageQueueHash to chunk and…
jonastheis 2efbbd7
add support for bundles with CodecV7
jonastheis e713424
update contextIDFromBatches prefix to v7
jonastheis f4e17bc
fix ci
jonastheis 99c0a9f
update to latest da-codec
jonastheis 8db5339
fix issues with chunks when handling CodecV7
jonastheis 69a80d4
add testCommitBatchAndFinalizeBundleCodecV7 for relayer
jonastheis 5f22950
feat(prover): euclid prover first draft
omerfirmak 9412c7f
feat(coordinator): abstract proof types behind an interface
omerfirmak c3a3bad
feat(rollup-relayer): add Euclid support
omerfirmak 2de45f0
feat(coordinator): add euclid proof types
omerfirmak f01af24
fix: potentially flaky testResubmitZeroGasPriceTransaction
omerfirmak 2bd0655
feat: Add Euclid verifier
omerfirmak 848d3a6
fix: re-enable supported forks check
omerfirmak e5ad9c6
feat: allow stopping fake finalization at fork boundary
omerfirmak b424cef
feat: add CPU prover dockerfile
omerfirmak ac17696
feat: update contracts to euclid version
omerfirmak d503d4a
fix: base64 encode VKs
omerfirmak bf08436
fix: prover using wrong resources for batch/bundle circuits
omerfirmak 83c73f8
fix: coordinator ignore euclid transition chunk
omerfirmak d3acd6b
adjust to recent CodecV7 changes. remove initialL1MessageQueueIndex a…
jonastheis f13863e
Merge remote-tracking branch 'origin/omerfirmak/euclid-prover' into f…
jonastheis 8b57dd6
fixes after merge
jonastheis 37924b0
feat: bump zkvm-prover to rc4
omerfirmak fbc14ac
address review comments
jonastheis 867fda6
fix: add batch tasks details for v6 codec
omerfirmak 2e9827a
fix: properly propagate verifier errors
omerfirmak 01fa3b3
feat: use verifier-only types in coordinator
omerfirmak 50ebf17
fix: generate evm proofs for bundles
omerfirmak e1a0bab
add new contract ABI and adjust submission to it
jonastheis bb9d404
fix: force byte arrays to be marshaled as JSON arrays
omerfirmak 0125dd6
add new contract ABI
jonastheis 121ce09
update config and adjust to new contract ABI
jonastheis ed394a6
make sure that all batches committed in the same tx are part of the s…
jonastheis a55de1f
feat: set code tx support (#1600)
colinlyguo 89ede0d
build rollup images with --platform=linux/amd64
jonastheis 782e019
Merge branch 'feat/use-codec-v6' of github.com:scroll-tech/scroll int…
jonastheis 081d289
update da-codec dependency
jonastheis 47a6c23
fix bug where chunk and batch blocks mismatch
jonastheis eb5758b
feat: bump to zkvm-prover rc5
roynalnaruto 7353f30
update l2geth version in go.mod
jonastheis 673777f
use go 1.22 in Dockerfile builder
jonastheis 554a233
refactor: move euclid prover to new subdir
omerfirmak e27ab5a
Merge remote-tracking branch 'origin/develop' into omerfirmak/euclid-…
omerfirmak 26a49cb
Merge remote-tracking branch 'origin/omerfirmak/euclid-prover' into f…
jonastheis 8ea4315
update go.work.sum
jonastheis 55b32e1
add debug log message
jonastheis d6674e8
add configuration parameter maxChunksPerBatch for batch proposer
jonastheis a1c4562
add configuration parameter maxChunksPerBatch for batch proposer
jonastheis c8b614f
unit tests fix
colinlyguo f91c999
fix batch proposer panic
Thegaram 82dd5e0
feat(bridge-history): support codecv7
colinlyguo 4333d51
Revert "feat(bridge-history): support codecv7"
colinlyguo b30f4d0
chore(zkvm-circuit): upgrade to 0.1.0-rc.6 (#1610)
colinlyguo 03c63a6
update batch/chunk details for phase2
omerfirmak 9f4c9ee
fix: prover version (#1611)
yiweichi 101cc46
update dependencies
colinlyguo a868bc1
simplify version checks
colinlyguo 8b08a57
Revert "simplify version checks"
colinlyguo f1ea4b3
process task with CodecV7, add check for BlobDataProof length and add…
jonastheis b7e7d1a
Merge remote-tracking branch 'origin/omerfirmak/euclid-prover' into f…
jonastheis 94bee19
feat(bridge-history): support codecv7 (#1609)
colinlyguo f27ddb7
remove debug line
jonastheis da96331
tweak comments and some renamings
colinlyguo d79aaef
fix CI
jonastheis ab7038c
Merge branch 'feat/use-codec-v6' of github.com:scroll-tech/scroll int…
jonastheis 47219f2
run goimports
jonastheis 95adcc3
fix tests
jonastheis 224546e
add new ABI and add more tests
jonastheis 0799dd4
fix linter
jonastheis 7a70e37
fix test
jonastheis 57d50b7
Merge branch 'develop' into omerfirmak/euclid-prover
omerfirmak 20dffe4
chore: auto version bump [bot]
omerfirmak 867307d
Merge remote-tracking branch 'origin/omerfirmak/euclid-prover' into f…
jonastheis c9f6e8c
Merge remote-tracking branch 'origin/develop' into feat/use-codec-v6
jonastheis 9b462e4
go mod tidy
jonastheis d57e6b0
chore: auto version bump [bot]
jonastheis 4d677b3
address review comments
jonastheis 90d1563
Merge remote-tracking branch 'origin/develop' into feat/use-codec-v6
jonastheis d987931
go mod tidy
jonastheis 38b3239
chore: auto version bump [bot]
jonastheis e99a851
Merge branch 'feat/use-codec-v6' of github.com:scroll-tech/scroll int…
jonastheis bb6ee2c
Merge branch 'develop' into feat/use-codec-v6
jonastheis 2d84478
Merge remote-tracking branch 'origin/feat/use-codec-v6' into jt/permi…
jonastheis a8511d5
adjust minimal recovery to changes from CodecV7
jonastheis a16b906
add submission of permissionless batch
jonastheis 942f883
Merge remote-tracking branch 'origin/develop' into jt/permissionless-…
jonastheis 495921c
Merge remote-tracking branch 'origin/develop' into jt/permissionless-…
jonastheis 6414767
update da-codec to latest version
jonastheis 596fabf
update l2geth to latest version
jonastheis 81df41c
add better error handling and wait for transaction confirmation
jonastheis c2152b1
fix issue with replaced l2geth dependency
jonastheis 8009bd1
Merge branch 'develop' into jt/permissionless-batches-recovery
yiweichi 9d54bc2
Merge branch 'develop' into jt/permissionless-batches-recovery
yiweichi ac3305c
Merge branch 'develop' into jt/permissionless-batches-recovery
yiweichi 9d09283
morty/permissionless batches recovery (#1639)
yiweichi d3d5f1f
Merge branch 'develop' into jt/permissionless-batches-recovery
jonastheis 22a6a6e
Merge remote-tracking branch 'origin/develop' into jt/permissionless-…
jonastheis 867c101
implement decoding of codecv7 batches and insertion of chunks, batche…
jonastheis File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,3 +4,5 @@ docs/ | |
l2geth/ | ||
rpc-gateway/ | ||
*target/* | ||
|
||
permissionless-batches/conf/ |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,3 +4,5 @@ docs/ | |
l2geth/ | ||
rpc-gateway/ | ||
*target/* | ||
|
||
permissionless-batches/conf/ |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,3 +4,5 @@ docs/ | |
l2geth/ | ||
rpc-gateway/ | ||
*target/* | ||
|
||
permissionless-batches/conf/ |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,8 @@ | ||
assets/ | ||
contracts/ | ||
docs/ | ||
l2geth/ | ||
rpc-gateway/ | ||
*target/* | ||
*target/* | ||
|
||
permissionless-batches/conf/ |
30 changes: 30 additions & 0 deletions
30
build/dockerfiles/recovery_permissionless_batches.Dockerfile
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
# Download Go dependencies | ||
FROM scrolltech/go-rust-builder:go-1.21-rust-nightly-2023-12-03 as base | ||
|
||
WORKDIR /src | ||
COPY go.work* ./ | ||
COPY ./rollup/go.* ./rollup/ | ||
COPY ./common/go.* ./common/ | ||
COPY ./coordinator/go.* ./coordinator/ | ||
COPY ./database/go.* ./database/ | ||
COPY ./tests/integration-test/go.* ./tests/integration-test/ | ||
COPY ./bridge-history-api/go.* ./bridge-history-api/ | ||
RUN go mod download -x | ||
|
||
# Build rollup_relayer | ||
FROM base as builder | ||
|
||
RUN --mount=target=. \ | ||
--mount=type=cache,target=/root/.cache/go-build \ | ||
cd /src/rollup/cmd/permissionless_batches/ && CGO_LDFLAGS="-ldl" go build -v -p 4 -o /bin/rollup_relayer | ||
|
||
# Pull rollup_relayer into a second stage deploy ubuntu container | ||
FROM ubuntu:20.04 | ||
|
||
RUN apt update && apt install vim netcat-openbsd net-tools curl ca-certificates -y | ||
|
||
ENV CGO_LDFLAGS="-ldl" | ||
|
||
COPY --from=builder /bin/rollup_relayer /bin/ | ||
WORKDIR /app | ||
ENTRYPOINT ["rollup_relayer"] |
8 changes: 8 additions & 0 deletions
8
build/dockerfiles/recovery_permissionless_batches.Dockerfile.dockerignore
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
assets/ | ||
contracts/ | ||
docs/ | ||
l2geth/ | ||
rpc-gateway/ | ||
*target/* | ||
|
||
permissionless-batches/conf/ |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,8 @@ | ||
assets/ | ||
contracts/ | ||
docs/ | ||
l2geth/ | ||
rpc-gateway/ | ||
*target/* | ||
*target/* | ||
|
||
permissionless-batches/conf/ |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,4 +7,5 @@ use ( | |
./database | ||
./rollup | ||
./tests/integration-test | ||
//../go-ethereum | ||
) |
Large diffs are not rendered by default.
Oops, something went wrong.
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
name: permissionless-batches | ||
|
||
services: | ||
relayer: | ||
build: | ||
context: ../ | ||
dockerfile: build/dockerfiles/recovery_permissionless_batches.Dockerfile | ||
container_name: permissionless-batches-relayer | ||
volumes: | ||
- ./conf/relayer:/app/conf | ||
command: "--config /app/conf/config.json" | ||
depends_on: | ||
db: | ||
condition: service_healthy | ||
|
||
db: | ||
image: postgres:17.0 | ||
environment: | ||
POSTGRES_HOST_AUTH_METHOD: trust | ||
POSTGRES_USER: postgres | ||
POSTGRES_DB: scroll | ||
healthcheck: | ||
test: [ "CMD-SHELL", "pg_isready -U postgres" ] | ||
interval: 1s | ||
timeout: 1s | ||
retries: 10 | ||
volumes: | ||
- db_data:/var/lib/postgresql/data | ||
ports: | ||
- "5432:5432" | ||
|
||
coordinator: | ||
build: | ||
context: ../ | ||
dockerfile: build/dockerfiles/coordinator-api.Dockerfile | ||
volumes: | ||
- ./conf/coordinator/:/app/conf | ||
command: "--config /app/conf/config.json --http.port 8390 --verbosity 5" | ||
depends_on: | ||
db: | ||
condition: service_healthy | ||
healthcheck: | ||
test: ["CMD", "curl", "-f", "http://localhost:8390/coordinator/v1/challenge"] | ||
interval: 1s | ||
timeout: 1s | ||
retries: 10 | ||
start_period: 5m | ||
|
||
coordinator-cron: | ||
build: | ||
context: ../ | ||
dockerfile: build/dockerfiles/coordinator-cron.Dockerfile | ||
volumes: | ||
- ./conf/coordinator/:/app/conf | ||
command: "--config /app/conf/config.json --verbosity 3" | ||
depends_on: | ||
db: | ||
condition: service_healthy | ||
|
||
|
||
proving-service-chunk: | ||
image: scrolltech/sdk-cloud-prover:sindri-v0.0.5 | ||
platform: linux/amd64 | ||
command: "--config /app/config.json" | ||
environment: | ||
PROVER_NAME_PREFIX: "sindri_chunk" | ||
CIRCUIT_TYPE: 1 # 1 for chunk proving | ||
N_WORKERS: 1 | ||
volumes: | ||
- ./conf/proving-service/chunk/:/app/ | ||
- ./conf/proving-service/config.json:/app/config.json | ||
depends_on: | ||
coordinator: | ||
condition: service_healthy | ||
|
||
proving-service-batch: | ||
image: scrolltech/sdk-cloud-prover:sindri-v0.0.5 | ||
platform: linux/amd64 | ||
command: "--config /app/config.json" | ||
environment: | ||
PROVER_NAME_PREFIX: "sindri_batch" | ||
CIRCUIT_TYPE: 2 # 2 for batch proving | ||
N_WORKERS: 1 | ||
volumes: | ||
- ./conf/proving-service/batch/:/app | ||
- ./conf/proving-service/config.json:/app/config.json | ||
depends_on: | ||
coordinator: | ||
condition: service_healthy | ||
|
||
proving-service-bundle: | ||
image: scrolltech/sdk-cloud-prover:sindri-v0.0.5 | ||
platform: linux/amd64 | ||
command: "--config /app/config.json" | ||
environment: | ||
PROVER_NAME_PREFIX: "sindri_bundle" | ||
CIRCUIT_TYPE: 3 # 3 for bundle proving | ||
N_WORKERS: 1 | ||
volumes: | ||
- ./conf/proving-service/bundle/:/app | ||
- ./conf/proving-service/config.json:/app/config.json | ||
depends_on: | ||
coordinator: | ||
condition: service_healthy | ||
|
||
volumes: | ||
db_data: |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
package app | ||
|
||
import ( | ||
"context" | ||
"fmt" | ||
"os" | ||
|
||
"github.com/prometheus/client_golang/prometheus" | ||
"github.com/scroll-tech/go-ethereum/ethclient" | ||
"github.com/scroll-tech/go-ethereum/log" | ||
"github.com/urfave/cli/v2" | ||
|
||
"scroll-tech/common/database" | ||
"scroll-tech/common/observability" | ||
"scroll-tech/common/utils" | ||
"scroll-tech/common/version" | ||
"scroll-tech/rollup/internal/config" | ||
"scroll-tech/rollup/internal/controller/permissionless_batches" | ||
"scroll-tech/rollup/internal/controller/watcher" | ||
) | ||
|
||
var app *cli.App | ||
|
||
func init() { | ||
// Set up rollup-relayer app info. | ||
app = cli.NewApp() | ||
app.Action = action | ||
app.Name = "permissionless-batches" | ||
app.Usage = "The Scroll Rollup Relayer for permissionless batch production" | ||
app.Version = version.Version | ||
app.Flags = append(app.Flags, utils.CommonFlags...) | ||
app.Flags = append(app.Flags, utils.RollupRelayerFlags...) | ||
app.Commands = []*cli.Command{} | ||
app.Before = func(ctx *cli.Context) error { | ||
return utils.LogSetup(ctx) | ||
} | ||
} | ||
|
||
func action(ctx *cli.Context) error { | ||
// Load config file. | ||
cfgFile := ctx.String(utils.ConfigFileFlag.Name) | ||
cfg, err := config.NewConfig(cfgFile) | ||
if err != nil { | ||
log.Crit("failed to load config file", "config file", cfgFile, "error", err) | ||
} | ||
|
||
subCtx, cancel := context.WithCancel(ctx.Context) | ||
defer cancel() | ||
|
||
// Make sure the required fields are set. | ||
if cfg.RecoveryConfig.L1BlockHeight == 0 { | ||
return fmt.Errorf("L1 block height must be specified") | ||
} | ||
if cfg.RecoveryConfig.LatestFinalizedBatch == 0 { | ||
return fmt.Errorf("latest finalized batch must be specified") | ||
} | ||
|
||
// init db connection | ||
db, err := database.InitDB(cfg.DBConfig) | ||
if err != nil { | ||
log.Crit("failed to init db connection", "err", err) | ||
} | ||
defer func() { | ||
if err = database.CloseDB(db); err != nil { | ||
log.Crit("failed to close db connection", "error", err) | ||
} | ||
}() | ||
|
||
registry := prometheus.DefaultRegisterer | ||
observability.Server(ctx, db) | ||
|
||
genesisPath := ctx.String(utils.Genesis.Name) | ||
genesis, err := utils.ReadGenesis(genesisPath) | ||
if err != nil { | ||
log.Crit("failed to read genesis", "genesis file", genesisPath, "error", err) | ||
} | ||
|
||
chunkProposer := watcher.NewChunkProposer(subCtx, cfg.L2Config.ChunkProposerConfig, genesis.Config, db, registry) | ||
batchProposer := watcher.NewBatchProposer(subCtx, cfg.L2Config.BatchProposerConfig, genesis.Config, db, registry) | ||
bundleProposer := watcher.NewBundleProposer(subCtx, cfg.L2Config.BundleProposerConfig, genesis.Config, db, registry) | ||
|
||
// Init l2geth connection | ||
l2client, err := ethclient.Dial(cfg.L2Config.Endpoint) | ||
if err != nil { | ||
return fmt.Errorf("failed to connect to L2geth at RPC=%s: %w", cfg.L2Config.Endpoint, err) | ||
} | ||
|
||
l2Watcher := watcher.NewL2WatcherClient(subCtx, l2client, cfg.L2Config.Confirmations, cfg.L2Config.L2MessageQueueAddress, cfg.L2Config.WithdrawTrieRootSlot, genesis.Config, db, registry) | ||
|
||
recovery := permissionless_batches.NewRecovery(subCtx, cfg, genesis, db, chunkProposer, batchProposer, bundleProposer, l2Watcher) | ||
|
||
if recovery.RecoveryNeeded() { | ||
if err = recovery.Run(); err != nil { | ||
return fmt.Errorf("failed to run recovery: %w", err) | ||
} | ||
log.Info("Success! You're ready to generate proofs!") | ||
} else { | ||
log.Info("TODO: Batch submission") | ||
} | ||
|
||
return nil | ||
} | ||
|
||
// Run rollup relayer cmd instance. | ||
func Run() { | ||
if err := app.Run(os.Args); err != nil { | ||
_, _ = fmt.Fprintln(os.Stderr, err) | ||
os.Exit(1) | ||
} | ||
} |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
package main | ||
|
||
import "scroll-tech/rollup/cmd/permissionless_batches/app" | ||
|
||
func main() { | ||
app.Run() | ||
} |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you mean the finalizeBundle?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no, I mean a new function on the contracts for permissionless mode (
commitAndFinalizeBatch
) to submit the batch and finalize in one go. However, the implementation is not yet done and changing as we won't have SGX for now: https://github.com/scroll-tech/scroll-contracts/pull/61/files#diff-569c04365d5a05d8c3084fec1c23fa7d12607340e012df710d3c5963bd1684beR511