Skip to content
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

feat: add the ability to use specific gas params in era vm environment and use them on script estimations #773

Merged
merged 15 commits into from
Dec 16, 2024

Conversation

elfedy
Copy link
Contributor

@elfedy elfedy commented Dec 10, 2024

What 💻

  1. Added ZkEnv that contains values to be used when instantiating Era Vm locally.
  2. Updated fee model from L1PeggedBatchFeeModelInput to PubdataIndependentBatchFeeModelInput (previous was legacy, era_test_node/testnet/mainnet use the new model)
  3. Increased max gas limit (because era test node's current version has very high fair_pubdata_price and makes txs with big factory deps revert via OOG).
  4. When initializing script runner via a fork, get block details via rpc call, then use them as ZkEnv for running the script and the simulations.

Why ✋

This adds a stepping stone to make gas simulation on era vm txs meaningful by using the actual values from the enviroment the script will be finally broadcast to. This also opens the door for a follow up PR to let users modify these params the same way they can modify EVM env params when running tests.

Evidence 📷

When simulating, simulation now uses fair_l2_gas_price, l1_gas_price and fair_pubdata_price from the environment.

@elfedy elfedy requested a review from a team as a code owner December 10, 2024 17:00
crates/script/src/lib.rs Show resolved Hide resolved
crates/zksync/core/src/vm/env.rs Show resolved Hide resolved
crates/zksync/core/src/vm/env.rs Outdated Show resolved Hide resolved
@elfedy elfedy requested a review from dutterbutter December 13, 2024 13:47
@elfedy elfedy requested a review from nbaztec December 13, 2024 16:35
Jrigada
Jrigada previously approved these changes Dec 16, 2024
crates/forge/tests/it/zk/factory_deps.rs Outdated Show resolved Hide resolved
dutterbutter
dutterbutter previously approved these changes Dec 16, 2024
@elfedy elfedy dismissed stale reviews from dutterbutter and Jrigada via 48b6628 December 16, 2024 15:06
@elfedy elfedy merged commit 7b3c869 into main Dec 16, 2024
23 checks passed
@elfedy elfedy deleted the elfedy-gas-params branch December 16, 2024 15:54
@dutterbutter dutterbutter mentioned this pull request Dec 20, 2024
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants