Péter Garamvölgyi
751dbda234
feat: add metrics in L1 message iterator ( #527 )
...
* feat: add metrics in L1 message iterator
* add L1 message size metric
2023-10-01 14:48:59 +02:00
Péter Garamvölgyi
fe8232a40f
fix(worker): short-circuit l1 message iteration ( #525 )
...
* 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>
2023-09-29 21:16:37 +02:00
Péter Garamvölgyi
93a9497d75
refactor(worker): order L1 messages by queue index ( #512 )
...
* refactor(worker): order L1 messages by queue index
* bump version
* bump version
2023-09-18 10:34:51 +02:00
maskpp
417dd02827
fix(sdk): accept blocks where coinbase is null (e.g. pending block) ( #509 )
...
* fix error(when get pengding block) coinbase address is null
* fix comments
2023-09-13 17:00:17 +08:00
Péter Garamvölgyi
9c1433b62a
fix(trace): use correct roots in trace of block with one transaction ( #508 )
...
fix: use correct roots in trace of block with one transaction
2023-09-11 12:13:50 +02:00
HAOYUatHZ
dade96d416
fix(rawdb, api): fix rawdb.writeSkippedTransaction & api.GetSkippedTransaction ( #503 )
...
* fix(rawsdb): fix `writeSkippedTransaction`
* Update version.go
* minor
* clean up
2023-09-07 15:35:04 +08:00
HAOYUatHZ
0b6c3be40d
feat(api/rawdb): allow storing traces for skipped txs ( #500 )
2023-09-05 11:03:15 +08:00
Zhang Zhuo
2d9d48d463
fix(trace): record account proof for ErrContractAddressCollision ( #488 )
...
* fix(trace): record account proof for ErrContractAddressCollision
* bump version
* fix memory reading
* bump version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-09-04 04:05:42 +00:00
Zhang Zhuo
c60fa3a643
fix(trace): fix memory trace size ( #497 )
...
* core/vm: for tracing, do not report post-op memory
* fmt
* bump version
---------
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-09-01 17:01:53 +08:00
Zhang Zhuo
d45613f4b5
fix(trace): more consistent invalid opcode trace ( #487 )
...
* fix: more consistent invalid opcode trace
* Update version.go
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-31 15:30:22 +02:00
Zhang Zhuo
ef328dbb6e
fix(modexp): disallow len of 0x8000000000000000000000000000000000000000000… ( #496 )
...
* modexp: disallow len of 0x8000000000000000000000000000000000000000000000000000000000000000
* minor
---------
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-08-31 10:33:31 +08:00
HAOYUatHZ
ea3a3c9a5d
fix(miner): fix repeatedly processing dropped txs in a new block ( #491 )
...
* squash
* improve comments
* Remove tx (#493 )
* force drop
* minor
* store skipped L2 tx for `circuitcapacitychecker.ErrUnknown`
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* add lock
* use mu
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-30 14:38:04 +08:00
HAOYUatHZ
d650299a36
feat(miner): consider l1msg in txCount ( #486 )
...
* feat(miner): consider l1msg in txCount
* refactor
* tweak
* fix comments
* fix unit test
* set chainConfig.Scroll.MaxTxPerBlock in l1 message test
* add a skipped tx in TestAcceptableTxlimit
* add l1 skipped msg in test
* fix unit test
* fix unit test
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* revert some test changes
* tweak
* bump 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>
2023-08-27 00:08:04 +08:00
Péter Garamvölgyi
7de261b1be
feat: store skipped transactions in local db ( #467 )
...
* feat: store skipped txs in local db
* bump version
* bump version
* fix test
* include L2 txs in skipped index
* goimports
* rename more
* bump version
* fix missed renames
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* fix: exclude L1 message from block payload size validation (#476 )
* fix: exclude L1 message from block payload size validation
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* bump version
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
* fix: update row estimation with scroll-prover `v0.7.2` (#475 )
* Fix row estimation.
* Update libzkp.
* more
* prepare
* finish
* upgrade
* bump version
* fix tests
* Update to scroll-prover `v0.7.2`.
* fix tests
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Update miner/worker.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Reset ccc when skips first tx.
* do not unnecessarily skip L1 message
* fix ccc reset and improve code readability
* seal block on circuitcapacitychecker.ErrUnknown
---------
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* refactor: simplify ccc revert to snapshot (#480 )
* simplify ccc revert to snapshot
* Update version.go
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* feat: use --gcmode=archive and --cache.noprefetch=true by default (#482 )
* feat: use --gcmode=archive and --cache.noprefetch=true by default
* refuse to start with invalid config
* lint
* lint
* feat(sdk): support compressed response (#469 )
* enable use compression algorithm
* fix ci
* Just enable decode compressed content at ethclient
* fix comments
---------
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* fix: disable pruning and prefetch if not flags are provided (#483 )
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
* fix: update libzkp to use scroll-prover `v0.7.5` (#484 )
* Update libzkp to use scroll-prover `v0.7.5`.
* Update version.
* address comments
* bump version
* nit
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
Co-authored-by: Steven <asongala@163.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
Co-authored-by: iczc <iczcalan@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: colin <102356659+colinlyguo@users.noreply.github.com>
2023-08-25 15:41:05 +02:00
Péter Garamvölgyi
727f88bc5f
fix: exclude L1 message from block payload size validation ( #476 )
...
* fix: exclude L1 message from block payload size validation
* fix the bug when calculating l2TxCount. (#479 )
* fix bug when calculate l2 tx count
* Update version
* bump version
---------
Co-authored-by: maskpp <maskpp266@gmail.com>
2023-08-23 14:06:06 +02:00
Ho
be1600f078
refactor(trace): wrap the core routine in CreateTraceEnv ( #460 )
2023-08-20 18:39:20 +08:00
Haichen Shen
e8d9d60cf0
fix: use FeeVault address in the EVM BlockContext ( #473 )
...
* fix: use Feevault address in the EVM BlockContext
* bump version
* revert format change
* fix
2023-08-19 14:01:14 +02:00
Péter Garamvölgyi
3027111956
refactor: add more context to tracing failure ( #466 )
2023-08-17 07:25:03 +02:00
maskpp
6195e2e77d
fix(trace): fix contract call's ByteCode ( #465 )
...
* fix bug
* update version
2023-08-14 18:09:39 +08:00
Péter Garamvölgyi
25fe3ba69a
feat: add startL1QueueIndex field to traces ( #463 )
...
* feat: include startL1QueueIndex in traces
* fix
* update example
2023-08-12 11:07:36 +08:00
Péter Garamvölgyi
eda99eec35
fix: skip L1 message that leads to gas limit exceeded ( #455 )
...
* skip L1 message that leads to gas limit exceeded
* add test
* do not skip l1 messages from the same account
2023-08-08 01:59:11 +02:00
HAOYUatHZ
b428fa1339
fix(trace): fix commit state when tracing ( #451 )
...
* fix(trace): fix commit state when tracing
* bump version
2023-08-07 14:15:21 +08:00
Péter Garamvölgyi
805676e227
feat: Update Sepolia genesis ( #449 )
...
update Sepolia genesis
2023-08-06 19:25:10 +02:00
Péter Garamvölgyi
69dd39afba
fix: do not overwrite correct L1 index on signer startup ( #443 )
...
* fix signer worker
* add logs
* bump version
* Fix
2023-08-06 14:22:02 +02:00
vyzo
94190f0163
feat: sepolia flag and config ( #377 )
...
* add sepolia flag and configuration
* bump patch version
* Update params/version.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Update params/config.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Update params/config.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* explicitly set l1.confirmations and l1.sync.startblock for sepolia
* update config
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-04 19:45:39 +02:00
Ho
6b20ce624f
fix: correctly initialize ZkTrieTracer for ccc ( #440 )
...
* fix issue for zktrieTracer not inited
* bump version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-04 07:54:55 +02:00
Péter Garamvölgyi
26eeb40ea3
fix: use correct hash for ccc write in worker ( #438 )
2023-08-04 04:22:47 +02:00
Péter Garamvölgyi
5611b8296a
refactor: add more ccc logs ( #436 )
...
* refactor: add more ccc logs
* format hashes
* more logs
* more logs
2023-08-03 18:16:32 +02:00
HAOYUatHZ
ef67ff8bbb
fix(miner): fix acc_rows for empty block ( #431 )
...
* Revert "fix(worker): set row consumption for genesis and empty blocks (#428 )"
This reverts commit b51736fd3c .
* fix: fix accRows for empty block
* bump version
* remove log
* fix
* set default accRows as nil explicitly
* fix genesis block
* fix
2023-08-03 13:09:59 +02:00
HAOYUatHZ
60e260b2f1
fix: fix block validator createTraceEnv ( #429 )
2023-08-03 15:56:11 +08:00
Péter Garamvölgyi
b51736fd3c
fix(worker): set row consumption for genesis and empty blocks ( #428 )
...
* fix: initialize row consumption for genesis and empty blocks
* bump version
2023-08-03 09:48:03 +02:00
Péter Garamvölgyi
96d12015e1
fix: decode subcircuit row usage as integer ( #421 )
...
* fix subcircuit row usage type
* bump version
2023-08-02 06:03:18 +02:00
Ho
11b35cd014
feat: upgrade zktrie to v0.6.0 ( #403 )
...
* add domain-spec poseidon hash
* add warning message for deprecated method
* update goimports
* update zktrie to v0.6
* fixes for upgrade
* resume deletion proof
* update alpha genesis since new hash sch eme
* dump zktrie to 0.6
* induce genesis block for scroll sepolia network
* Update version.go
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-02 10:54:41 +08:00
HAOYUatHZ
2f9edf73ca
feat(rollup): add circuits capacity checker ( #321 )
...
* add proof for predeployed storages
* reverse inneeded code
* update for mainbranch merging
* add pertx storage trace
* dummy tx proof
* add txstorage trace
* add coinbase storage as trace
* enable (sync) tracing by default
* basic
* init cgo framework
* fix break loop
* integrate the right zkevm version (#323 )
* finish rust codes
* use dylib (#325 )
* flip
* ?
* use cdylib
* revert
* fix
* apply_tx
* rename
* fixing types
fixing types
fixing types
* clean up
* ExecutionResults (#328 )
* filling
* filling
* more
* clean up
* filling
* coinbase
* add
* MPTWitness
* ExecutionResults WIP
* L1fee
L1fee
* sender
* to
* Failed & ReturnValue
* createdAcc & after
* remove MPTWitness
* txStorageTrace
* add FeeRecipient
* add StorageTrace
* fix FFI types
* better logger
* cargo fmt
* fix
* add build tags
* update Makefile
* fix library
* improve ld path
* correctly deal with circuit_capacity_checker returned result
* fix return value
* update cargo (#333 )
* update cargo
* update
* update go
* refactor
* raname `circuits capacity checker` to `circuit capacity checker`
* some refactorings
* [Fix] storage proof generation in capacity checker (#348 )
* make per-tx storage and deletion proof work
* format
* fix misplaced markdeletion
---------
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
* docker (#363 )
* update Dockerfile
* build: update go version to 1.19
* update
* fix
* fix
* try
* simplify
* revert go version
update l2geth Dockerfiles
* fix
* fix coinbase
* fix (#369 )
* format
* Update version.go
* address comments
* Capacity refactor (#374 )
* init
* id
* support multiple instances
* fix id
* fix conflicts
* refactor to use same codes (#379 )
* re-init
* WIP
* WIP
* refactor
* go
* minor
* fix storage proof of l1gas price oracle
* move 1
* move 2
* move 3
* move 4
* move 5
move 5
* move 6
move 6
* move 7
* move 8
* move 9
* move 10
* clean up
clean up
---------
Co-authored-by: Ho Vei <noelwei@gmail.com>
* finish basic
* minor
* config capacity check in block_validator (#380 )
* init
* done
ref
* fix tests
fix tests
fix tests
fix tests
* add more comments
* apply_block
* improve logs
* cargo fmt
* Capacity big refactor (#383 )
* CreateTraceEnv
* WIP
* draft
more
fix
* for test
* fortet
* clean up
* add more comments
* goimports -local github.com/scroll-tech/go-ethereum -w .
* fix typos
* attempt 1
* attempt 2
* attempt 3
* gogogo
* clean up
* fix
* fix
* rename
* minor
* fix
* minor
* minor
* improve doc
* use dedicated `checkCircuitCapacity` flag (#394 )
* refactor
* fix
* add lock
* [feat] capacity checking: upgrade libzkp (#395 )
* upgrade
* upgrade libzkp
* write RowConsumption (#396 )
* write RowConsumption
* name alignments
* revert some formatting
* add lock to CircuitCapacityChecker in BlockValidator
* remove mutex pointer
* improve github workflow
* improve
* store row consumption in mining (#397 )
* prepare
* finish
* add more logs
* mark `ApplyBlock` as ready
* update libzkp (#401 )
* fix
* Capacity detail (#402 )
* fix(block-validation): consider skipping in ValidateL1Messages (#405 )
* fix(block-validation): consider skipping in ValidateL1Messages
* fix(block): consider skipping in L1MessageCount
* fix l1 validation tests
* fix NumL1Messages
* fix impl.go return types
fix
* better error handling (#407 )
* add
add
* add
* add
* add
* add
* cargo fmt
* add
* update
* add
* WIP
* minor
* gogogo
* gogogo
* fix
* fix
* fix
* cargo clippy
* improve
* improve
* creation lock (#408 )
* creation lock
* update
* Debug log (#409 )
* add more logs
* more
* more
* fix
* improve
* Update cmd/utils/flags.go
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* refactor worker.commit()
* avoid re-calculate
* txpool ccc err handling (#411 )
* more explicit error comments
* add more logs
* fix unnecessary commit
* add more logs
* fix `ineffassign`
* add more comments
* log id for `NewCircuitCapacityChecker` (#414 )
add log to `NewCircuitCapacityChecker`
* Persist skip info for block where all L1 msgs are skipped (#415 )
persist skip info for block where all L1 msgs are skipped
* Update version.go
---------
Co-authored-by: Ho Vei <noelwei@gmail.com>
Co-authored-by: Zhang Zhuo <mycinbrin@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-08-01 13:52:31 +08:00
Nazarii Denha
a677ee3ccf
fix(ethapi): change scroll_getBlockByHash ethapi behaviour ( #398 )
...
* fix api behaviour
* update version
* not retrun error in ethclient
* add comment
* modify rowconsumption struct
* fix lint
* change naming
2023-07-20 00:10:34 +08:00
Nazarii Denha
3943547960
feat(rawdb&rpc): add block row consumption rpc ( #388 )
...
* add db api for rowconsumption
* add rpc api for block row consumption
* return nil if rc is is not known
* add method to sdk
* bump version
* small fix
* update version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-07-11 22:07:09 +08:00
Nazarii Denha
5eac3a73bc
feat(core/vm): modexp precompiled support also less than 32-bytes inputs ( #393 )
...
* modexp support 32-bytes or less inputs
* change revert string
* bump version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-07-10 22:04:14 +08:00
HAOYUatHZ
8c5bf3069f
fix(trace): fix statesAffected in traceLastNAddressAccount ( #367 )
...
* fix(trace): fix
* Update version.go
2023-07-07 10:27:55 +08:00
HAOYUatHZ
3cf5ba882d
feat(trace): add per_tx_storage_trace ( #372 )
...
* add proof for predeployed storages
* reverse inneeded code
* update for mainbranch merging
* add pertx storage trace
* dummy tx proof
* add txstorage trace
* add coinbase storage as trace
* Update version.go
* address comments
---------
Co-authored-by: Ho Vei <noelwei@gmail.com>
2023-07-04 22:21:12 +08:00
Péter Garamvölgyi
38a6a1e964
fix: include L1MessageTx fields in transaction RPC result ( #375 )
...
* fix: include L1MessageTx fields in tx RPC result
* bump version
2023-06-30 15:52:57 +02:00
Péter Garamvölgyi
8c141eb90f
feat(evm): limit ecPairing precompile to use up to 4 inputs ( #373 )
...
* feat(evm): limit ecPairing precompile to use up to 4 inputs
* update test cases
* reorder test functions
2023-06-29 09:22:48 +02:00
Nazarii Denha
e09346ee20
feat(core/vm): revert modexp precompiled contract if input is not u256 ( #361 )
...
* Revert modexp precompiled contract if input is not u256
* bump version
* use specific error
* bump version
* tests
* bump version
* fix lint
* Update version.go
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-06-28 10:32:26 -07:00
Richord
b5e8d12c06
feat: return keccak(chainId || height) for BLOCKHASH opcode ( #359 )
...
* changed blockhash behavior
* added patch version
* Update core/vm/runtime/runtime_test.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* Update core/vm/runtime/runtime_test.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* lint fix
* changed wording
* used interpreter.hasher and padded chainId to uint64
* used interpreter.hasher and padded chainId to uint64
* undo changes
* bump version
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-06-14 13:11:31 -07:00
HAOYUatHZ
f055f50f9d
feat: update l1fee calculation ( #351 )
2023-06-13 10:57:59 +08:00
Péter Garamvölgyi
4e0daeb300
fix(trace): change l1Fee type from uint64 to *big.Int ( #360 )
...
* fix: change l1Fee type from uint64 to *big.Int
* use hexutil.Big
2023-06-09 22:28:40 +08:00
Péter Garamvölgyi
983d630244
feat: Sync and relay L1 messages ( #350 )
...
* add l1 config in genesis config (#249 )
* add l1 config in genesis config
* fix lint
* Update params/config.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* extend node configuration (#251 )
* extend node configuration
* use block number instead of hash
* accept safe, finalized and numbers for L1Confirmations
* fix typos
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Fix/improve node config parsing (#260 )
* raise error on failed parsing
* default value
* add l1-message-type, transaction methods (#252 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* txpool l1 check, pointer change, marhsal test
* draft: start implementing l1message gas behavior
* draft: start implementing l1message gas behavior
* change to gas usage
* error comment typo
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* goimports
* update nonce, add hash test (fails), marshal test
* goimports
* target addr cant be nil
* change call msg
* comment out test
* lint
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Add L1 message database (#255 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* add L1 message store to rawdb
* remove comments
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* add range check
* fix tests
* update comments
* nit
* support blocks with 0 l1 messages
---------
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
* Fix L1Message Deep Copy, Complete Bridge Tx Hash test (#269 )
* deep copy value field, add tx hash test
comment
* typo
* Rename nonce to queueindex, increment sender nonce on L1 message execution (#271 )
* change nonce to queueindex, increment nonce on L1 message
* fix db acccessors
* Update core/types/transaction_marshalling.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* Fix db inspect command (#276 )
fix db inspect command
* Add l1 sync service (#256 )
* extend node configuration
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* use block number instead of hash
* accept safe, finalized and numbers for L1Confirmations
* add L1 message store to rawdb
* remove comments
* fix typos
* add L1 message sync service
* use l1 contract address and chain ID
* use L1DeploymentBlock
* add confirmation config
* move bridge client to separate file
* use uint64 block number
* fix bigint comparison
* rename constants
* add more logs
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* check if config is provided
* improve sync service DB batched writes
* add range check
* fix tests
* update comments
* nit
* fix flush range and improve comments
* solve circular dependency
* update stress tests
* initialize l1 client for geth
* start sync service
* add more comments
* check nil correctly
* address comments
* fix merge
* fix genesis l1config deserialization
* add sync progress logs
* initial sync
* handle leveldb not found error
* use errors.Is
* address comments
* update DefaultPollInterval
---------
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
* Add L1 message validation (#272 )
* add L1 message validation
* add comments and better error handling
* handle leveldb not found error
* update incorrect condition for genesis block
* typo
* change inclusion index logic
* disable L1 message check for legacy tests
* set NumL1MessagesPerBlock to 0 in tests
* update default genesis config
* Add L1 msg validation tests (#303 )
add L1 msg validation tests
* Update miner include l1 messages (#265 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* add L1 message store to rawdb
* add L1 message sync service
* remove comments
* use l1 contract address and chain ID
* extend node configuration
* use block number instead of hash
* accept safe, finalized and numbers for L1Confirmations
* fix typos
* use L1DeploymentBlock
* add confirmation config
* move bridge client to separate file
* use uint64 block number
* fix bigint comparison
* rename constants
* add more logs
* Fix/improve node config parsing (#260 )
* raise error on failed parsing
* default value
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* check if config is provided
* improve sync service DB batched writes
* include l1 messages in blocks: part 1
* add l1-message-type, transaction methods (#252 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* txpool l1 check, pointer change, marhsal test
* draft: start implementing l1message gas behavior
* draft: start implementing l1message gas behavior
* change to gas usage
* error comment typo
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* goimports
* update nonce, add hash test (fails), marshal test
* goimports
* target addr cant be nil
* change call msg
* comment out test
* lint
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
* Add L1 message database (#255 )
* add l1-message-type, transaction methods
* goimports
* Update core/types/transaction.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* add L1 message store to rawdb
* remove comments
* rename to l1_message
* rename variables and add comments
* write l1 msgs in a batch
* add more comments
* update tests
* allow batched and non-batched writes
* rename to accessors_l1_message
* handle error
* add range check
* fix tests
* update comments
* nit
* support blocks with 0 l1 messages
---------
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
* build(docker): auto docker push when pushing git tags (#258 )
* build(docker): update docker trigger tag prefix (#259 )
* Fix L1Message Deep Copy, Complete Bridge Tx Hash test (#269 )
* deep copy value field, add tx hash test
comment
* typo
* commitl1messages
* lint
* Revert "add L1 message sync service"
This reverts commit 5305e8a5de14766ed249e1a7d64042c7a72cf5c2.
* Revert "move bridge client to separate file"
This reverts commit 0b220bee37de93c3250545e23430db2c401a2f90.
* update branch
* use commitMessages for l1Txs
* little fix
* fix config
* fix test
* comment fixes
* fix
* fix config check
---------
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
* Add ErrUnknownAncestor tests (#305 )
add ErrUnknownAncestor tests
* worker test include l1 msgs (#306 )
* worker test include l1 msgs
* move L1 message index update next to block insertion
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* exclude l1 messages from transaction count limit in block (#307 )
* exclude l1 messages from transaction count limit in block
* fix comments
* trigger ci
* nit
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
* Expose queueIndex on Transaction (#316 )
expose queueIndex on Transaction
* test that l1msg doesn't count in maxTxPerBlock limit (#312 )
* test that l1msg doesn't count in maxTxPerBlock limit
* fix, comment
* retrigger ci
* change order inside test
---------
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* reuse trace nonce field for queueIndex
* expose scroll APIs on the geth console
* add L1 message query APIs
* Trigger new block on new l1 messages (#343 )
* trigger new block on new l1 messages
* typo
* initialize l1MsgCh
* fix worker l1msg tests (#345 )
---------
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
* test(worker): ensure that l1 messages are included in the correct order (#346 )
test that l1msgs added in correct order
* rename enqueueIndex --> queueIndex
* move QueueIndex into transaction
* improve l1 db interface
* formatting
* bump version
* print l1config
* add API to query latest included message queue index
* clean up tx limit logic
* add clarifying comments and todos to ValidateL1Messages
* improve db comments and logs
* clean up L1MessageTx type handling
* format
* format
* improve L1 message block check
* fix missing L1 event handling
* fix TestL1MessageValidationFailure
* simplify sync height resume logic
* make l1Config.l1MessageQueueAddress non-pointer
* improve command line flags
* remove todo
* use abigen tools for log filtering
* cache block L1 message count
* nit: fix variable name case
* improve logs
* flush pending writes to DB before shutdown
---------
Co-authored-by: Nazarii Denha <dengaaa2002@gmail.com>
Co-authored-by: Max Wolff <max@scroll.io>
Co-authored-by: Haichen Shen <shenhaichen@gmail.com>
Co-authored-by: Max Wolff <maxcwolff@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
Co-authored-by: HAOYUatHZ <haoyu@protonmail.com>
2023-06-07 07:24:19 -07:00
Richord
1f167bd730
fix(ethclient): support WithdrawalsHash in Scroll Go SDK ( #354 )
...
* added withdrawalsHash to header
* bump version
---------
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-06-05 09:52:46 -07:00
Richord
ad43d0ea3f
feat(block_validator): check payload size during block validation ( #322 )
...
* added block size check in validate body
* added payload method to block
* Update core/types/block.go
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
* fixed test
* fix
* bump version
* fix test
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: Péter Garamvölgyi <peter@scroll.io>
2023-05-24 15:23:57 +02:00
Péter Garamvölgyi
334892ae07
Return error for disabled precompile calls ( #337 )
...
return error for disabled precompile calls
2023-05-24 11:41:33 +02:00
Nazarii Denha
1094569b5b
feat: enable eip and update check ( #335 )
...
* enable eip and update check
* Update version.go
---------
Co-authored-by: Péter Garamvölgyi <th307q@gmail.com>
Co-authored-by: HAOYUatHZ <37070449+HAOYUatHZ@users.noreply.github.com>
2023-05-19 21:41:58 +08:00