-
Notifications
You must be signed in to change notification settings - Fork 3.3k
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
Map internal transactions to external (OVM) transactions #97
Conversation
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.
Looks good!
Might suggest adding a basic test here: https://github.com/ethereum-optimism/optimism-monorepo/blob/master/packages/ovm/test/contracts/l2-execution-manager.spec.ts#L45
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.
lgtm!
`hasOwnProperty('toNumber')` wasn't working as expected
* Hotfix for decoding rlp values in state transitioner * Fix for empty code hash and storage roots * Experimenting with sequencer entrypoint * We may have messed up nuisance gas * Changed how we verify keys * Pad left in state transitioner * Added some experimental stuff * Add simplifications for state transitioner * Further simplifications * Fix for execution manager * A few optimizations * Experimental fixes * Temporarily change gas limit * Temp tx index fix * Fixed bug for generating single-node root hashes * Add events to state transitioner * Added revert messages to st * Added some logging to debug * Removed console.log in execution manager * Fixed tests, linted * Remove gas metering * Have init set storage root * Fixed account encoding * Fix for when storage values do not change * Added remaining fixes * Tweaks as per review * Another sm fix * More sm fixes * Fixes in the state manager * Added more comments * Fix compilation error * Another compilation error * Minor fixes re: review
Update minigeth: fix bad handling of missing preimages in MIPS preimage
* chore: Update BBN version * up
…'s erc20 implementation (#97) --- Co-Authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com>
…rc20 implementation (#12476) * feat: add superchain erc20 bridge (#61) * feat: add superchain erc20 bridge * fix: interfaces and versions * refactor: optimism superchain erc20 redesign (#62) * refactor: use oz upgradeable erc20 as dependency * chore: update interfaces * fix: tests based on changes * refactor: remove op as dependency * feat: add check for supererc20 bridge on modifier * chore: update tests and interfaces * chore: update stack vars name on test * chore: remove empty gitmodules file * chore: update superchain weth errors * test: add superchain erc20 bridge tests (#65) * test: add superchain erc20 bridge tests * test: add optimism superchain erc20 beacon tests * test: remove unnecessary test * test: tests fixes * test: tests fixes * chore: update missing bridge on natspec (#69) * chore: update missing bridge on natspec * fix: natspecs --------- Co-authored-by: agusduha <agusnduha@gmail.com> * fix: remove superchain erc20 base (#70) * refactor: update isuperchainweth (#71) --------- Co-authored-by: agusduha <agusnduha@gmail.com> * feat: rename mint/burn and add SuperchainERC20 (#74) * refactor: rename mint and burn functions on superchain erc20 * chore: rename optimism superchain erc20 to superchain erc20 * feat: create optimism superchain erc20 contract * chore: update natspec and errors * fix: superchain erc20 tests * refactor: make superchain erc20 abstract * refactor: move storage and erc20 metadata functions to implementation * chore: update interfaces * chore: update superchain erc20 events * fix: tests * fix: natspecs * fix: add semmver lock and snapshots * fix: remove unused imports * fix: natspecs --------- Co-authored-by: 0xDiscotech <131301107+0xDiscotech@users.noreply.github.com> * fix: refactor zero check (#76) * fix: pre pr * chore: add new solady version and import it for erc20 * fix: undo forge std changes * chore: re run pre pr script * fix: semver natspec check failure (#79) * fix: semver natspec check failure * fix: ignore mock contracts in semver natspec script * fix: error message * feat: add crosschain erc20 interface (#80) * feat: add crosschain erc20 interface * fix: refactor interfaces * fix: superchain bridge natspec (#83) * fix: superchain weth natspec (#84) Co-authored-by: 0xng <ng@defi.sucks> Co-authored-by: 0xParticle <particle@defi.sucks> Co-authored-by: gotzenx <78360669+gotzenx@users.noreply.github.com> * fix: stop inheriting superchain interfaces (#85) * fix: stop inheriting superchain interfaces * fix: move events and erros into the implementation * fix: make superchainERC20 inherits from crosschainERC20 * fix: superchain bridge rename (#86) * fix: fee vault compiler error (#87) * fix: remove unused imports * chore: run pre-pr and update vendor interface * fix: refactor common errors (#90) * fix: refactor common errors * fix: remove unused version * feat: add permit2 on optimism superchain erc20 * chore: run pre-pr script * fix: reuse unauthorized error (#92) * fix: superchain erc20 factory conflicts * fix: rename crosschain functions (#94) * chore: run pre-pr * chore: run pre-pr * chore: run pre-pr * feat: add new tests on optimism superchain erc20 * fix: vars and params naming on newly added tests * fix: var name * feat: support permit2 on optimism superchain erc20 and upgrade solady's erc20 implementation (#97) --- Co-Authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com> * chore: use ierc20 alias for ierc20 solady interface (#108) --------- Co-authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com> Co-authored-by: agusduha <agusnduha@gmail.com> Co-authored-by: 0xng <ng@defi.sucks> Co-authored-by: 0xParticle <particle@defi.sucks> Co-authored-by: gotzenx <78360669+gotzenx@users.noreply.github.com>
…rc20 implementation (ethereum-optimism#12476) * feat: add superchain erc20 bridge (ethereum-optimism#61) * feat: add superchain erc20 bridge * fix: interfaces and versions * refactor: optimism superchain erc20 redesign (ethereum-optimism#62) * refactor: use oz upgradeable erc20 as dependency * chore: update interfaces * fix: tests based on changes * refactor: remove op as dependency * feat: add check for supererc20 bridge on modifier * chore: update tests and interfaces * chore: update stack vars name on test * chore: remove empty gitmodules file * chore: update superchain weth errors * test: add superchain erc20 bridge tests (ethereum-optimism#65) * test: add superchain erc20 bridge tests * test: add optimism superchain erc20 beacon tests * test: remove unnecessary test * test: tests fixes * test: tests fixes * chore: update missing bridge on natspec (ethereum-optimism#69) * chore: update missing bridge on natspec * fix: natspecs --------- Co-authored-by: agusduha <agusnduha@gmail.com> * fix: remove superchain erc20 base (ethereum-optimism#70) * refactor: update isuperchainweth (ethereum-optimism#71) --------- Co-authored-by: agusduha <agusnduha@gmail.com> * feat: rename mint/burn and add SuperchainERC20 (ethereum-optimism#74) * refactor: rename mint and burn functions on superchain erc20 * chore: rename optimism superchain erc20 to superchain erc20 * feat: create optimism superchain erc20 contract * chore: update natspec and errors * fix: superchain erc20 tests * refactor: make superchain erc20 abstract * refactor: move storage and erc20 metadata functions to implementation * chore: update interfaces * chore: update superchain erc20 events * fix: tests * fix: natspecs * fix: add semmver lock and snapshots * fix: remove unused imports * fix: natspecs --------- Co-authored-by: 0xDiscotech <131301107+0xDiscotech@users.noreply.github.com> * fix: refactor zero check (ethereum-optimism#76) * fix: pre pr * chore: add new solady version and import it for erc20 * fix: undo forge std changes * chore: re run pre pr script * fix: semver natspec check failure (ethereum-optimism#79) * fix: semver natspec check failure * fix: ignore mock contracts in semver natspec script * fix: error message * feat: add crosschain erc20 interface (ethereum-optimism#80) * feat: add crosschain erc20 interface * fix: refactor interfaces * fix: superchain bridge natspec (ethereum-optimism#83) * fix: superchain weth natspec (ethereum-optimism#84) Co-authored-by: 0xng <ng@defi.sucks> Co-authored-by: 0xParticle <particle@defi.sucks> Co-authored-by: gotzenx <78360669+gotzenx@users.noreply.github.com> * fix: stop inheriting superchain interfaces (ethereum-optimism#85) * fix: stop inheriting superchain interfaces * fix: move events and erros into the implementation * fix: make superchainERC20 inherits from crosschainERC20 * fix: superchain bridge rename (ethereum-optimism#86) * fix: fee vault compiler error (ethereum-optimism#87) * fix: remove unused imports * chore: run pre-pr and update vendor interface * fix: refactor common errors (ethereum-optimism#90) * fix: refactor common errors * fix: remove unused version * feat: add permit2 on optimism superchain erc20 * chore: run pre-pr script * fix: reuse unauthorized error (ethereum-optimism#92) * fix: superchain erc20 factory conflicts * fix: rename crosschain functions (ethereum-optimism#94) * chore: run pre-pr * chore: run pre-pr * chore: run pre-pr * feat: add new tests on optimism superchain erc20 * fix: vars and params naming on newly added tests * fix: var name * feat: support permit2 on optimism superchain erc20 and upgrade solady's erc20 implementation (ethereum-optimism#97) --- Co-Authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com> * chore: use ierc20 alias for ierc20 solady interface (ethereum-optimism#108) --------- Co-authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com> Co-authored-by: agusduha <agusnduha@gmail.com> Co-authored-by: 0xng <ng@defi.sucks> Co-authored-by: 0xParticle <particle@defi.sucks> Co-authored-by: gotzenx <78360669+gotzenx@users.noreply.github.com>
Description
Map internal transactions to external (OVM) transactions. Previously we were querying internal transaction hashes by internal transaction hashes. Now we correctly query external (OVM) transaction hashes and update applicable fields.
Contributing Agreement