-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Zero bin merge #279
Merged
Merged
Zero bin merge #279
Changes from all commits
Commits
Show all changes
212 commits
Select commit
Hold shift + click to select a range
8e20a9a
Initial commit
cpubot 90efff4
Add CI
cpubot 3626eba
Add note about http mode
cpubot 9b5de54
Remove unnecessary with_state
cpubot 187958d
Updated deps
BGluth 67702d1
Instrument with paladin
cpubot d5a6625
Add dockerfiles
cpubot f1c6919
Remove unused dependencies
cpubot dd914e4
Integrate proof_protocol_decoder
cpubot 19d7dbb
Update `ProverInput` to expect `BlockTrace`
cpubot 5ba2b25
bump paladin
cpubot 6c58533
Add jerigon run mode
cpubot a0636d4
bump protocol deps
cpubot 3e5a485
Avoid running CI twice on PR
cpubot 5154771
Write proof output to directory in `http` mode
cpubot 3d2779d
Pin nightly version to avoid regression
cpubot 25416ea
Pin CI workflow to working nightly version
cpubot 98bae3d
Write proof results to stdout for jerigon and stdio modes
cpubot e659366
Add verifier binary
cpubot 015db1d
Improve error logging in rpc module
cpubot 5cf87a2
Add RPC command
cpubot 4bfd9a5
bump protocol deps (fixes de/serialization of contract writes)
cpubot 584222d
Now includes dummy previous block hashes
BGluth 2b91692
Move toolchain back to standard nightly
cpubot 3d2da54
Update leader.Dockerfile
cpubot c96ddd8
bump protocol deps
cpubot 47d1818
Dep bump
BGluth acc9215
Add support for paladin num-workers flag
cpubot 39c0339
Retrieve chain_id from RPC node
cpubot 50d0e73
Upgrade to paladin 0.2.0. Use fatal error strategy
cpubot 280cd81
Populate `prev_hashes` in rpc module
cpubot 9d07ee7
Add an option for passing in a previous proof to the prover
cpubot dfbca30
Write prover state to disk
cpubot 3751eba
Use `Config` type
cpubot d6d0ee7
Fixed two prog args using same short char
BGluth 5d5e547
Bump to paladin 0.3.2
cpubot 8c996c4
Overhaul leader CLI such that flags are grouped by subcommand
cpubot 6e2f6be
Merge pull request #2 from 0xPolygonZero/zbrown/leader-cli-improvements
cpubot d161bf1
Enable specifying prover circuit sizes in .env and CLI (#3)
cpubot a358f55
DNM! Prints and fixes
BGluth e7a97e5
Bumped deps
BGluth b93b514
Lock bump
BGluth 5c35b45
Lock bump
BGluth 61c81b7
Lock bump
BGluth a4d143e
Lock bump
BGluth 8be0637
Lock bump
BGluth f0feb1f
Update Cargo.lock
Nashtare 7a28608
Lock bump
BGluth 2d0fe9d
Two fixes
BGluth 3e13635
Fixed a few bugs
BGluth 3b1ce97
Revision fixes
BGluth b33b3f7
Bump lock
Nashtare 32eb622
Fix genesis root
Nashtare 984f2f0
Fix block_hashes
Nashtare f228e48
Remove comment
Nashtare e12ae99
Fix fetching of previous block_hashes
Nashtare e2adb6d
Fix
Nashtare b05a7a0
Bump lock
Nashtare 5795e91
Now queries the genesis state root
BGluth d92c46f
Lock bump
BGluth 77a06ef
Added prog arg to specific specific path for proof output
BGluth de99262
Fixed generated proofs using wrong path
BGluth 5214c52
Added a simple script to generate a range of proofs
BGluth 61ba3f0
Lock bump
BGluth 9843c7b
Lock bump
Nashtare d96a363
Lock bump
Nashtare a3e2c68
Lock bump
BGluth 8a2d872
Lock bump
BGluth 2636707
Lock bump
BGluth 19cd34e
Lock bump
BGluth 6b19ab6
Release builds are now more optimized
BGluth 128cf07
Bump plonky2
Nashtare 0c8c0d8
Update default ranges
Nashtare 486ca5e
Update ranges
Nashtare c4886ca
Now uses revs for all of our deps
BGluth 9e8f06c
Cleaned up the `Cargo.toml` for `rpc`
BGluth f7931a3
Requested changes for PR #5
BGluth 0eb6d48
Requested changes for PR #5 (2)
BGluth 55f4bb3
Merge pull request #5 from 0xPolygonZero/proof_fixes
BGluth c437aa8
migrate to paladin 0.4.0
cpubot 32dba2f
Update dockerfiles
cpubot c9a4d29
Dep bump
BGluth 183b0bc
Update block_hashes fetching
Nashtare 2345dc8
Fix log wiping
Nashtare 863fceb
paladin 0.4.1
cpubot 4fa21d8
Merge pull request #6 from 0xPolygonZero/speed_up_blockhashes
Nashtare 17c9bb9
Add licenses (#9)
cpubot 30f140e
Add support for providing checkpoint block
cpubot d063843
Fix `fetch_previous_block_hashes` going out of bounds (#12)
cpubot cf1dffd
Allow verifier to load only necessary data
Nashtare 9356bcc
Clippy
Nashtare 2f08b98
Add verifier_state_* to .gitignore
Nashtare e0d0f11
Create output directory if non-existent
Nashtare ab4daf6
Add checkpoint height to script
Nashtare 40cab23
Merge pull request #14 from 0xPolygonZero/output_dir_err_msg
Nashtare 03f1d80
Small typo fix
muursh 4e1d363
Merge pull request #15 from 0xPolygonZero/script_checkpoint
Nashtare 81a3b07
Merge pull request #13 from 0xPolygonZero/verifier_state
Nashtare 5e998e0
Update dependencies
Nashtare e6da9fa
Pacify clippy
Nashtare d2cc50b
More clippy
Nashtare 28356c0
Logic to parse withdrawals from the full node
BGluth c3cdba1
Merge pull request #20 from 0xPolygonZero/move_deps
Nashtare 44d8060
Implement on-demand recursive circuit table loading (#21)
cpubot 3a1a81d
Create CODEOWNERS
muursh edb0b71
Merge pull request #22 from 0xPolygonZero/code_owners
muursh cc9b043
Bump h2 from 0.3.21 to 0.3.24
dependabot[bot] 0811297
Update deps
Nashtare 7c42df1
Add testing mode for debugging
Nashtare 6430137
Add block debugging script
Nashtare 3fb04e2
Merge pull request #23 from 0xPolygonZero/dependabot/cargo/h2-0.3.24
muursh 07d8d27
Clippy
Nashtare b1020c5
Revert changes on prove_blocks script
Nashtare 8db68b9
Address comments
Nashtare f5120b2
Remove dummy agg proof layer for testing
Nashtare 5d1534f
Merge pull request #24 from 0xPolygonZero/test-tooling
Nashtare 6dca99d
Fix checkpoint block for debug script
Nashtare 7ba1576
Fix arithmetic circuit typos
Nashtare 33c4c20
Merge pull request #29 from 0xPolygonZero/fix_old_blocks_debug_script
Nashtare 7a738a6
Rework CI
Nashtare 710a96e
Bump mio from 0.8.9 to 0.8.11
dependabot[bot] 3ce315a
Merge pull request #31 from 0xPolygonZero/dependabot/cargo/mio-0.8.11
muursh 55ee6da
Update circuit location
Nashtare 1deb141
Merge pull request #30 from 0xPolygonZero/ci
Nashtare 6f10bd8
Merge pull request #32 from 0xPolygonZero/circuits_folder
Nashtare f88151c
Bump deps and fix compile failure
Nashtare a4f1db3
Merge pull request #35 from 0xPolygonZero/fix-nightly-bump-deps
Nashtare 410a1cc
Fixed proof gen debug script not forcing `1` worker
BGluth 0e3e5c9
Added a section about branches and testing
BGluth 1579645
Increased stack size for testing
BGluth f5a4c7e
Merge pull request #37 from 0xPolygonZero/testing_note_in_readme
BGluth 77259df
Merge pull request #36 from 0xPolygonZero/debug_proof_script_fix
BGluth aea9355
Fix dead link in README
julianbraha c2df0fc
Merge pull request #39 from julianbraha/develop
muursh 2661d84
Update CODEOWNERS
muursh 53bc5e2
Merge pull request #40 from 0xPolygonZero/update_codeowners
muursh 3984a91
Fix new nightly clippy warning (#41)
cpubot 3d9c98e
Ran `cargo update`
BGluth e91515d
Also ran `cargo upgrades` and updated deps further
BGluth d04f78a
fix axum api
muursh 601a014
Merge pull request #42 from 0xPolygonZero/dep_update
muursh d8c9759
Updated `.gitignore` to ignore generated plonky2 state
BGluth 3d23565
Merge pull request #43 from 0xPolygonZero/gitignore_prover_state
BGluth 72df63e
Update prover default features (#46)
Nashtare 32bb50e
feat: add circuit version consistency check
lastminutedev f3c1062
fix: use circuits code digests instead of evm_arithmetization pkg ver…
lastminutedev 522d02a
fix: fix clippy issue
lastminutedev 76a3b0c
Reduce verbosity in logs
Nashtare cd0b29b
Bump h2 from 0.3.25 to 0.3.26
dependabot[bot] e272b81
Merge pull request #50 from 0xPolygonZero/dependabot/cargo/h2-0.3.26
Nashtare af81644
Merge pull request #49 from 0xPolygonZero/verbosity
Nashtare 6c65436
fix: add pr comments fixes
lastminutedev c7cabda
Debug & proving scripts now use indentical logging
BGluth a8ec4ac
Merge pull request #52 from 0xPolygonZero/script_logging_improvement
BGluth a5a9912
Add flag to scripts
Nashtare 0a8ab51
Merge pull request #53 from 0xPolygonZero/script-native
Nashtare ddd6f11
Allow verifier to load .env file
Nashtare d429120
Add logging info from verifier side
Nashtare ab6f1f4
Merge pull request #55 from 0xPolygonZero/load_env_verifier
Nashtare cea7424
Merge pull request #47 from 0xPolygonZero/add_circuit_version_check
muursh 427648d
Updated docs for new parameter in `prove_blocks.sh`
BGluth bb37594
Apply suggestions from code review (Nashtare)
BGluth d1535f0
Merge pull request #59 from 0xPolygonZero/docs/missing_param_in_prove…
BGluth 204a443
Now logs time to generate proofs
BGluth 17535a9
Removed agg & block proof timing logic
BGluth ae915a2
Merge pull request #61 from 0xPolygonZero/proof_timing
BGluth f99f4a6
Fixed txn proof logs not rendering correctly
BGluth 211983b
Cleaned up txn proof timing output even more
BGluth 4dd7bc3
Merge pull request #63 from 0xPolygonZero/fix/txn_log_times_cleanup
BGluth e92f3b3
feat: adding block proof ci
praetoriansentry 3a008ed
Update tools/simple_test.sh
praetoriansentry 26427f9
Merge pull request #65 from 0xPolygonZero/jhilliard/block-proof-ci
praetoriansentry 1798fde
Cargo audit updates (#66)
muursh 75e8dc1
Implement RAII span for transaction timing to avoid cloning input (#67)
cpubot 5ac1350
feat: provide IR for debugging upon failure (#48)
vladimir-trifonov 35fb73a
fix: fix circuit version consistency check (#58)
vladimir-trifonov e49ef4b
Reduce sizes and add distinction with test_only mode (#69)
Nashtare ecfe184
mark: 0xaatif/ethers2alloy
0xaatif eda823a
wip
0xaatif de66688
refactor: migrate prover
0xaatif 9d34e13
wip: migrate rpc
0xaatif fabc7ee
refactor: migrate leader
0xaatif 8fbb52c
chore: clean up deps
0xaatif e08b62a
feat: fill out compat
0xaatif b209c1b
try: used
0xaatif 2f31116
Revert "try: used"
0xaatif da32ab0
fix: -Zlinker-features=-lld
0xaatif 22a4ad9
Fix linkme lld issue in CI (#79)
cpubot ebcd0ed
Revert "fix: -Zlinker-features=-lld"
0xaatif 9e91f16
refactor: common::Compat -> rpc::Compat
0xaatif 0e678fa
tweak: trivial review changes
0xaatif 3658940
Merge pull request #78 from 0xPolygonZero/0xaatif/ethers2alloy
0xaatif ef5270c
fix: fix compilation with `test_only` feature (#84)
Nashtare f685308
chore: remove duplicate print in script and lighten circuit loading (…
Nashtare cd604d3
Remove `Monolithic` load stragegy `restriction` for `InMemory` leader…
Nashtare 3c75186
feat: block interval and parallel block proving (#90)
atanmarko 893bb13
fix: docker images (#108)
leovct ade0466
feat: add transaction hash to zero trace (#103)
atanmarko c2e2331
fix: discard intermediate proofs (#106)
atanmarko 3a3a16e
feat: stdio parallel proving (#109)
atanmarko c5433a2
Fixes related to nightly and alloy (#101)
LindaGuiga aa12938
Introduce native tracer support (#81)
frisitano 91c665a
chore: bump alloy to v0.1.1 (#111)
atanmarko de8f0b5
Merge remote-tracking branch 'zero_bin/develop' into zero_bin_merge
BGluth 236e2a4
A few dep updates to get `zero-bin` to build
BGluth 9b61f59
cargo `autoinherit` pass
BGluth 1bafd90
A few more dep changes to move to `workspace` deps
BGluth 0fb571d
Requested PR changes for #279
BGluth a9eff88
fix: formatting
atanmarko a38af27
fix: ci tests
atanmarko 8de4e4f
fix: ci tests 2
atanmarko 5c0c165
fix: .gitignore
atanmarko File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
AMQP_URI=amqp://localhost:5672 | ||
ARITHMETIC_CIRCUIT_SIZE=16..23 | ||
BYTE_PACKING_CIRCUIT_SIZE=9..21 | ||
CPU_CIRCUIT_SIZE=12..25 | ||
KECCAK_CIRCUIT_SIZE=14..20 | ||
KECCAK_SPONGE_CIRCUIT_SIZE=9..15 | ||
LOGIC_CIRCUIT_SIZE=12..18 | ||
MEMORY_CIRCUIT_SIZE=17..28 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,3 +5,4 @@ Cargo.lock | |
*.iml | ||
.idea/ | ||
.vscode | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,34 +1,110 @@ | ||
[workspace] | ||
members = ["mpt_trie", "proof_gen", "trace_decoder", "evm_arithmetization"] | ||
members = ["mpt_trie", | ||
"proof_gen", | ||
"trace_decoder", | ||
"evm_arithmetization", | ||
"zero_bin/leader", | ||
"zero_bin/worker", | ||
"zero_bin/common", | ||
"zero_bin/ops", | ||
"zero_bin/verifier", | ||
"zero_bin/rpc", | ||
"zero_bin/prover"] | ||
resolver = "2" | ||
|
||
[workspace.package] | ||
edition = "2021" | ||
license = "MIT OR Apache-2.0" | ||
repository = "https://github.com/0xPolygonZero/zk_evm" | ||
homepage = "https://github.com/0xPolygonZero/zk_evm" | ||
keywords = ["cryptography", "STARK", "plonky2", "ethereum", "zk"] | ||
categories = ["cryptography::cryptocurrencies"] | ||
|
||
[workspace.dependencies] | ||
alloy = { git = "https://github.com/alloy-rs/alloy", tag='v0.1.1', default-features = false, features = [ | ||
"consensus", | ||
"reqwest", | ||
"json-rpc", | ||
"rlp", | ||
"rpc", | ||
"rpc-client", | ||
"rpc-types-eth", | ||
"rpc-types-trace", | ||
"providers", | ||
"transports", | ||
"transport-http", | ||
"rpc-types-debug" | ||
] } | ||
anyhow = "1.0.40" | ||
async-stream = "0.3.5" | ||
axum = "0.7.4" | ||
bytes = "1.5.0" | ||
ciborium = "0.2.1" | ||
ciborium-io = "0.2.1" | ||
clap = { version = "4.4.6", features = ["derive", "env"] } | ||
__compat_primitive_types = "0.12.2" | ||
criterion = "0.5.1" | ||
dotenvy = "0.15.7" | ||
enum-as-inner = "0.6.0" | ||
enumn = "0.1.12" | ||
env_logger = "0.10.0" | ||
ethereum-types = "0.14.1" | ||
eth_trie = "0.4.0" | ||
evm_arithmetization = { path = "evm_arithmetization", version = "0.2.0" } | ||
futures = "0.3.29" | ||
hashbrown = "0.14.0" | ||
hex = "0.4.3" | ||
hex-literal = "0.4.1" | ||
impl-codec = "0.6.0" | ||
impl-num-traits = "0.1.2" | ||
impl-rlp = "0.3.0" | ||
impl-serde = "0.4.0" | ||
itertools = "0.13.0" | ||
keccak-hash = "0.10.0" | ||
log = "0.4.20" | ||
mpt_trie = { path = "mpt_trie", version = "0.3.0" } | ||
num = "0.4.1" | ||
num-bigint = "0.4.3" | ||
num-traits = "0.2.19" | ||
once_cell = "1.13.0" | ||
paladin-core = "0.4.2" | ||
parking_lot = "0.12.1" | ||
paste = "1.0.14" | ||
pest = "2.1.3" | ||
pest_derive = "2.1.0" | ||
pretty_env_logger = "0.5.0" | ||
proof_gen = { path = "proof_gen", version = "0.2.0" } | ||
rand = "0.8.5" | ||
rand_chacha = "0.3.1" | ||
ripemd = "0.1.3" | ||
rlp = "0.5.2" | ||
rlp-derive = "0.1.0" | ||
ruint = "1.12.1" | ||
serde = "1.0.166" | ||
serde_json = "1.0.96" | ||
serde_path_to_error = "0.1.14" | ||
serde_with = "3.4.0" | ||
sha2 = "0.10.6" | ||
static_assertions = "1.1.0" | ||
thiserror = "1.0.49" | ||
tiny-keccak = "2.0.2" | ||
tokio = { version = "1.33.0", features = ["full"] } | ||
toml = "0.8.12" | ||
tower = "0.4" | ||
trace_decoder = { path = "trace_decoder", version = "0.4.0" } | ||
tracing = "0.1" | ||
tracing-subscriber = { version = "0.3", features = ["env-filter"] } | ||
uint = "0.9.5" | ||
url = "2.5.0" | ||
|
||
# zero-bin releated deps | ||
ops = { path = "zero_bin/ops" } | ||
prover = { path = "zero_bin/prover" } | ||
rpc = { path = "zero_bin/rpc" } | ||
zero_bin_common = { path = "zero_bin/common" } | ||
|
||
# plonky2-related dependencies | ||
plonky2 = "0.2.2" | ||
plonky2_maybe_rayon = "0.2.0" | ||
plonky2_util = "0.2.0" | ||
starky = "0.4.0" | ||
|
||
|
||
[workspace.package] | ||
edition = "2021" | ||
license = "MIT OR Apache-2.0" | ||
repository = "https://github.com/0xPolygonZero/zk_evm" | ||
homepage = "https://github.com/0xPolygonZero/zk_evm" | ||
keywords = ["cryptography", "STARK", "plonky2", "ethereum", "zk"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
[build] | ||
# https://github.com/rust-lang/rust/pull/124129 | ||
# https://github.com/dtolnay/linkme/pull/88 | ||
rustflags = ["-Zlinker-features=-lld"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# Default extension for generated block proofs | ||
*.zkproof | ||
|
||
# Folder containing all the locally generated circuit data | ||
circuits/ | ||
|
||
# Folders containing logs from the utility scripts in tools/ | ||
debug/ | ||
proofs/ | ||
|
||
# Files generated from the tools script tests | ||
test.out | ||
proofs.json | ||
verify.out | ||
leader.out |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
any reason why the version is removed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mistake, I'll re-add this, thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually yeah I was missing
version
in the rootCargo.toml
, but here I think we can just useworkspace = true
since it will pull from that version (I think right?).There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's easier for version publishing to have version numbers. But regardless, I don't understand why it would complain now for crates that were already here before?