Compare commits

..

7 Commits

Author SHA1 Message Date
colin
826357ab5d fix(rollup-relayer): update commit status logic (#1656) 2025-05-10 18:46:36 +08:00
georgehao
d26381cba3 upgrade cargo chef to 0.1.71 (#1655) 2025-05-08 21:40:25 +08:00
georgehao
0e65686ce4 upgrade intermdiate rust to 1.86.0 (#1654) 2025-05-08 19:30:13 +08:00
georgehao
6dd878eaca upgrade intermediate rust version (#1653) 2025-05-08 17:57:15 +08:00
colin
a18fe06440 feat: openvm v0.3.0 (#1648)
Co-authored-by: Velaciela <git.rover@outlook.com>
Co-authored-by: colinlyguo <colinlyguo@users.noreply.github.com>
2025-04-24 22:06:35 +08:00
colin
3ac69bec51 feat(rollup-relayer): add a tool to analyze chunk/batch/bundle proposing (#1645)
Co-authored-by: colinlyguo <colinlyguo@users.noreply.github.com>
2025-04-23 13:41:03 +08:00
colin
e80f030246 feat(gas-oracle): add a warn log when entering fallback mode (#1646) 2025-04-16 18:05:14 +08:00
29 changed files with 926 additions and 306 deletions

View File

@@ -42,6 +42,10 @@ jobs:
uses: Swatinem/rust-cache@v2
with:
workspaces: "common/libzkp/impl -> target"
- name: Setup SSH for private repos
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: ${{ secrets.OPENVM_GPU_SSH_PRIVATE_KEY }}
- name: Lint
working-directory: 'common'
run: |

View File

@@ -307,6 +307,13 @@ jobs:
REPOSITORY: coordinator-api
run: |
aws --region ${{ env.AWS_REGION }} ecr describe-repositories --repository-names ${{ env.REPOSITORY }} && : || aws --region ${{ env.AWS_REGION }} ecr create-repository --repository-name ${{ env.REPOSITORY }}
- name: Setup SSH for private repos
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: ${{ secrets.OPENVM_GPU_SSH_PRIVATE_KEY }}
- name: Run custom script
run: |
./build/dockerfiles/coordinator-api/init-openvm.sh
- name: Build and push
uses: docker/build-push-action@v3
env:

View File

@@ -24,6 +24,7 @@ on:
options:
- nightly-2023-12-03
- nightly-2022-12-10
- 1.86.0
default: "nightly-2023-12-03"
PYTHON_VERSION:
description: "Python version"
@@ -47,6 +48,7 @@ on:
type: choice
options:
- 0.1.41
- 0.1.71
BASE_IMAGE:
description: "which intermediate image you want to update"
required: true

View File

@@ -9,6 +9,10 @@ RUN cargo chef prepare --recipe-path recipe.json
FROM chef as zkp-builder
COPY ./common/libzkp/impl/rust-toolchain ./
COPY --from=planner /app/recipe.json recipe.json
# run ./build/dockerfiles/coordinator-api/init-openvm.sh to get openvm-gpu
COPY ./build/dockerfiles/coordinator-api/openvm-gpu /openvm-gpu
COPY ./build/dockerfiles/coordinator-api/gitconfig /root/.gitconfig
COPY ./build/dockerfiles/coordinator-api/config.toml /root/.cargo/config.toml
RUN cargo chef cook --release --recipe-path recipe.json
COPY ./common/libzkp/impl .

View File

@@ -0,0 +1,24 @@
# openvm
# same order and features as zkvm-prover/Cargo.toml.gpu
[patch."ssh://git@github.com/scroll-tech/openvm-gpu.git"]
openvm = { path = "/openvm-gpu/crates/toolchain/openvm", default-features = false }
openvm-algebra-complex-macros = { path = "/openvm-gpu/extensions/algebra/complex-macros", default-features = false }
openvm-algebra-guest = { path = "/openvm-gpu/extensions/algebra/guest", default-features = false }
openvm-bigint-guest = { path = "/openvm-gpu/extensions/bigint/guest", default-features = false }
openvm-build = { path = "/openvm-gpu/crates/toolchain/build", default-features = false }
openvm-circuit = { path = "/openvm-gpu/crates/vm", default-features = false }
openvm-custom-insn = { path = "/openvm-gpu/crates/toolchain/custom_insn", default-features = false }
openvm-continuations = { path = "/openvm-gpu/crates/continuations", default-features = false }
openvm-ecc-guest = { path = "/openvm-gpu/extensions/ecc/guest", default-features = false }
openvm-instructions ={ path = "/openvm-gpu/crates/toolchain/instructions", default-features = false }
openvm-keccak256-guest = { path = "/openvm-gpu/extensions/keccak256/guest", default-features = false }
openvm-native-circuit = { path = "/openvm-gpu/extensions/native/circuit", default-features = false }
openvm-native-compiler = { path = "/openvm-gpu/extensions/native/compiler", default-features = false }
openvm-native-recursion = { path = "/openvm-gpu/extensions/native/recursion", default-features = false }
openvm-native-transpiler = { path = "/openvm-gpu/extensions/native/transpiler", default-features = false }
openvm-pairing-guest = { path = "/openvm-gpu/extensions/pairing/guest", default-features = false }
openvm-rv32im-guest = { path = "/openvm-gpu/extensions/rv32im/guest", default-features = false }
openvm-rv32im-transpiler = { path = "/openvm-gpu/extensions/rv32im/transpiler", default-features = false }
openvm-sdk = { path = "/openvm-gpu/crates/sdk", default-features = false, features = ["parallel", "bench-metrics"] }
openvm-sha256-guest = { path = "/openvm-gpu/extensions/sha256/guest", default-features = false }
openvm-transpiler = { path = "/openvm-gpu/crates/toolchain/transpiler", default-features = false }

View File

@@ -0,0 +1,2 @@
[url "https://github.com/"]
insteadOf = ssh://git@github.com/

View File

@@ -0,0 +1,12 @@
#!/bin/bash
set -uex
OPENVM_GPU_COMMIT=dfa10b4
DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" > /dev/null 2>&1 && pwd)
# checkout openvm-gpu
if [ ! -d $DIR/openvm-gpu ]; then
git clone git@github.com:scroll-tech/openvm-gpu.git $DIR/openvm-gpu
fi
cd $DIR/openvm-gpu && git fetch && git checkout ${OPENVM_GPU_COMMIT}

View File

@@ -2852,8 +2852,8 @@ dependencies = [
[[package]]
name = "openvm"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"bytemuck",
"num-bigint 0.4.6",
@@ -2865,8 +2865,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -2894,7 +2894,7 @@ dependencies = [
[[package]]
name = "openvm-algebra-complex-macros"
version = "0.1.0"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-macros-common",
"quote",
@@ -2903,8 +2903,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"halo2curves-axiom",
"num-bigint 0.4.6",
@@ -2916,8 +2916,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-moduli-macros"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-macros-common",
"quote",
@@ -2926,8 +2926,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-algebra-guest",
"openvm-instructions",
@@ -2940,8 +2940,8 @@ dependencies = [
[[package]]
name = "openvm-bigint-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -2962,8 +2962,8 @@ dependencies = [
[[package]]
name = "openvm-bigint-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"num-bigint 0.4.6",
"num-traits",
@@ -2976,8 +2976,8 @@ dependencies = [
[[package]]
name = "openvm-bigint-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-bigint-guest",
"openvm-instructions",
@@ -2991,8 +2991,8 @@ dependencies = [
[[package]]
name = "openvm-build"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"cargo_metadata",
"eyre",
@@ -3003,8 +3003,8 @@ dependencies = [
[[package]]
name = "openvm-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"backtrace",
"cfg-if",
@@ -3034,8 +3034,8 @@ dependencies = [
[[package]]
name = "openvm-circuit-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"itertools 0.14.0",
"quote",
@@ -3044,8 +3044,8 @@ dependencies = [
[[package]]
name = "openvm-circuit-primitives"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"itertools 0.14.0",
@@ -3059,8 +3059,8 @@ dependencies = [
[[package]]
name = "openvm-circuit-primitives-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"itertools 0.14.0",
"quote",
@@ -3069,8 +3069,8 @@ dependencies = [
[[package]]
name = "openvm-continuations"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derivative",
"openvm-circuit",
@@ -3085,7 +3085,7 @@ dependencies = [
[[package]]
name = "openvm-custom-insn"
version = "0.1.0"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"proc-macro2",
"quote",
@@ -3094,8 +3094,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -3125,8 +3125,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"ecdsa",
"elliptic-curve",
@@ -3150,8 +3150,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-sw-macros"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-macros-common",
"quote",
@@ -3160,8 +3160,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-ecc-guest",
"openvm-instructions",
@@ -3174,8 +3174,8 @@ dependencies = [
[[package]]
name = "openvm-instructions"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"backtrace",
"derive-new 0.6.0",
@@ -3191,8 +3191,8 @@ dependencies = [
[[package]]
name = "openvm-instructions-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"quote",
"syn 2.0.98",
@@ -3200,8 +3200,8 @@ dependencies = [
[[package]]
name = "openvm-keccak256-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -3226,8 +3226,8 @@ dependencies = [
[[package]]
name = "openvm-keccak256-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-platform",
"tiny-keccak",
@@ -3235,8 +3235,8 @@ dependencies = [
[[package]]
name = "openvm-keccak256-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -3249,16 +3249,16 @@ dependencies = [
[[package]]
name = "openvm-macros-common"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"syn 2.0.98",
]
[[package]]
name = "openvm-mod-circuit-builder"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"itertools 0.14.0",
"num-bigint 0.4.6",
@@ -3276,8 +3276,8 @@ dependencies = [
[[package]]
name = "openvm-native-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -3303,8 +3303,8 @@ dependencies = [
[[package]]
name = "openvm-native-compiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"backtrace",
"itertools 0.14.0",
@@ -3327,8 +3327,8 @@ dependencies = [
[[package]]
name = "openvm-native-compiler-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"quote",
"syn 2.0.98",
@@ -3336,8 +3336,8 @@ dependencies = [
[[package]]
name = "openvm-native-recursion"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"cfg-if",
"itertools 0.14.0",
@@ -3364,8 +3364,8 @@ dependencies = [
[[package]]
name = "openvm-pairing-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -3394,8 +3394,8 @@ dependencies = [
[[package]]
name = "openvm-pairing-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"group 0.13.0",
"halo2curves-axiom",
@@ -3420,8 +3420,8 @@ dependencies = [
[[package]]
name = "openvm-pairing-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -3434,8 +3434,8 @@ dependencies = [
[[package]]
name = "openvm-platform"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"getrandom 0.2.15",
"libm",
@@ -3445,8 +3445,8 @@ dependencies = [
[[package]]
name = "openvm-poseidon2-air"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derivative",
"lazy_static",
@@ -3462,8 +3462,8 @@ dependencies = [
[[package]]
name = "openvm-rv32-adapters"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"itertools 0.14.0",
@@ -3482,8 +3482,8 @@ dependencies = [
[[package]]
name = "openvm-rv32im-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -3505,8 +3505,8 @@ dependencies = [
[[package]]
name = "openvm-rv32im-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-custom-insn",
"strum_macros 0.26.4",
@@ -3514,8 +3514,8 @@ dependencies = [
[[package]]
name = "openvm-rv32im-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -3530,8 +3530,8 @@ dependencies = [
[[package]]
name = "openvm-sdk"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"async-trait",
"bitcode",
@@ -3577,8 +3577,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-air"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-circuit-primitives",
"openvm-stark-backend",
@@ -3588,8 +3588,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -3611,8 +3611,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-platform",
"sha2",
@@ -3620,8 +3620,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -3634,8 +3634,8 @@ dependencies = [
[[package]]
name = "openvm-stark-backend"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/stark-backend.git?rev=b051e8978da9c829a76b262abf4a9736c8d1681e#b051e8978da9c829a76b262abf4a9736c8d1681e"
version = "1.0.0"
source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.0.0#884f8e6aabf72bde00dc51f1f1121277bff73b1e"
dependencies = [
"bitcode",
"cfg-if",
@@ -3660,8 +3660,8 @@ dependencies = [
[[package]]
name = "openvm-stark-sdk"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/stark-backend.git?rev=b051e8978da9c829a76b262abf4a9736c8d1681e#b051e8978da9c829a76b262abf4a9736c8d1681e"
version = "1.0.0"
source = "git+https://github.com/openvm-org/stark-backend.git?tag=v1.0.0#884f8e6aabf72bde00dc51f1f1121277bff73b1e"
dependencies = [
"derivative",
"derive_more 0.99.19",
@@ -3695,8 +3695,8 @@ dependencies = [
[[package]]
name = "openvm-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"elf",
"eyre",
@@ -3737,7 +3737,7 @@ dependencies = [
[[package]]
name = "p3-air"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"p3-field",
"p3-matrix",
@@ -3746,7 +3746,7 @@ dependencies = [
[[package]]
name = "p3-baby-bear"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"p3-field",
"p3-mds",
@@ -3760,7 +3760,7 @@ dependencies = [
[[package]]
name = "p3-blake3"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"blake3",
"p3-symmetric",
@@ -3770,7 +3770,7 @@ dependencies = [
[[package]]
name = "p3-bn254-fr"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"ff 0.13.0",
"halo2curves",
@@ -3785,7 +3785,7 @@ dependencies = [
[[package]]
name = "p3-challenger"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"p3-field",
"p3-maybe-rayon",
@@ -3797,7 +3797,7 @@ dependencies = [
[[package]]
name = "p3-commit"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-challenger",
@@ -3811,7 +3811,7 @@ dependencies = [
[[package]]
name = "p3-dft"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -3824,7 +3824,7 @@ dependencies = [
[[package]]
name = "p3-field"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"num-bigint 0.4.6",
@@ -3841,7 +3841,7 @@ dependencies = [
[[package]]
name = "p3-fri"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-challenger",
@@ -3860,7 +3860,7 @@ dependencies = [
[[package]]
name = "p3-goldilocks"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"num-bigint 0.4.6",
"p3-dft",
@@ -3877,7 +3877,7 @@ dependencies = [
[[package]]
name = "p3-interpolation"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"p3-field",
"p3-matrix",
@@ -3888,7 +3888,7 @@ dependencies = [
[[package]]
name = "p3-keccak"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -3900,7 +3900,7 @@ dependencies = [
[[package]]
name = "p3-keccak-air"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"p3-air",
"p3-field",
@@ -3914,7 +3914,7 @@ dependencies = [
[[package]]
name = "p3-matrix"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -3929,7 +3929,7 @@ dependencies = [
[[package]]
name = "p3-maybe-rayon"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"rayon",
]
@@ -3937,7 +3937,7 @@ dependencies = [
[[package]]
name = "p3-mds"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-dft",
@@ -3951,7 +3951,7 @@ dependencies = [
[[package]]
name = "p3-merkle-tree"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-commit",
@@ -3968,7 +3968,7 @@ dependencies = [
[[package]]
name = "p3-monty-31"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"num-bigint 0.4.6",
@@ -3989,7 +3989,7 @@ dependencies = [
[[package]]
name = "p3-poseidon"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"p3-field",
"p3-mds",
@@ -4000,7 +4000,7 @@ dependencies = [
[[package]]
name = "p3-poseidon2"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"gcd",
"p3-field",
@@ -4012,7 +4012,7 @@ dependencies = [
[[package]]
name = "p3-poseidon2-air"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"p3-air",
"p3-field",
@@ -4028,7 +4028,7 @@ dependencies = [
[[package]]
name = "p3-symmetric"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -4038,7 +4038,7 @@ dependencies = [
[[package]]
name = "p3-uni-stark"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"itertools 0.14.0",
"p3-air",
@@ -4056,7 +4056,7 @@ dependencies = [
[[package]]
name = "p3-util"
version = "0.1.0"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=88d7f05#88d7f059500fd956a7c1eb121e08653e5974728d"
source = "git+https://github.com/Plonky3/Plonky3.git?rev=1ba4e5c#1ba4e5c40417f4f7aae86bcca56b6484b4b2490b"
dependencies = [
"serde",
]
@@ -5674,7 +5674,7 @@ dependencies = [
[[package]]
name = "scroll-zkvm-circuit-input-types"
version = "0.2.0"
source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.2.0#5854f8179d14f2afa489a499290e0ff6a953b314"
source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.3.0#fcc09d1517e9d254284820fe66b087331e4b1bf4"
dependencies = [
"alloy-primitives",
"alloy-serde 0.8.3",
@@ -5696,8 +5696,8 @@ dependencies = [
[[package]]
name = "scroll-zkvm-prover"
version = "0.2.0"
source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.2.0#5854f8179d14f2afa489a499290e0ff6a953b314"
version = "0.3.0"
source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.3.0#fcc09d1517e9d254284820fe66b087331e4b1bf4"
dependencies = [
"alloy-primitives",
"base64 0.22.1",
@@ -5732,8 +5732,8 @@ dependencies = [
[[package]]
name = "scroll-zkvm-verifier"
version = "0.2.0"
source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.2.0#5854f8179d14f2afa489a499290e0ff6a953b314"
version = "0.3.0"
source = "git+https://github.com/scroll-tech/zkvm-prover.git?tag=v0.3.0#fcc09d1517e9d254284820fe66b087331e4b1bf4"
dependencies = [
"bincode",
"eyre",

View File

@@ -14,8 +14,8 @@ ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" }
tiny-keccak = { git = "https://github.com/scroll-tech/tiny-keccak", branch = "scroll-patch-v2.0.2-openvm-v1.0.0-rc.1" }
[dependencies]
euclid_prover = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.2.0", package = "scroll-zkvm-prover" }
euclid_verifier = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.2.0", package = "scroll-zkvm-verifier" }
euclid_prover = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.3.0", package = "scroll-zkvm-prover" }
euclid_verifier = { git = "https://github.com/scroll-tech/zkvm-prover.git", tag = "v0.3.0", package = "scroll-zkvm-verifier" }
base64 = "0.13.0"
env_logger = "0.9.0"

View File

@@ -22,6 +22,10 @@ var (
RollupRelayerFlags = []cli.Flag{
&MinCodecVersionFlag,
}
// ProposerToolFlags contains flags only used in proposer tool
ProposerToolFlags = []cli.Flag{
&StartL2BlockFlag,
}
// ConfigFileFlag load json type config file.
ConfigFileFlag = cli.StringFlag{
Name: "config",
@@ -90,4 +94,10 @@ var (
Usage: "Minimum required codec version for the chunk/batch/bundle proposers",
Required: true,
}
// StartL2BlockFlag indicates the start L2 block number for proposer tool
StartL2BlockFlag = cli.Uint64Flag{
Name: "start-l2-block",
Usage: "Start L2 block number for proposer tool",
Value: 0,
}
)

View File

@@ -5,7 +5,7 @@ import (
"runtime/debug"
)
var tag = "v4.5.4"
var tag = "v4.5.8"
var commit = func() string {
if info, ok := debug.ReadBuildInfo(); ok {

View File

@@ -33,3 +33,45 @@ make rollup_bins
./build/bin/gas_oracle --config ./conf/config.json
./build/bin/rollup_relayer --config ./conf/config.json
```
## Proposer Tool
The Proposer Tool replays historical blocks with custom configurations (e.g., future hardfork configs, custom chunk/batch/bundle proposer configs) to generate chunks/batches/bundles, helping test parameter changes before protocol upgrade.
You can:
1. Enable different hardforks in the genesis configuration.
2. Set custom chunk-proposer, batch-proposer, and bundle-proposer parameters.
3. Analyze resulting metrics (blob size, block count, transaction count, gas usage).
## How to run the proposer tool?
### Set the configs
1. Set genesis config to enable desired hardforks in [`proposer-tool-genesis.json`](./proposer-tool-genesis.json).
2. Set proposer config in [`proposer-tool-config.json`](./proposer-tool-config.json) for data analysis.
3. Set `start-l2-block` in the launch command of proposer-tool in [`docker-compose-proposer-tool.yml`](./docker-compose-proposer-tool.yml) to the block number you want to start from. The default is `0`, which means starting from the genesis block.
### Start the proposer tool using docker-compose
Prerequisite: an RPC URL to an archive L2 node. The default url in [`proposer-tool-config.json`](./proposer-tool-config.json) is `https://rpc.scroll.io`.
```
cd rollup
DOCKER_BUILDKIT=1 docker-compose -f docker-compose-proposer-tool.yml up -d
```
> Note: The port 5432 of database is mapped to the host machine. You can use `psql` or any db clients to connect to the database.
> The DSN for the database is `postgres://postgres:postgres@db:5432/scroll?sslmode=disable`.
### Reset env
```
docker-compose -f docker-compose-proposer-tool.yml down -v
```
If you need to rebuild the images, removing the old images is necessary. You can do this by running the following command:
```
docker images | grep rollup | awk '{print $3}' | xargs docker rmi -f
```

View File

@@ -0,0 +1,93 @@
package app
import (
"context"
"fmt"
"os"
"os/signal"
"github.com/scroll-tech/da-codec/encoding"
"github.com/scroll-tech/go-ethereum/log"
"github.com/urfave/cli/v2"
"scroll-tech/common/utils"
"scroll-tech/common/version"
"scroll-tech/rollup/internal/config"
"scroll-tech/rollup/internal/controller/watcher"
)
var app *cli.App
func init() {
// Set up proposer-tool app info.
app = cli.NewApp()
app.Action = action
app.Name = "proposer-tool"
app.Usage = "The Scroll Proposer Tool"
app.Version = version.Version
app.Flags = append(app.Flags, utils.CommonFlags...)
app.Flags = append(app.Flags, utils.RollupRelayerFlags...)
app.Flags = append(app.Flags, utils.ProposerToolFlags...)
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.NewConfigForReplay(cfgFile)
if err != nil {
log.Crit("failed to load config file", "config file", cfgFile, "error", err)
}
subCtx, cancel := context.WithCancel(ctx.Context)
startL2BlockHeight := ctx.Uint64(utils.StartL2BlockFlag.Name)
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)
}
minCodecVersion := encoding.CodecVersion(ctx.Uint(utils.MinCodecVersionFlag.Name))
// sanity check config
if cfg.L2Config.BatchProposerConfig.MaxChunksPerBatch <= 0 {
log.Crit("cfg.L2Config.BatchProposerConfig.MaxChunksPerBatch must be greater than 0")
}
if cfg.L2Config.ChunkProposerConfig.MaxL2GasPerChunk <= 0 {
log.Crit("cfg.L2Config.ChunkProposerConfig.MaxL2GasPerChunk must be greater than 0")
}
proposerTool, err := watcher.NewProposerTool(subCtx, cancel, cfg, startL2BlockHeight, minCodecVersion, genesis.Config)
if err != nil {
log.Crit("failed to create proposer tool", "startL2BlockHeight", startL2BlockHeight, "minCodecVersion", minCodecVersion, "error", err)
}
proposerTool.Start()
log.Info("Start proposer-tool successfully", "version", version.Version)
// Catch CTRL-C to ensure a graceful shutdown.
interrupt := make(chan os.Signal, 1)
signal.Notify(interrupt, os.Interrupt)
// Wait until the interrupt signal is received from an OS signal.
<-interrupt
cancel()
proposerTool.Stop()
return nil
}
// Run proposer tool cmd instance.
func Run() {
if err := app.Run(os.Args); err != nil {
_, _ = fmt.Fprintln(os.Stderr, err)
os.Exit(1)
}
}

View File

@@ -0,0 +1,7 @@
package main
import "scroll-tech/rollup/cmd/proposer_tool/app"
func main() {
app.Run()
}

View File

@@ -0,0 +1,40 @@
version: '3'
services:
db:
image: postgres:14
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
- POSTGRES_DB=scroll
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 5s
timeout: 5s
retries: 5
proposer-tool:
build:
context: ..
dockerfile: ./rollup/proposer_tool.Dockerfile
depends_on:
db:
condition: service_healthy
command: [
"--config", "/app/conf/proposer-tool-config.json",
"--genesis", "/app/conf/proposer-tool-genesis.json",
"--min-codec-version", "4",
"--start-l2-block", "10000",
"--log.debug", "--verbosity", "3"
]
volumes:
- ./proposer-tool-config.json:/app/conf/proposer-tool-config.json
- ./proposer-tool-genesis.json:/app/conf/proposer-tool-genesis.json
restart: unless-stopped
volumes:
postgres_data:

View File

@@ -1,7 +1,10 @@
package config
import (
"encoding/json"
"fmt"
"os"
"path/filepath"
"reflect"
"strings"
@@ -20,6 +23,11 @@ type Config struct {
DBConfig *database.Config `json:"db_config"`
}
type ConfigForReplay struct {
Config
DBConfigForReplay *database.Config `json:"db_config_for_replay"`
}
// NewConfig returns a new instance of Config.
func NewConfig(file string) (*Config, error) {
v := viper.New()
@@ -87,3 +95,19 @@ func NewConfig(file string) (*Config, error) {
return cfg, nil
}
// NewConfigForReplay returns a new instance of ConfigForReplay.
func NewConfigForReplay(file string) (*ConfigForReplay, error) {
buf, err := os.ReadFile(filepath.Clean(file))
if err != nil {
return nil, err
}
cfg := &ConfigForReplay{}
err = json.Unmarshal(buf, cfg)
if err != nil {
return nil, err
}
return cfg, nil
}

View File

@@ -167,6 +167,7 @@ func (r *Layer1Relayer) ProcessGasPriceOracle() {
if r.lastBaseFee == r.cfg.GasOracleConfig.L1BaseFeeDefault && r.lastBlobBaseFee == r.cfg.GasOracleConfig.L1BlobBaseFeeDefault {
return
}
log.Warn("The committing batch has been stuck for a long time, it's likely that the L1 gas fee spiked, set fees to default values", "currentBaseFee", baseFee, "currentBlobBaseFee", blobBaseFee, "threshold (min)", r.cfg.GasOracleConfig.L1BlobBaseFeeThreshold, "defaultBaseFee", r.cfg.GasOracleConfig.L1BaseFeeDefault, "defaultBlobBaseFee", r.cfg.GasOracleConfig.L1BlobBaseFeeDefault)
baseFee = r.cfg.GasOracleConfig.L1BaseFeeDefault
blobBaseFee = r.cfg.GasOracleConfig.L1BlobBaseFeeDefault
} else if err != nil {

View File

@@ -13,6 +13,8 @@ import (
"github.com/scroll-tech/go-ethereum/params"
"gorm.io/gorm"
"scroll-tech/common/types"
"scroll-tech/rollup/internal/config"
"scroll-tech/rollup/internal/orm"
"scroll-tech/rollup/internal/utils"
@@ -34,6 +36,7 @@ type BatchProposer struct {
maxUncompressedBatchBytesSize uint64
maxChunksPerBatch int
replayMode bool
minCodecVersion encoding.CodecVersion
chainCfg *params.ChainConfig
@@ -80,6 +83,7 @@ func NewBatchProposer(ctx context.Context, cfg *config.BatchProposerConfig, minC
gasCostIncreaseMultiplier: cfg.GasCostIncreaseMultiplier,
maxUncompressedBatchBytesSize: cfg.MaxUncompressedBatchBytesSize,
maxChunksPerBatch: cfg.MaxChunksPerBatch,
replayMode: false,
minCodecVersion: minCodecVersion,
chainCfg: chainCfg,
@@ -152,6 +156,14 @@ func NewBatchProposer(ctx context.Context, cfg *config.BatchProposerConfig, minC
return p
}
// SetReplayDB sets the replay database for the BatchProposer.
// This is used for the proposer tool only, to change the l2_block data source.
// This function is not thread-safe and should be called after initializing the BatchProposer and before starting to propose chunks.
func (p *BatchProposer) SetReplayDB(replayDB *gorm.DB) {
p.l2BlockOrm = orm.NewL2Block(replayDB)
p.replayMode = true
}
// TryProposeBatch tries to propose a new batches.
func (p *BatchProposer) TryProposeBatch() {
p.batchProposerCircleTotal.Inc()
@@ -226,6 +238,15 @@ func (p *BatchProposer) updateDBBatchInfo(batch *encoding.Batch, codecVersion en
log.Warn("BatchProposer.UpdateBatchHashInRange update the chunk's batch hash failure", "hash", dbBatch.Hash, "error", dbErr)
return dbErr
}
if p.replayMode {
// If replayMode is true, meaning the batch was proposed by the proposer tool,
// set batch status to types.RollupCommitted and assign a unique commit tx hash to enable new bundle proposals.
if dbErr = p.batchOrm.UpdateCommitTxHashAndRollupStatus(p.ctx, dbBatch.Hash, dbBatch.Hash, types.RollupCommitted, dbTX); dbErr != nil {
log.Warn("BatchProposer.UpdateCommitTxHashAndRollupStatus update the batch's commit tx hash failure", "hash", dbBatch.Hash, "error", dbErr)
return dbErr
}
}
return nil
})
if err != nil {

View File

@@ -199,7 +199,7 @@ func (p *BundleProposer) proposeBundle() error {
currentTimeSec := uint64(time.Now().Unix())
if firstChunk.StartBlockTime+p.bundleTimeoutSec < currentTimeSec {
log.Info("first block timeout", "batch count", len(batches), "start block number", firstChunk.StartBlockNumber, "start block timestamp", firstChunk.StartBlockTime, "current time", currentTimeSec)
log.Info("first block timeout", "batch count", len(batches), "start block number", firstChunk.StartBlockNumber, "start block timestamp", firstChunk.StartBlockTime, "bundle timeout", p.bundleTimeoutSec, "current time", currentTimeSec)
batches, err = p.allBatchesCommittedInSameTXIncluded(batches)
if err != nil {

View File

@@ -36,6 +36,7 @@ type ChunkProposer struct {
gasCostIncreaseMultiplier float64
maxUncompressedBatchBytesSize uint64
replayMode bool
minCodecVersion encoding.CodecVersion
chainCfg *params.ChainConfig
@@ -91,6 +92,7 @@ func NewChunkProposer(ctx context.Context, cfg *config.ChunkProposerConfig, minC
chunkTimeoutSec: cfg.ChunkTimeoutSec,
gasCostIncreaseMultiplier: cfg.GasCostIncreaseMultiplier,
maxUncompressedBatchBytesSize: cfg.MaxUncompressedBatchBytesSize,
replayMode: false,
minCodecVersion: minCodecVersion,
chainCfg: chainCfg,
@@ -175,6 +177,14 @@ func NewChunkProposer(ctx context.Context, cfg *config.ChunkProposerConfig, minC
return p
}
// SetReplayDB sets the replay database for the ChunkProposer.
// This is used for the proposer tool only, to change the l2_block data source.
// This function is not thread-safe and should be called after initializing the ChunkProposer and before starting to propose chunks.
func (p *ChunkProposer) SetReplayDB(replayDB *gorm.DB) {
p.l2BlockOrm = orm.NewL2Block(replayDB)
p.replayMode = true
}
// TryProposeChunk tries to propose a new chunk.
func (p *ChunkProposer) TryProposeChunk() {
p.chunkProposerCircleTotal.Inc()
@@ -241,9 +251,12 @@ func (p *ChunkProposer) updateDBChunkInfo(chunk *encoding.Chunk, codecVersion en
log.Warn("ChunkProposer.InsertChunk failed", "codec version", codecVersion, "err", err)
return err
}
if err := p.l2BlockOrm.UpdateChunkHashInRange(p.ctx, dbChunk.StartBlockNumber, dbChunk.EndBlockNumber, dbChunk.Hash, dbTX); err != nil {
log.Error("failed to update chunk_hash for l2_blocks", "chunk hash", dbChunk.Hash, "start block", dbChunk.StartBlockNumber, "end block", dbChunk.EndBlockNumber, "err", err)
return err
// In replayMode we don't need to update chunk_hash in l2_block table.
if !p.replayMode {
if err := p.l2BlockOrm.UpdateChunkHashInRange(p.ctx, dbChunk.StartBlockNumber, dbChunk.EndBlockNumber, dbChunk.Hash, dbTX); err != nil {
log.Error("failed to update chunk_hash for l2_block", "chunk hash", dbChunk.Hash, "start block", dbChunk.StartBlockNumber, "end block", dbChunk.EndBlockNumber, "err", err)
return err
}
}
return nil
})
@@ -436,6 +449,12 @@ func (p *ChunkProposer) recordTimerChunkMetrics(metrics *utils.ChunkMetrics) {
}
func (p *ChunkProposer) tryProposeEuclidTransitionChunk(blocks []*encoding.Block) (bool, error) {
// If we are in replay mode, there is a corner case when StartL2Block is set as 0 in this check,
// it needs to get genesis block, but in mainnet db there is no genesis block, so we need to bypass this check.
if p.replayMode {
return false, nil
}
if !p.chainCfg.IsEuclid(blocks[0].Header.Time) {
return false, nil
}

View File

@@ -0,0 +1,160 @@
package watcher
import (
"context"
"fmt"
"math/big"
"time"
"github.com/scroll-tech/da-codec/encoding"
"github.com/scroll-tech/go-ethereum/common"
gethTypes "github.com/scroll-tech/go-ethereum/core/types"
"github.com/scroll-tech/go-ethereum/ethclient"
"github.com/scroll-tech/go-ethereum/log"
"github.com/scroll-tech/go-ethereum/params"
"gorm.io/gorm"
"scroll-tech/common/database"
"scroll-tech/common/utils"
"scroll-tech/database/migrate"
"scroll-tech/rollup/internal/config"
"scroll-tech/rollup/internal/orm"
rutils "scroll-tech/rollup/internal/utils"
)
// ProposerTool is a tool for proposing chunks and bundles to the L1 chain.
type ProposerTool struct {
ctx context.Context
cancel context.CancelFunc
db *gorm.DB
dbForReplay *gorm.DB
client *ethclient.Client
chunkProposer *ChunkProposer
batchProposer *BatchProposer
bundleProposer *BundleProposer
}
// NewProposerTool creates a new ProposerTool instance.
func NewProposerTool(ctx context.Context, cancel context.CancelFunc, cfg *config.ConfigForReplay, startL2BlockHeight uint64, minCodecVersion encoding.CodecVersion, chainCfg *params.ChainConfig) (*ProposerTool, error) {
// Init db connection
db, err := database.InitDB(cfg.DBConfig)
if err != nil {
return nil, fmt.Errorf("failed to init db connection: %w", err)
}
sqlDB, err := db.DB()
if err != nil {
return nil, fmt.Errorf("failed to get db connection: %w", err)
}
if err = migrate.ResetDB(sqlDB); err != nil {
return nil, fmt.Errorf("failed to reset db: %w", err)
}
log.Info("successfully reset db")
// Init dbForReplay connection
dbForReplay, err := database.InitDB(cfg.DBConfigForReplay)
if err != nil {
return nil, fmt.Errorf("failed to init dbForReplay connection: %w", err)
}
client, err := ethclient.Dial(cfg.L2Config.Endpoint)
if err != nil {
return nil, fmt.Errorf("failed to connect to L2 geth, endpoint: %s, err: %w", cfg.L2Config.Endpoint, err)
}
prevChunk, err := orm.NewChunk(dbForReplay).GetParentChunkByBlockNumber(ctx, startL2BlockHeight)
if err != nil {
return nil, fmt.Errorf("failed to get previous chunk: %w", err)
}
var startQueueIndex uint64
if prevChunk != nil {
startQueueIndex = prevChunk.TotalL1MessagesPoppedBefore + prevChunk.TotalL1MessagesPoppedInChunk
}
startBlock := uint64(0)
if prevChunk != nil {
startBlock = prevChunk.EndBlockNumber + 1
}
var chunk *encoding.Chunk
for blockNum := startBlock; blockNum <= startL2BlockHeight; blockNum++ {
block, err := client.BlockByNumber(ctx, new(big.Int).SetUint64(blockNum))
if err != nil {
return nil, fmt.Errorf("failed to get block %d: %w", blockNum, err)
}
for _, tx := range block.Transactions() {
if tx.Type() == gethTypes.L1MessageTxType {
startQueueIndex++
}
}
if blockNum == startL2BlockHeight {
chunk = &encoding.Chunk{Blocks: []*encoding.Block{{Header: block.Header()}}}
}
}
// Setting empty hash as the post_l1_message_queue_hash of the first chunk,
// i.e., treating the first L1 message after this chunk as the first L1 message in message queue v2.
// Though this setting is different from mainnet, it's simple yet sufficient for data analysis usage.
_, err = orm.NewChunk(db).InsertTestChunkForProposerTool(ctx, chunk, minCodecVersion, startQueueIndex)
if err != nil {
return nil, fmt.Errorf("failed to insert chunk, minCodecVersion: %d, startQueueIndex: %d, err: %w", minCodecVersion, startQueueIndex, err)
}
batch := &encoding.Batch{
Index: 0,
TotalL1MessagePoppedBefore: 0,
ParentBatchHash: common.Hash{},
Chunks: []*encoding.Chunk{chunk},
}
var dbBatch *orm.Batch
dbBatch, err = orm.NewBatch(db).InsertBatch(ctx, batch, encoding.CodecV0, rutils.BatchMetrics{})
if err != nil {
return nil, fmt.Errorf("failed to insert batch: %w", err)
}
if err = orm.NewChunk(db).UpdateBatchHashInRange(ctx, 0, 0, dbBatch.Hash); err != nil {
return nil, fmt.Errorf("failed to update batch hash for chunks: %w", err)
}
chunkProposer := NewChunkProposer(ctx, cfg.L2Config.ChunkProposerConfig, minCodecVersion, chainCfg, db, nil)
chunkProposer.SetReplayDB(dbForReplay)
batchProposer := NewBatchProposer(ctx, cfg.L2Config.BatchProposerConfig, minCodecVersion, chainCfg, db, nil)
batchProposer.SetReplayDB(dbForReplay)
bundleProposer := NewBundleProposer(ctx, cfg.L2Config.BundleProposerConfig, minCodecVersion, chainCfg, db, nil)
return &ProposerTool{
ctx: ctx,
cancel: cancel,
db: db,
dbForReplay: dbForReplay,
client: client,
chunkProposer: chunkProposer,
batchProposer: batchProposer,
bundleProposer: bundleProposer,
}, nil
}
func (p *ProposerTool) Start() {
go utils.Loop(p.ctx, 100*time.Millisecond, p.chunkProposer.TryProposeChunk)
go utils.Loop(p.ctx, 100*time.Millisecond, p.batchProposer.TryProposeBatch)
go utils.Loop(p.ctx, 100*time.Millisecond, p.bundleProposer.TryProposeBundle)
}
func (p *ProposerTool) Stop() {
p.cancel()
if err := database.CloseDB(p.db); err != nil {
log.Error("failed to close db connection", "error", err)
}
if err := database.CloseDB(p.dbForReplay); err != nil {
log.Error("failed to close dbForReplay connection", "error", err)
}
p.client.Close()
}

View File

@@ -162,7 +162,8 @@ func (o *Batch) GetFirstUnbatchedChunkIndex(ctx context.Context) (uint64, error)
return latestBatch.EndChunkIndex + 1, nil
}
// GetCommittedBatchesGEIndexGECodecVersion retrieves batches that have been committed (commit_tx_hash is set) and have a batch index greater than or equal to the given index and codec version.
// GetCommittedBatchesGEIndexGECodecVersion retrieves batches that have been committed (commit_tx_hash is set) and not finalized (finalize_tx_hash is NULL).
// It returns batches that have an index greater than or equal to the given index and codec version.
// The returned batches are sorted in ascending order by their index.
func (o *Batch) GetCommittedBatchesGEIndexGECodecVersion(ctx context.Context, index uint64, codecv encoding.CodecVersion, limit int) ([]*Batch, error) {
db := o.db.WithContext(ctx)
@@ -170,6 +171,7 @@ func (o *Batch) GetCommittedBatchesGEIndexGECodecVersion(ctx context.Context, in
db = db.Where("index >= ?", index)
db = db.Where("codec_version >= ?", codecv)
db = db.Where("commit_tx_hash IS NOT NULL") // only include committed batches
db = db.Where("finalize_tx_hash IS NULL") // exclude finalized batches
db = db.Order("index ASC")
if limit > 0 {
@@ -384,7 +386,12 @@ func (o *Batch) UpdateRollupStatus(ctx context.Context, hash string, status type
func (o *Batch) UpdateCommitTxHashAndRollupStatus(ctx context.Context, hash string, commitTxHash string, status types.RollupStatus, dbTX ...*gorm.DB) error {
updateFields := make(map[string]interface{})
updateFields["commit_tx_hash"] = commitTxHash
updateFields["rollup_status"] = int(status)
updateFields["rollup_status"] = gorm.Expr(
`CASE
WHEN rollup_status NOT IN (?, ?) THEN ?
ELSE rollup_status
END`,
types.RollupFinalizing, types.RollupFinalized, int(status))
if status == types.RollupCommitted {
updateFields["committed_at"] = utils.NowUTC()
}
@@ -395,15 +402,6 @@ func (o *Batch) UpdateCommitTxHashAndRollupStatus(ctx context.Context, hash stri
}
db = db.WithContext(ctx)
var currentBatch Batch
if err := db.Where("hash", hash).First(&currentBatch).Error; err != nil {
return fmt.Errorf("Batch.UpdateCommitTxHashAndRollupStatus error when querying current status: %w, batch hash: %v", err, hash)
}
if types.RollupStatus(currentBatch.RollupStatus) == types.RollupFinalizing || types.RollupStatus(currentBatch.RollupStatus) == types.RollupFinalized {
return nil
}
db = db.Model(&Batch{})
db = db.Where("hash", hash)

View File

@@ -179,6 +179,25 @@ func (o *Chunk) GetChunksByBatchHash(ctx context.Context, batchHash string) ([]*
return chunks, nil
}
// GetParentChunkByBlockNumber retrieves the parent chunk by block number
// only used by proposer tool for analysis usage
func (o *Chunk) GetParentChunkByBlockNumber(ctx context.Context, blockNumber uint64) (*Chunk, error) {
db := o.db.WithContext(ctx)
db = db.Model(&Chunk{})
db = db.Where("end_block_number < ?", blockNumber)
db = db.Order("end_block_number DESC")
db = db.Limit(1)
var chunk Chunk
if err := db.First(&chunk).Error; err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
return nil, nil
}
return nil, fmt.Errorf("Chunk.GetParentChunkByBlockNumber error: %w", err)
}
return &chunk, nil
}
// InsertChunk inserts a new chunk into the database.
func (o *Chunk) InsertChunk(ctx context.Context, chunk *encoding.Chunk, codecVersion encoding.CodecVersion, metrics rutils.ChunkMetrics, dbTX ...*gorm.DB) (*Chunk, error) {
if chunk == nil || len(chunk.Blocks) == 0 {
@@ -259,6 +278,51 @@ func (o *Chunk) InsertChunk(ctx context.Context, chunk *encoding.Chunk, codecVer
return &newChunk, nil
}
// InsertTestChunkForProposerTool inserts a new chunk into the database only for analysis usage by proposer tool.
func (o *Chunk) InsertTestChunkForProposerTool(ctx context.Context, chunk *encoding.Chunk, codecVersion encoding.CodecVersion, totalL1MessagePoppedBefore uint64, dbTX ...*gorm.DB) (*Chunk, error) {
if chunk == nil || len(chunk.Blocks) == 0 {
return nil, errors.New("invalid args")
}
chunkHash, err := rutils.GetChunkHash(chunk, totalL1MessagePoppedBefore, codecVersion)
if err != nil {
log.Error("failed to get chunk hash", "err", err)
return nil, fmt.Errorf("Chunk.InsertChunk error: %w", err)
}
numBlocks := len(chunk.Blocks)
firstBlock := chunk.Blocks[0]
lastBlock := chunk.Blocks[numBlocks-1]
newChunk := Chunk{
Index: 0,
Hash: chunkHash.Hex(),
StartBlockNumber: firstBlock.Header.Number.Uint64(),
StartBlockHash: firstBlock.Header.Hash().Hex(),
EndBlockNumber: lastBlock.Header.Number.Uint64(),
EndBlockHash: lastBlock.Header.Hash().Hex(),
TotalL2TxGas: chunk.TotalGasUsed(),
TotalL2TxNum: chunk.NumL2Transactions(),
StartBlockTime: firstBlock.Header.Time,
TotalL1MessagesPoppedBefore: totalL1MessagePoppedBefore,
StateRoot: lastBlock.Header.Root.Hex(),
WithdrawRoot: lastBlock.WithdrawRoot.Hex(),
CodecVersion: int16(codecVersion),
}
db := o.db
if len(dbTX) > 0 && dbTX[0] != nil {
db = dbTX[0]
}
db = db.WithContext(ctx)
db = db.Model(&Chunk{})
if err := db.Create(&newChunk).Error; err != nil {
return nil, fmt.Errorf("Chunk.InsertChunk error: %w, chunk hash: %v", err, newChunk.Hash)
}
return &newChunk, nil
}
// UpdateProvingStatus updates the proving status of a chunk.
func (o *Chunk) UpdateProvingStatus(ctx context.Context, hash string, status types.ProvingStatus, dbTX ...*gorm.DB) error {
updateFields := make(map[string]interface{})

View File

@@ -314,7 +314,7 @@ func TestBatchOrm(t *testing.T) {
updatedBatch, err = batchOrm.GetLatestBatch(context.Background())
assert.NoError(t, err)
assert.NotNil(t, updatedBatch)
assert.Equal(t, "", updatedBatch.CommitTxHash)
assert.Equal(t, "commitTxHash", updatedBatch.CommitTxHash)
assert.Equal(t, types.RollupFinalized, types.RollupStatus(updatedBatch.RollupStatus))
err = batchOrm.UpdateFinalizeTxHashAndRollupStatus(context.Background(), batchHash2, "finalizeTxHash", types.RollupFinalizeFailed)
@@ -355,10 +355,7 @@ func TestBatchOrm(t *testing.T) {
batches, err = batchOrm.GetCommittedBatchesGEIndexGECodecVersion(context.Background(), 0, codecVersion, 0)
assert.NoError(t, err)
assert.Equal(t, 1, len(batches))
assert.Equal(t, batchHash1, batches[0].Hash)
assert.Equal(t, types.ProvingTaskFailed, types.ProvingStatus(batches[0].ProvingStatus))
assert.Equal(t, types.RollupCommitFailed, types.RollupStatus(batches[0].RollupStatus))
assert.Equal(t, 0, len(batches))
}
}

View File

@@ -0,0 +1,40 @@
{
"l2_config": {
"endpoint": "https://rpc.scroll.io",
"chunk_proposer_config": {
"max_block_num_per_chunk": 100,
"max_tx_num_per_chunk": 100,
"max_l2_gas_per_chunk": 20000000,
"max_l1_commit_gas_per_chunk": 5000000,
"max_l1_commit_calldata_size_per_chunk": 123740,
"chunk_timeout_sec": 72000000000,
"max_row_consumption_per_chunk": 10000000000,
"gas_cost_increase_multiplier": 1.2,
"max_uncompressed_batch_bytes_size": 634693
},
"batch_proposer_config": {
"max_l1_commit_gas_per_batch": 5000000,
"max_l1_commit_calldata_size_per_batch": 123740,
"batch_timeout_sec": 72000000000,
"gas_cost_increase_multiplier": 1.2,
"max_uncompressed_batch_bytes_size": 634693,
"max_chunks_per_batch": 45
},
"bundle_proposer_config": {
"max_batch_num_per_bundle": 45,
"bundle_timeout_sec": 36000000000
}
},
"db_config": {
"driver_name": "postgres",
"dsn": "postgres://postgres:postgres@db:5432/scroll?sslmode=disable",
"maxOpenNum": 200,
"maxIdleNum": 20
},
"db_config_for_replay": {
"driver_name": "postgres",
"dsn": "<mainnet read db config>",
"maxOpenNum": 200,
"maxIdleNum": 20
}
}

View File

@@ -0,0 +1,19 @@
{
"config": {
"chainId": 534352,
"bernoulliBlock": 0,
"curieBlock": 0,
"darwinTime": 0,
"darwinV2Time": 0,
"euclidTime": 0,
"euclidV2Time": 0
},
"nonce": "0x0000000000000033",
"timestamp": "0x0",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"gasLimit": "0x8000000",
"difficulty": "0x100",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"coinbase": "0x3333333333333333333333333333333333333333",
"alloc": {}
}

View File

@@ -0,0 +1,30 @@
# Download Go dependencies
FROM scrolltech/go-rust-builder:go-1.22-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 proposer_tool
FROM base as builder
RUN --mount=target=. \
--mount=type=cache,target=/root/.cache/go-build \
cd /src/rollup/cmd/proposer_tool/ && CGO_LDFLAGS="-ldl" go build -v -p 4 -o /bin/proposer_tool
# Pull proposer_tool 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/proposer_tool /bin/
WORKDIR /app
ENTRYPOINT ["proposer_tool"]

272
zkvm-prover/Cargo.lock generated
View File

@@ -1127,7 +1127,7 @@ dependencies = [
"bitflags 2.9.0",
"cexpr",
"clang-sys",
"itertools 0.13.0",
"itertools 0.12.1",
"proc-macro2",
"quote",
"regex",
@@ -1549,7 +1549,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c"
dependencies = [
"lazy_static",
"windows-sys 0.59.0",
"windows-sys 0.52.0",
]
[[package]]
@@ -2175,7 +2175,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e"
dependencies = [
"libc",
"windows-sys 0.59.0",
"windows-sys 0.52.0",
]
[[package]]
@@ -4271,8 +4271,8 @@ dependencies = [
[[package]]
name = "openvm"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"bytemuck",
"num-bigint 0.4.6",
@@ -4284,8 +4284,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -4313,7 +4313,7 @@ dependencies = [
[[package]]
name = "openvm-algebra-complex-macros"
version = "0.1.0"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-macros-common",
"quote",
@@ -4322,8 +4322,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"halo2curves-axiom",
"num-bigint 0.4.6",
@@ -4335,8 +4335,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-moduli-macros"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-macros-common",
"quote",
@@ -4345,8 +4345,8 @@ dependencies = [
[[package]]
name = "openvm-algebra-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-algebra-guest",
"openvm-instructions",
@@ -4359,8 +4359,8 @@ dependencies = [
[[package]]
name = "openvm-bigint-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -4381,8 +4381,8 @@ dependencies = [
[[package]]
name = "openvm-bigint-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"num-bigint 0.4.6",
"num-traits",
@@ -4395,8 +4395,8 @@ dependencies = [
[[package]]
name = "openvm-bigint-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-bigint-guest",
"openvm-instructions",
@@ -4410,8 +4410,8 @@ dependencies = [
[[package]]
name = "openvm-build"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"cargo_metadata",
"eyre",
@@ -4422,8 +4422,8 @@ dependencies = [
[[package]]
name = "openvm-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"backtrace",
"cfg-if",
@@ -4453,8 +4453,8 @@ dependencies = [
[[package]]
name = "openvm-circuit-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"itertools 0.14.0",
"quote",
@@ -4463,8 +4463,8 @@ dependencies = [
[[package]]
name = "openvm-circuit-primitives"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"itertools 0.14.0",
@@ -4478,8 +4478,8 @@ dependencies = [
[[package]]
name = "openvm-circuit-primitives-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"itertools 0.14.0",
"quote",
@@ -4488,8 +4488,8 @@ dependencies = [
[[package]]
name = "openvm-continuations"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derivative",
"openvm-circuit",
@@ -4504,7 +4504,7 @@ dependencies = [
[[package]]
name = "openvm-custom-insn"
version = "0.1.0"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"proc-macro2",
"quote",
@@ -4513,8 +4513,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -4544,8 +4544,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"ecdsa",
"elliptic-curve",
@@ -4569,8 +4569,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-sw-macros"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-macros-common",
"quote",
@@ -4579,8 +4579,8 @@ dependencies = [
[[package]]
name = "openvm-ecc-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-ecc-guest",
"openvm-instructions",
@@ -4593,8 +4593,8 @@ dependencies = [
[[package]]
name = "openvm-instructions"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"backtrace",
"derive-new 0.6.0",
@@ -4610,8 +4610,8 @@ dependencies = [
[[package]]
name = "openvm-instructions-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"quote",
"syn 2.0.100",
@@ -4619,8 +4619,8 @@ dependencies = [
[[package]]
name = "openvm-keccak256-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -4645,8 +4645,8 @@ dependencies = [
[[package]]
name = "openvm-keccak256-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-platform",
"tiny-keccak",
@@ -4654,8 +4654,8 @@ dependencies = [
[[package]]
name = "openvm-keccak256-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -4668,16 +4668,16 @@ dependencies = [
[[package]]
name = "openvm-macros-common"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"syn 2.0.100",
]
[[package]]
name = "openvm-mod-circuit-builder"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"itertools 0.14.0",
"num-bigint 0.4.6",
@@ -4695,8 +4695,8 @@ dependencies = [
[[package]]
name = "openvm-native-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -4722,8 +4722,8 @@ dependencies = [
[[package]]
name = "openvm-native-compiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"backtrace",
"itertools 0.14.0",
@@ -4746,8 +4746,8 @@ dependencies = [
[[package]]
name = "openvm-native-compiler-derive"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"quote",
"syn 2.0.100",
@@ -4755,8 +4755,8 @@ dependencies = [
[[package]]
name = "openvm-native-recursion"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"cfg-if",
"itertools 0.14.0",
@@ -4783,8 +4783,8 @@ dependencies = [
[[package]]
name = "openvm-pairing-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -4813,8 +4813,8 @@ dependencies = [
[[package]]
name = "openvm-pairing-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"group 0.13.0",
"halo2curves-axiom",
@@ -4839,8 +4839,8 @@ dependencies = [
[[package]]
name = "openvm-pairing-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -4853,8 +4853,8 @@ dependencies = [
[[package]]
name = "openvm-platform"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"getrandom 0.2.15",
"libm",
@@ -4864,8 +4864,8 @@ dependencies = [
[[package]]
name = "openvm-poseidon2-air"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derivative",
"lazy_static",
@@ -4881,8 +4881,8 @@ dependencies = [
[[package]]
name = "openvm-rv32-adapters"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"itertools 0.14.0",
@@ -4901,8 +4901,8 @@ dependencies = [
[[package]]
name = "openvm-rv32im-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -4924,8 +4924,8 @@ dependencies = [
[[package]]
name = "openvm-rv32im-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-custom-insn",
"strum_macros 0.26.4",
@@ -4933,8 +4933,8 @@ dependencies = [
[[package]]
name = "openvm-rv32im-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -4949,8 +4949,8 @@ dependencies = [
[[package]]
name = "openvm-sdk"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"async-trait",
"bitcode",
@@ -4996,8 +4996,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-air"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-circuit-primitives",
"openvm-stark-backend",
@@ -5007,8 +5007,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-circuit"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"derive-new 0.6.0",
"derive_more 1.0.0",
@@ -5030,8 +5030,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-guest"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-platform",
"sha2",
@@ -5039,8 +5039,8 @@ dependencies = [
[[package]]
name = "openvm-sha256-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"openvm-instructions",
"openvm-instructions-derive",
@@ -5053,8 +5053,8 @@ dependencies = [
[[package]]
name = "openvm-stark-backend"
version = "1.0.0-rc.2"
source = "git+ssh://git@github.com/scroll-tech/openvm-stark-gpu.git?branch=main#1baaa78b1b2d707d41a55ea0920d2555222d3108"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-stark-gpu.git?branch=main#fcda680d848a3790d7da7778a10d0a2d127cbba1"
dependencies = [
"bitcode",
"cfg-if",
@@ -5082,8 +5082,8 @@ dependencies = [
[[package]]
name = "openvm-stark-sdk"
version = "1.0.0-rc.2"
source = "git+ssh://git@github.com/scroll-tech/openvm-stark-gpu.git?branch=main#1baaa78b1b2d707d41a55ea0920d2555222d3108"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-stark-gpu.git?branch=main#fcda680d848a3790d7da7778a10d0a2d127cbba1"
dependencies = [
"derivative",
"derive_more 0.99.19",
@@ -5118,8 +5118,8 @@ dependencies = [
[[package]]
name = "openvm-transpiler"
version = "1.0.0-rc.2"
source = "git+https://github.com/openvm-org/openvm.git?rev=3c35e9f#3c35e9f369da8dee065a089fb72f3580af7dcaf9"
version = "1.0.0"
source = "git+ssh://git@github.com/scroll-tech/openvm-gpu.git?rev=dfa10b4#dfa10b4a06e0b2017b30c4c9dace31c4dd908df4"
dependencies = [
"elf",
"eyre",
@@ -5166,7 +5166,7 @@ dependencies = [
[[package]]
name = "p3-air"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"p3-field",
"p3-matrix",
@@ -5175,7 +5175,7 @@ dependencies = [
[[package]]
name = "p3-baby-bear"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"p3-field",
"p3-mds",
@@ -5189,7 +5189,7 @@ dependencies = [
[[package]]
name = "p3-blake3"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"blake3",
"p3-symmetric",
@@ -5199,7 +5199,7 @@ dependencies = [
[[package]]
name = "p3-bn254-fr"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"ff 0.13.1",
"halo2curves",
@@ -5214,7 +5214,7 @@ dependencies = [
[[package]]
name = "p3-challenger"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"p3-field",
"p3-maybe-rayon",
@@ -5226,7 +5226,7 @@ dependencies = [
[[package]]
name = "p3-commit"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"anyhow",
"itertools 0.14.0",
@@ -5242,7 +5242,7 @@ dependencies = [
[[package]]
name = "p3-dft"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -5255,7 +5255,7 @@ dependencies = [
[[package]]
name = "p3-field"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"num-bigint 0.4.6",
@@ -5272,7 +5272,7 @@ dependencies = [
[[package]]
name = "p3-fri"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"anyhow",
"itertools 0.14.0",
@@ -5296,7 +5296,7 @@ dependencies = [
[[package]]
name = "p3-goldilocks"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"num-bigint 0.4.6",
"p3-dft",
@@ -5313,7 +5313,7 @@ dependencies = [
[[package]]
name = "p3-gpu-backend"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"anyhow",
"bytemuck",
@@ -5350,7 +5350,7 @@ dependencies = [
[[package]]
name = "p3-gpu-base"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"anyhow",
"bytemuck",
@@ -5367,7 +5367,7 @@ dependencies = [
[[package]]
name = "p3-gpu-build"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"cc",
"directories",
@@ -5380,12 +5380,12 @@ dependencies = [
[[package]]
name = "p3-gpu-field"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
[[package]]
name = "p3-gpu-module"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -5398,7 +5398,7 @@ dependencies = [
[[package]]
name = "p3-interpolation"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"p3-field",
"p3-matrix",
@@ -5409,7 +5409,7 @@ dependencies = [
[[package]]
name = "p3-keccak"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -5421,7 +5421,7 @@ dependencies = [
[[package]]
name = "p3-keccak-air"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"p3-air",
"p3-field",
@@ -5437,7 +5437,7 @@ dependencies = [
[[package]]
name = "p3-matrix"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -5452,7 +5452,7 @@ dependencies = [
[[package]]
name = "p3-maybe-rayon"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"rayon",
]
@@ -5460,7 +5460,7 @@ dependencies = [
[[package]]
name = "p3-mds"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"p3-dft",
@@ -5474,7 +5474,7 @@ dependencies = [
[[package]]
name = "p3-merkle-tree"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"anyhow",
"itertools 0.14.0",
@@ -5493,7 +5493,7 @@ dependencies = [
[[package]]
name = "p3-monty-31"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"num-bigint 0.4.6",
@@ -5514,7 +5514,7 @@ dependencies = [
[[package]]
name = "p3-poseidon"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"p3-field",
"p3-mds",
@@ -5525,7 +5525,7 @@ dependencies = [
[[package]]
name = "p3-poseidon2"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"gcd",
"p3-field",
@@ -5537,7 +5537,7 @@ dependencies = [
[[package]]
name = "p3-poseidon2-air"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"p3-air",
"p3-field",
@@ -5553,7 +5553,7 @@ dependencies = [
[[package]]
name = "p3-symmetric"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"p3-field",
@@ -5563,7 +5563,7 @@ dependencies = [
[[package]]
name = "p3-uni-stark"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"itertools 0.14.0",
"p3-air",
@@ -5581,7 +5581,7 @@ dependencies = [
[[package]]
name = "p3-util"
version = "0.1.0"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.0#0cebd85e85ae9fa3ef436fe716a5d10ab1d70aeb"
source = "git+ssh://git@github.com/scroll-tech/plonky3-gpu.git?tag=v0.1.1#9174aff7c8f3f0c10dadbb83222ea9e7420ae9ad"
dependencies = [
"serde",
]
@@ -6085,7 +6085,7 @@ dependencies = [
"once_cell",
"socket2",
"tracing",
"windows-sys 0.59.0",
"windows-sys 0.52.0",
]
[[package]]
@@ -7505,7 +7505,7 @@ dependencies = [
"errno",
"libc",
"linux-raw-sys 0.4.15",
"windows-sys 0.59.0",
"windows-sys 0.52.0",
]
[[package]]
@@ -7518,7 +7518,7 @@ dependencies = [
"errno",
"libc",
"linux-raw-sys 0.9.4",
"windows-sys 0.59.0",
"windows-sys 0.52.0",
]
[[package]]
@@ -7856,7 +7856,7 @@ dependencies = [
[[package]]
name = "scroll-zkvm-circuit-input-types"
version = "0.2.0"
source = "git+https://github.com/scroll-tech/zkvm-prover?tag=v0.2.0#5854f8179d14f2afa489a499290e0ff6a953b314"
source = "git+https://github.com/scroll-tech/zkvm-prover?tag=v0.3.0#fcc09d1517e9d254284820fe66b087331e4b1bf4"
dependencies = [
"alloy-primitives",
"alloy-serde 0.8.3",
@@ -7878,8 +7878,8 @@ dependencies = [
[[package]]
name = "scroll-zkvm-prover"
version = "0.2.0"
source = "git+https://github.com/scroll-tech/zkvm-prover?tag=v0.2.0#5854f8179d14f2afa489a499290e0ff6a953b314"
version = "0.3.0"
source = "git+https://github.com/scroll-tech/zkvm-prover?tag=v0.3.0#fcc09d1517e9d254284820fe66b087331e4b1bf4"
dependencies = [
"alloy-primitives",
"base64 0.22.1",
@@ -7914,8 +7914,8 @@ dependencies = [
[[package]]
name = "scroll-zkvm-verifier"
version = "0.2.0"
source = "git+https://github.com/scroll-tech/zkvm-prover?tag=v0.2.0#5854f8179d14f2afa489a499290e0ff6a953b314"
version = "0.3.0"
source = "git+https://github.com/scroll-tech/zkvm-prover?tag=v0.3.0#fcc09d1517e9d254284820fe66b087331e4b1bf4"
dependencies = [
"bincode",
"eyre",
@@ -8417,7 +8417,7 @@ dependencies = [
"cfg-if",
"libc",
"psm",
"windows-sys 0.59.0",
"windows-sys 0.52.0",
]
[[package]]
@@ -8673,7 +8673,7 @@ dependencies = [
"getrandom 0.3.2",
"once_cell",
"rustix 1.0.5",
"windows-sys 0.59.0",
"windows-sys 0.52.0",
]
[[package]]

View File

@@ -18,7 +18,7 @@ serde = { version = "1.0.198", features = ["derive"] }
serde_json = "1.0.116"
futures = "0.3.30"
scroll-zkvm-prover-euclid = { git = "https://github.com/scroll-tech/zkvm-prover", tag = "v0.2.0", package = "scroll-zkvm-prover" }
scroll-zkvm-prover-euclid = { git = "https://github.com/scroll-tech/zkvm-prover", tag = "v0.3.0", package = "scroll-zkvm-prover" }
ethers-core = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" }
ethers-providers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" }
scroll-proving-sdk = { git = "https://github.com/scroll-tech/scroll-proving-sdk.git", branch = "main", features = [
@@ -51,28 +51,28 @@ openvm-stark-backend = { git = "ssh://git@github.com/scroll-tech/openvm-stark-gp
openvm-stark-sdk = { git = "ssh://git@github.com/scroll-tech/openvm-stark-gpu.git", branch = "main", features = ["gpu"] }
[patch."https://github.com/Plonky3/Plonky3.git"]
p3-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-field = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-commit = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-matrix = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-field = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-commit = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-matrix = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-baby-bear = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", features = [
"nightly-features",
], tag = "v0.1.0" }
p3-util = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-challenger = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-dft = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-fri = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-goldilocks = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-keccak = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-keccak-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-blake3 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-mds = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-merkle-tree = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-monty-31 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-poseidon = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-poseidon2 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-poseidon2-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-symmetric = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-uni-stark = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
p3-maybe-rayon = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" } # the "parallel" feature is NOT on by default to allow single-threaded benchmarking
p3-bn254-fr = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.0" }
], tag = "v0.1.1" }
p3-util = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-challenger = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-dft = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-fri = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-goldilocks = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-keccak = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-keccak-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-blake3 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-mds = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-merkle-tree = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-monty-31 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-poseidon = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-poseidon2 = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-poseidon2-air = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-symmetric = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-uni-stark = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }
p3-maybe-rayon = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" } # the "parallel" feature is NOT on by default to allow single-threaded benchmarking
p3-bn254-fr = { git = "ssh://git@github.com/scroll-tech/plonky3-gpu.git", tag = "v0.1.1" }