-
Notifications
You must be signed in to change notification settings - Fork 3.9k
feat: cgt #17412
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: cgt #17412
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #17412 +/- ##
===========================================
+ Coverage 73.33% 80.97% +7.64%
===========================================
Files 172 121 -51
Lines 10954 6239 -4715
===========================================
- Hits 8033 5052 -2981
+ Misses 2777 1187 -1590
+ Partials 144 0 -144
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
|
Looks like I am getting a bunch of failures due to version mismatches. It works when not running in a forked environment, so I am guessing it is something to do with u16a not being deployed and upgraded to yet? Run tests: Example failure: |
| } | ||
|
|
||
| func setCustomGasToken(intent *Intent) { | ||
| intent.Chains[0].CustomGasToken = &CustomGasToken{ |
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.
Should make sure the native asset liquidity amount is set properly everywhere it needs to be
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.
Updated here: 9bb50bd
Signed-off-by: Hex <[email protected]> Co-authored-by: niha <[email protected]> Co-authored-by: Ashitaka <[email protected]> Co-authored-by: AgusDuha <[email protected]>
* feat: add L1BlockCGT * feat: add L2ToL1MessagePasserCGT * chore: remove test exclution in test validation
* test(cgt): fix failing tests * test(cgt): fix portal version * test(cgt): skip tests on forked mode * fix: predeploys test cgt mismatch * test(cgt): minor fixes --------- Co-authored-by: niha <[email protected]>
Updates the implementation to use the new feature flagging system
Use the legacy config name so that less needs to change for legacy CGT chains
Remove leftover merge conflict
Add a specific test for CGT in the intent
* chore: use w3 library * fix: msg error * refactor(cgt): rename amount & add geq 0 check (#600) * feat: add NativeAssetLiquidityAmount sign check * refactor: rename NativeAssetLiquidityAmount to InitialLiquidity * refactor(cgt): rename json nativeAssetLiquidityAmount to initialLiquidity (#601) * refactor: rename json nativeAssetLiquidityAmount to initialLiquidity * fix: only add initialLiquidity to cgt intent struct --------- Co-authored-by: Hex <[email protected]> Co-authored-by: Ashitaka <[email protected]> Co-authored-by: niha <[email protected]>
* refactor: replace enableCustomGasToken with cgt devfeature * feat: remove fund in NativeAssetLiquidity (#605) * fix(cgt): remove OptimismPortal2 test from exclusions (#606) * fix: remove OptimismPortal2 test from exclusions * fix: remove virtual and restore constructor in portal test * refactor: use low level call to receive test * refactor(cgt): migrate L1Block and L2ToL1MessagePasser cgt tests (#608) * refactor: migrate L1Block cgt tests * refactor: migrate L2ToL1MessagePasser cgt tests * fix: comments (#607) * fix: comments * fix: custom error * fix: errors and tests * fix: errors and tests * fix: cgt tests (#610) * fix: comments * fix: custom error * fix: errors and tests * fix: errors and tests * fix: tests * fix: tests * fix: weth * fix: cgt tests (#611) * fix: comments * fix: custom error * fix: errors and tests * fix: errors and tests * fix: tests * fix: tests * fix: weth * fix: remove types * fix: coverage tests (#612) * fix: separate setUp function tests (#613) --------- Co-authored-by: niha <[email protected]> Co-authored-by: Ashitaka <[email protected]>
* test(inv): setup and total sup inv * test(inv): accounting invariants * chore: doc * fix: import in OptimismPortal2CGT test and pre-pr * fix(cgt): add missing native asset amount (#543) * fix: upgrade contract name * feat: add nativeAssetLiquidityAmount to config json files * fix: add correct nativeAssetLiquidityAmount in op-deployer * fix: add correct nativeAssetLiquidityAmount in op-e2e and fix withCustomGasToken argument on op-devstack * fix: restore OptimismPortal2CGT * fix: all comments * fix: comments * fix: governace * fix: remove aux * fix: remove aux * fix: deploy cgt * fix: revert cgt deploy config * fix: deploy config * chore: run linter * fix: remove unnecessary GetNativeAssetLiquidityAmount --------- Co-authored-by: Ashitaka <[email protected]> Co-authored-by: agusduha <[email protected]> Co-authored-by: hexshire <[email protected]> * fix: l2 genesis pipeline (#554) * fix: add nativeAssetLiquidityAmount in e2e apply test (#555) * fix: failing test * chore: doc Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com> * chore: remove unused imports * chore: fix semgrep * chore: change error name --------- Co-authored-by: drgorillamd <[email protected]> Co-authored-by: niha <[email protected]> Co-authored-by: Ashitaka <[email protected]> Co-authored-by: agusduha <[email protected]> Co-authored-by: hexshire <[email protected]> Co-authored-by: AgusDuha <[email protected]> Co-authored-by: Hex <[email protected]> Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
…#17621) Co-authored-by: niha <[email protected]>
|
This pr has been automatically marked as stale and will be closed in 5 days if no updates |
|
@tynes , should this PR be still open? |
|
This PR follows in #18076 |
Description
Based on top of #17320
Enables OP Stack chains to use an asset other than ETH as their native fee currency by introducing a minimal, flexible, and standardizable Custom Gas Token (CGT) architecture. To do so, it introduces new predeploys (
NativeAssetLiquidityandLiquidityController) that decouple native asset management from core bridging operations while using a singleisCustomGasToken()flag that disables ETH transfer flows in all bridging methods. The two new pre-deploys manage the native asset supply.Tests
Core contracts:
OptimismPortalandL1Block: Tests forisCustomGasToken()flag blocking ETH deposits/withdrawalsNativeAssetLiquidity: Tests deposit/withdraw access control and functionalityLiquidityController: Tests minter authorization, mint/burn operations, and metadata functionsMetadata
Contributors