Conversation
🦋 Changeset detectedLatest commit: 5e8d8df The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Codecov Report
@@ Coverage Diff @@
## regenesis/0.4.0 #1008 +/- ##
===================================================
- Coverage 86.37% 86.26% -0.11%
===================================================
Files 48 49 +1
Lines 1923 1937 +14
Branches 304 305 +1
===================================================
+ Hits 1661 1671 +10
- Misses 262 266 +4
Continue to review full report at Codecov.
|
|
The tests are currently failing because transactions are failing - this is expected as the gas limit is being underestimated |
packages/contracts/contracts/optimistic-ethereum/OVM/accounts/OVM_ECDSAContractAccount.sol
Outdated
Show resolved
Hide resolved
|
This should be based off of the next regenesis branch |
f64d5c3 to
796aada
Compare
796aada to
02966b6
Compare
This comment has been minimized.
This comment has been minimized.
packages/contracts/contracts/optimistic-ethereum/OVM/accounts/OVM_ECDSAContractAccount.sol
Outdated
Show resolved
Hide resolved
...s/contracts/contracts/optimistic-ethereum/libraries/wrappers/Lib_ExecutionManagerWrapper.sol
Show resolved
Hide resolved
packages/contracts/contracts/optimistic-ethereum/OVM/accounts/OVM_ECDSAContractAccount.sol
Outdated
Show resolved
Hide resolved
packages/contracts/contracts/optimistic-ethereum/OVM/accounts/OVM_ECDSAContractAccount.sol
Outdated
Show resolved
Hide resolved
packages/contracts/contracts/optimistic-ethereum/OVM/accounts/OVM_ECDSAContractAccount.sol
Outdated
Show resolved
Hide resolved
packages/contracts/contracts/optimistic-ethereum/libraries/utils/Lib_StringUtils.sol
Outdated
Show resolved
Hide resolved
b85ce16 to
837daa0
Compare
837daa0 to
8bcbc45
Compare
7b669c9 to
5e8d8df
Compare
|
If I understand correctly, this should now be based off of |
db1574a to
2bd4973
Compare
|
Let's close this out until progress on it picks back up around |
Description
Allows the L2 gas limit to be specified instead of passing in the block gas limit for the transaction. Not 100% sure of the best approach, we should specify this codepath into the most minimal changes required to function.
Inside of
toExecutionManagerRun, the gethtypes.Messageis converted into a newtypes.Messagewhere its data is serialized into the form thatExecutionManager.runaccepts. This means that the fields are packed into the calldata, see the call toabi.Pack. The call tomodMessageis updated such that it now accepts the decoded L2 Gas Limit. This should make it so that this is the gas limit passed through to the EVM execution. Previously the max gas limit was always passed through to the execution and the fee was only being paid fortx.gasPrice * tx.gasLimitso a malicious contract could use way more gas than a user pays for.A dependency of this working is adding the additional gas used to the return value of
eth_call- sinceeth_callgoes throughExecutionManager.simulateMessage, it skips the gas used in the previous call frames. We propose to implement a function in Go that accepts the calldata and returns the extra gas used to add to the result oflegacyDoEstimateGasMetadata
eth_estimateGas#823Fixes OP-694