-
Notifications
You must be signed in to change notification settings - Fork 0
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
Zk final #3
base: zk-base
Are you sure you want to change the base?
Zk final #3
Conversation
* upgrade block trace * upgrade block trace * Correct comments
* Let blockResult limit settable * fix bug * Update cmd/geth/usage.go Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com> Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* init to * update * fix `to` address * fix * fix * refactor
* Upgrade trace code to decrease GC pressure. * Fix golangci bug * Add goproxy * update docker file * trigger ci * trigger ci * Upgrade code * Upgrade code * trigger ci Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* fix bug and upgrade trace code * minor * refactor (ethereum#105) * move * add comments * fix typo * update comments * rename extraData() * update comments Co-authored-by: HAOYUatHZ <haoyu@protonmail.com> Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: chuhanjin <419436363@qq.com>
…um#102) * change storage proof from step-wise to block-wise. Step-wise proof will be reconstructed in prover side * minor * minor * Update worker.go * purge hexInt * Update l2trace.go * Refactor l2witness/opt-storage-proof (ethereum#112) * rename GetStateData to GetLiveStateObject * revert EvmTxTraces type * rename GetLiveStateObject to GetLiveStateAccount * fix typo * some renamings * format codes * fix typo * fix typos * format codes some reverts some renamings some renamings format codes * update comments update comments * update comments update comments update comments * update comments update comments update comments * rename * rename * update * update comments Co-authored-by: maskpp <maskpp266@gmail.com> Co-authored-by: Ho Vei <noelwei@gmail.com> Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
core/vm: Make INVALID a defined opcode (ethereum#24017) * core/vm: Define 0xfe opcode as INVALID * core/vm: Remove opInvalid as opUndefined handles it Co-authored-by: Alex Beregszaszi <alex@rtfs.hu> Co-authored-by: Andrei Maiboroda <andrei@ethereum.org> Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
* Fix bug of error type * Fix bug of error type
delete node Co-authored-by: chuhanjin <419436363@qq.com>
…#113) * induce zktrie * refactoring zktrie * fix crash issue in logger * renaming JSON field * unify hash scheme * goimport and mod lint * backward compatible with go 1.17 * lints * add option on genesis file * corrections according to the reviews * trivial fixes: ValueKey entry, key in prove nodes * fixing for the proof fix ... * avoiding panic before loading stateDb in genesis setup * revert ExtraData.StateList json annotation for compatibility * fix goimports lint * fix goimports lint * better encoding for leaf node * fix proof's printing issue, add handling on coinbase * update genesis, and rule out snapshot in zktrie mode * update readme and lint * fix an issue Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com> Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
…erating witness data for mpt circuit (ethereum#123) * demo for witness generator * add simple binary for witness generating * revert the witgen utility * purge some code * induce mptwitness argument * handle case for failed tx, and special block in POA * mptwitness: refactor for enabling output ops with different order * induce witness gen with rwtable order * self-documenting options for mptwitness * fix trace flag according to review * fix issue in handling failed tx * refactor * update according to reviews Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
…#126) fix clique coinbase issue
fix getProof under zktrie
disable memory trace
add txHash in blockResult
* feat: disable SELFDESTRUCT opcode in l2geth * remove deadcode
* Update changelogs file * Update changelogs
…#149) * feat: change bytecode hash function from Keccak to Poseidon * fix TestStateProcessorErrors * rename files * copy iden3's poseidon package to local * update poseidon hash * apply new hash in codehash * extend hash method, use actual code size as cap * prune keccak(nil) for empty code * update empty code hash references to Poseidon * add TestPoseidonCodeHash * use keccak for empty code hash * go mod tidy * goimports * use Poseidon code hash in state and sync tests * run goimports * run goimports * remove unnecessary reallocation from CodeHash * goimports * move codehash API to separate module * add missing package * fix review comments * improve comments Co-authored-by: Ho Vei <noelwei@gmail.com>
* fix err handle * fix err handle * fix err handle
add account touch by 'EXTCODE' for storeTrace
* replay trace * replay trace * add sdk * fix trace test case * fix bug * Update eth/tracers/api_blockResult.go Co-authored-by: Haichen Shen <shenhaichen@gmail.com> * Update eth/tracers/api_blockResult.go Co-authored-by: Haichen Shen <shenhaichen@gmail.com> * Update eth/tracers/api_blockResult.go Co-authored-by: Haichen Shen <shenhaichen@gmail.com> * Update eth/tracers/api_blockResult.go Co-authored-by: Haichen Shen <shenhaichen@gmail.com> * add comments * fail the rpc call if get error * adjust channel length * fix bug * fix bug * remove redundant codes in worker * add test case * fix bug * fix goimports * Update eth/tracers/api_blockResult.go Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com> * fix comments * Update ethclient/ethclient.go Co-authored-by: Haichen Shen <shenhaichen@gmail.com> * Update ethclient/ethclient.go Co-authored-by: Haichen Shen <shenhaichen@gmail.com> * rm coinbase api in miner * fix comment * Update eth/tracers/api.go Co-authored-by: Haichen Shen <shenhaichen@gmail.com> * fix comment Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com> Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
…um#505) * Check tx num for CCC ErrUnknown error. * Update worker.go * Small fix. * Update * Fix log. * Update version. * Update miner/worker.go Co-authored-by: Péter Garamvölgyi <peter@scroll.io> * Update according to review. * Fix to return 0 for uint64. * Add `tcount` to mock CCC, and function `SetTxNum`. * refactor * fix * add comments --------- Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com> Co-authored-by: Péter Garamvölgyi <peter@scroll.io> Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
…thereum#508) fix: use correct roots in trace of block with one transaction
* p2p: move ping handling into pingLoop goroutine (ethereum#27887) Moving the response sending there allows tracking all peer goroutines in the peer WaitGroup. * bump version --------- Co-authored-by: Felix Lange <fjl@twurst.com>
…thereum#509) * fix error(when get pengding block) coinbase address is null * fix comments
Co-authored-by: maskpp <maskpp266@gmail.com>
Upgrade libzkp to use prover `v0.9.1`.
* refactor(worker): order L1 messages by queue index * bump version * bump version
…thereum#520) Upgrade libzkp to `v0.9.2` (fix ccc bug).
* Revert "feat: use light_mode = false for block ccc (ethereum#519)" This reverts commit a51434d. * bump version
* fix(worker): short-circuit l1 message iteration * Update core/rawdb/accessors_l1_message_test.go Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com> --------- Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
* feat: add metrics in L1 message iterator * add L1 message size metric
* configure max block range for eth_getLogs * bump version * address comments, add test * set default value * address comments * fix golint * Update cmd/utils/flags.go Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com> --------- Co-authored-by: colinlyguo <colinlyguo@scroll.io> Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
…" (ethereum#528) This reverts commit de5aebd.
…thereum#522) * Upgrade to prover `v0.9.4`, and add `SetLightMode` function. * set ccc light_mode = false for validator * fix * bump version --------- Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com> Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
fix: re-enable light mode
* Upgrade libzkp to `v0.9.5`. * bump version --------- Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
…se it (ethereum#529) * feat: configure max block range for eth_getLogs (ethereum#521) * configure max block range for eth_getLogs * bump version * address comments, add test * set default value * address comments * fix golint * Update cmd/utils/flags.go Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com> --------- Co-authored-by: colinlyguo <colinlyguo@scroll.io> Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com> * set dafault maxblockrange to -1 and fix nil pointer bug * update version * change error logic * check for range in filter * Update eth/ethconfig/config.go Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com> * adjust error message * fix duplicate version --------- Co-authored-by: colinlyguo <colinlyguo@scroll.io> Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com> Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* fix: use non-overlapping db prefix for L1 messages * bump version
* add new configuration * update * update * bump version * remove todo
* Upgrade to use prover `v0.9.7`. * Update version.
…ethereum#539) * Free Rust CString by `from_raw`. * Update params version.
* fix: eth_estimateGas zero balance error * bump version * revert irrelevant auto format * remove isEstimateGas in DoCall * fix CI * bump version --------- Co-authored-by: maskpp <maskpp266@gmail.com>
* feat(rollup): sync finalized batches from L1 * tweak * address comments * address comments * tweak * address comments * Update rollup/eventwatcher/eventwatcher.go Co-authored-by: Péter Garamvölgyi <peter@scroll.io> * address comments * address comments * address comments * add s.rollupSyncService.Stop() * add block chunk batch tests * fix goimports-lint * address comments * address comments * remove * add TestUnpackLog test * add decodeChunkRanges tests * add commit batch version check * fix goimport & golint * tweak * fixes * add TestRollupSyncServiceStartAndStop * add TestGetChunkRanges * address comments * add TestValidateBatch * add TestCalculateFinalizedBatchMeta * address comments * address comments * fix * address comments * address comments * fix * tweak log * fix * tweak logs * increase wait time * add --rollup.verify flag * add flag check in s.rollupSyncService.Stop() * bump version * refactor * tweak configs * tweak * refactor getLocalInfoForBatch * use syscall.Kill(os.Getpid(), syscall.SIGTERM) to shutdown * refactor decodeChunkBlockRanges * nit * address comments * address comments * add WithdrawRoot and StateRoot in FinalizedBatchMeta * address comments * address comments * add ctx.Err() check in retry * add configs in gen_config.go * bump version * fix goimport & golint * try to fix goimport * revert change * fix goimport & golint * tweak * bump version * add l2 block -> batch index mapping * bump version * add mainnet config * bump version * address comments * rename some vars * feat: add more detailed logs in crash case (ethereum#547) add more detailed logs in crash case * trigger ci * re-add batch finalization progress log * remove block number -> batch index mapping --------- Co-authored-by: Péter Garamvölgyi <peter@scroll.io> Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
localStateRoot := endBlock.Header.Root | ||
if localStateRoot != event.StateRoot { | ||
log.Error("State root mismatch", "batch index", event.BatchIndex.Uint64(), "start block", startBlock.Header.Number.Uint64(), "end block", endBlock.Header.Number.Uint64(), "parent batch hash", parentBatchMeta.BatchHash.Hex(), "l1 finalized state root", event.StateRoot.Hex(), "l2 state root", localStateRoot.Hex()) | ||
syscall.Kill(os.Getpid(), syscall.SIGTERM) |
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.
This is what I said about batch validation. We just crash if local batch is different from what we get from L1
} | ||
} | ||
|
||
func (s *RollupSyncService) parseAndUpdateRollupEventLogs(logs []types.Log, endBlockNumber uint64) error { |
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.
This is main function that processes events on L1
No description provided.