Skip to content

Commit 7edab5f

Browse files
ezynda30xDEnYOcoderabbitai[bot]maxklenk
authored
Gasless flow Permit2Proxy (v1.0.0) [Permit2Proxy v1.0.0] (#782)
* Add Permit2Proxy * Add Permit2Proxy * forge install: Permit2 * Get basic test working... * Add more basic tests * Remove superfluous receiver param * Add utility method for getting a valid and working msgHash to sign * Change name to be more specific * Add Permit "v1" functionality * Add Permit "v1" tests * Add missing comments * Flesh out demo script * Finish demo script * Cleanup and comments * Fix log * Remove extra files * Remove extra remapping * Remove unneeded lib * Add official Permit2 addresses * Allow only signer to call using EIP2612 * Bind Permit2Proxy to a single diamond * Update deploy script * Implement non-gasless Permit2 flow * Redeploy to staging and update demo script * Update comments and remove unneeded events/errors * Add utility methods for determining the next valid nonce * Redeploy and update demo script * Add documentation * Fixes * Change witness type to be consistent with the rest of the codebase * Remove unneeded whitelist * Fixes * Fixes * Boost test coverage * More fixes * More fixes * removes unused imports (audit issue#2) * adds WithdrawablePeriphery base contract to token withdrawals * audit report added * Update src/Periphery/Permit2Proxy.sol Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * Update src/Periphery/Permit2Proxy.sol Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * rename test file to match naming convention * adds WithdrawablePeriphery base contract for token withdrawals * fix test * adds version tag to contract * target state updated * deploy script fixed * deployed to PROD (arb, opt, pol) * fix test * Update Witness Type Hash to match convention * Deploy update to staging * update audit report (incl fixed typehash issue) * Fix stype string as well * Redeploy to staging * Update Permit2Proxy.t.sol * add demo for permit2 flow without witness * clean permit2 generation * simplify signature generation * remove old openzeppelin lib * forge install: openzeppelin-contracts v4.9.2 * update audit log and report * target state updated * deployed to various PROD networks (excl zksync) * verified Permit2Proxy on base * deploy to zksync * diamond logs updated * bugfix in fixAuditLabel action * fix logs * fix test --------- Co-authored-by: Daniel Bläcker <[email protected]> Co-authored-by: Daniel <[email protected]> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Max Klenk <[email protected]>
1 parent 383a52e commit 7edab5f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+2254
-308
lines changed

.gitmodules

+3
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,6 @@
2222
[submodule "lib/solady"]
2323
path = lib/solady
2424
url = https://github.com/Vectorized/solady
25+
[submodule "lib/Permit2"]
26+
path = lib/Permit2
27+
url = https://github.com/Uniswap/Permit2

audit/auditLog.json

+14-4
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,29 @@
3434
"auditorGitHandle": "sujithsomraaj",
3535
"auditReportPath": "./audit/reports/2024.11.05_EmergencyPauseFacet_ReAudit.pdf",
3636
"auditCommitHash": "da61880ba3847c07c35b64a78b957ff845ec18ac"
37+
},
38+
"audit20241122": {
39+
"auditCompletedOn": "22.11.2024",
40+
"auditedBy": "Sujith Somraaj (individual security researcher)",
41+
"auditorGitHandle": "sujithsomraaj",
42+
"auditReportPath": "./audit/reports/2024.11.22_Permit2Proxy.pdf",
43+
"auditCommitHash": "0e3debb78abcdf9a9f934115338b611e16b039a0"
3744
}
3845
},
3946
"auditedContracts": {
40-
"EmergencyPauseFacet": {
41-
"1.0.0": ["audit20240913"],
42-
"1.0.1": ["audit20241105"]
43-
},
4447
"AcrossFacetV3": {
4548
"1.0.0": ["audit20241007"]
4649
},
4750
"AcrossFacetPackedV3": {
4851
"1.0.0": ["audit20241007"]
4952
},
53+
"EmergencyPauseFacet": {
54+
"1.0.0": ["audit20240913"],
55+
"1.0.1": ["audit20241105"]
56+
},
57+
"Permit2Proxy": {
58+
"1.0.0": ["audit20241122"]
59+
},
5060
"ReceiverAcrossV3": {
5161
"1.0.0": ["audit20241007"]
5262
},
69.9 KB
Binary file not shown.

config/networks.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,9 @@
102102
"explorerUrl": "https://blastscan.io",
103103
"explorerApiUrl": "https://api.blastscan.io/api",
104104
"multicallAddress": "0xcA11bde05977b3631167028862bE2a173976CA11",
105-
"safeApiUrl": "https://transaction.blast-safe.io/api",
105+
"safeApiUrl": "https://safe-transaction-blast.safe.global/api",
106106
"safeAddress": "0xdf61270fDC1A892874Fd3C0143A0A4CBA74F4EF1",
107-
"safeWebUrl": "https://blast-safe.io/transactions/queue?safe=blastmainnet:0xdf61270fDC1A892874Fd3C0143A0A4CBA74F4EF1",
107+
"safeWebUrl": "https://app.safe.global/transactions/queue?safe=blast:0xdf61270fDC1A892874Fd3C0143A0A4CBA74F4EF1",
108108
"gasZipChainId": 96
109109
},
110110
"boba": {

config/permit2Proxy.json

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
{
2+
"mainnet": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
3+
"arbitrum": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
4+
"aurora": "",
5+
"avalanche": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
6+
"base": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
7+
"blast": "0x000000000022d473030f116ddee9f6b43ac78ba3",
8+
"boba": "",
9+
"bsc": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
10+
"celo": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
11+
"fantom": "",
12+
"fraxtal": "",
13+
"fuse": "",
14+
"gnosis": "",
15+
"gravity": "",
16+
"immutablezkevm": "",
17+
"linea": "",
18+
"mantle": "",
19+
"metis": "",
20+
"mode": "",
21+
"moonbeam": "",
22+
"moonriver": "",
23+
"optimism": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
24+
"polygon": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
25+
"polygonzkevm": "",
26+
"rootstock": "",
27+
"scroll": "",
28+
"sei": "",
29+
"taiko": "",
30+
"zksync": "0x0000000000225e31d15943971f47ad3022f714fa"
31+
}

deployments/_deployments_log_file.json

+167-1
Original file line numberDiff line numberDiff line change
@@ -24602,5 +24602,171 @@
2460224602
]
2460324603
}
2460424604
}
24605+
},
24606+
"Permit2Proxy": {
24607+
"arbitrum": {
24608+
"staging": {
24609+
"1.0.0": [
24610+
{
24611+
"ADDRESS": "0x6FC01BC9Ff6Cdab694Ec8Ca41B21a2F04C8c37E5",
24612+
"OPTIMIZER_RUNS": "1000000",
24613+
"TIMESTAMP": "2024-10-21 09:31:13",
24614+
"CONSTRUCTOR_ARGS": "0x000000000000000000000000d3b2b0ac0afdd0d166a495f5e9fca4ecc715a782000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000009e606d0d2bba344b911e2f4eab95d9235a83fe15",
24615+
"SALT": "",
24616+
"VERIFIED": "true"
24617+
}
24618+
]
24619+
},
24620+
"production": {
24621+
"1.0.0": [
24622+
{
24623+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24624+
"OPTIMIZER_RUNS": "1000000",
24625+
"TIMESTAMP": "2024-11-25 11:24:27",
24626+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000009e606d0d2bba344b911e2f4eab95d9235a83fe15",
24627+
"SALT": "",
24628+
"VERIFIED": "true"
24629+
}
24630+
]
24631+
}
24632+
},
24633+
"polygon": {
24634+
"production": {
24635+
"1.0.0": [
24636+
{
24637+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24638+
"OPTIMIZER_RUNS": "1000000",
24639+
"TIMESTAMP": "2024-11-25 11:26:53",
24640+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000008bcc385948c73736423d38cc567cfede0f1826a3",
24641+
"SALT": "",
24642+
"VERIFIED": "true"
24643+
}
24644+
]
24645+
},
24646+
"staging": {
24647+
"1.0.0": [
24648+
{
24649+
"ADDRESS": "0x6FC01BC9Ff6Cdab694Ec8Ca41B21a2F04C8c37E5",
24650+
"OPTIMIZER_RUNS": "1000000",
24651+
"TIMESTAMP": "2024-10-21 09:32:45",
24652+
"CONSTRUCTOR_ARGS": "0x000000000000000000000000d3b2b0ac0afdd0d166a495f5e9fca4ecc715a782000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000008bcc385948c73736423d38cc567cfede0f1826a3",
24653+
"SALT": "",
24654+
"VERIFIED": "true"
24655+
}
24656+
]
24657+
}
24658+
},
24659+
"optimism": {
24660+
"production": {
24661+
"1.0.0": [
24662+
{
24663+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24664+
"OPTIMIZER_RUNS": "1000000",
24665+
"TIMESTAMP": "2024-11-25 11:25:40",
24666+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000a8892ea3fddef2aa8afb1e3643a3284f978a5114",
24667+
"SALT": "",
24668+
"VERIFIED": "true"
24669+
}
24670+
]
24671+
}
24672+
},
24673+
"mainnet": {
24674+
"production": {
24675+
"1.0.0": [
24676+
{
24677+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24678+
"OPTIMIZER_RUNS": "1000000",
24679+
"TIMESTAMP": "2024-11-25 11:10:40",
24680+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba300000000000000000000000037347dd595c49212c5fc2d95ea10d1085896f51e",
24681+
"SALT": "",
24682+
"VERIFIED": "true"
24683+
}
24684+
]
24685+
}
24686+
},
24687+
"avalanche": {
24688+
"production": {
24689+
"1.0.0": [
24690+
{
24691+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24692+
"OPTIMIZER_RUNS": "1000000",
24693+
"TIMESTAMP": "2024-11-25 12:15:16",
24694+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba300000000000000000000000027d4eb2854d93a1a7df8e2aed1a535b080a6f6e4",
24695+
"SALT": "",
24696+
"VERIFIED": "true"
24697+
}
24698+
]
24699+
}
24700+
},
24701+
"base": {
24702+
"production": {
24703+
"1.0.0": [
24704+
{
24705+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24706+
"OPTIMIZER_RUNS": "1000000",
24707+
"TIMESTAMP": "2024-11-25 12:26:53",
24708+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba30000000000000000000000001f6974c11b833eb52ea07e0b442510165d87d82e",
24709+
"SALT": "",
24710+
"VERIFIED": "true"
24711+
}
24712+
]
24713+
}
24714+
},
24715+
"blast": {
24716+
"production": {
24717+
"1.0.0": [
24718+
{
24719+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24720+
"OPTIMIZER_RUNS": "1000000",
24721+
"TIMESTAMP": "2024-11-25 12:38:05",
24722+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000df61270fdc1a892874fd3c0143a0a4cba74f4ef1",
24723+
"SALT": "",
24724+
"VERIFIED": "true"
24725+
}
24726+
]
24727+
}
24728+
},
24729+
"bsc": {
24730+
"production": {
24731+
"1.0.0": [
24732+
{
24733+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24734+
"OPTIMIZER_RUNS": "1000000",
24735+
"TIMESTAMP": "2024-11-25 12:39:31",
24736+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba300000000000000000000000020b6b31d76e054c3e4de6154feca385ca58c7c15",
24737+
"SALT": "",
24738+
"VERIFIED": "true"
24739+
}
24740+
]
24741+
}
24742+
},
24743+
"celo": {
24744+
"production": {
24745+
"1.0.0": [
24746+
{
24747+
"ADDRESS": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
24748+
"OPTIMIZER_RUNS": "1000000",
24749+
"TIMESTAMP": "2024-11-25 13:03:21",
24750+
"CONSTRUCTOR_ARGS": "0x0000000000000000000000001231deb6f5749ef6ce6943a275a1d3e7486f4eae000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3000000000000000000000000a89a87986e8ee1ac8fdacc5ac91627010ec9f772",
24751+
"SALT": "",
24752+
"VERIFIED": "true"
24753+
}
24754+
]
24755+
}
24756+
},
24757+
"zksync": {
24758+
"production": {
24759+
"1.0.0": [
24760+
{
24761+
"ADDRESS": "0x6275f6631c955DC5dA9fBe8Dc7f24a3A5919443A",
24762+
"OPTIMIZER_RUNS": "1000000",
24763+
"TIMESTAMP": "2024-11-25 13:42:32",
24764+
"CONSTRUCTOR_ARGS": "0x000000000000000000000000341e94069f53234fe6dabef707ad4248305257150000000000000000000000000000000000225e31d15943971f47ad3022f714fa00000000000000000000000002f1272aeacaf7bd8b30278bc2aa381cc623a744",
24765+
"SALT": "",
24766+
"VERIFIED": "true"
24767+
}
24768+
]
24769+
}
24770+
}
2460524771
}
24606-
}
24772+
}

deployments/arbitrum.diamond.json

+6-1
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,10 @@
144144
"0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61": {
145145
"Name": "EmergencyPauseFacet",
146146
"Version": "1.0.0"
147+
},
148+
"0xF5c923a087fb3c554579e2DD10AB6E37E0f6F849": {
149+
"Name": "GasZipFacet",
150+
"Version": "1.0.0"
147151
}
148152
},
149153
"Periphery": {
@@ -152,11 +156,12 @@
152156
"FeeCollector": "0xB0210dE78E28e2633Ca200609D9f528c13c26cD9",
153157
"LiFiDEXAggregator": "0x6140b987d6B51Fd75b66C3B07733Beb5167c42fc",
154158
"LiFuelFeeCollector": "0xc02FFcdD914DbA646704439c6090BAbaD521d04C",
159+
"Permit2Proxy": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
155160
"Receiver": "0x050e198E36A73a1e32F15C3afC58C4506d82f657",
156161
"ReceiverAcrossV3": "0xB9CEc304899037E661F49DdFa7f64943b5920072",
157162
"ReceiverStargateV2": "0x1493e7B8d4DfADe0a178dAD9335470337A3a219A",
158163
"RelayerCelerIM": "0x6a8b11bF29C0546991DEcD6E0Db8cC7Fda22bA97",
159164
"TokenWrapper": "0x5215E9fd223BC909083fbdB2860213873046e45d"
160165
}
161166
}
162-
}
167+
}

deployments/arbitrum.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,9 @@
4848
"StargateFacetV2": "0x6e378C84e657C57b2a8d183CFf30ee5CC8989b61",
4949
"ReceiverStargateV2": "0x1493e7B8d4DfADe0a178dAD9335470337A3a219A",
5050
"LiFiDEXAggregator": "0x6140b987d6B51Fd75b66C3B07733Beb5167c42fc",
51+
"Permit2Proxy": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
5152
"EmergencyPauseFacet": "0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61",
5253
"AcrossFacetV3": "0x6e00e0a7685Ca22c288d56D9E7924746B5043Ee7",
5354
"ReceiverAcrossV3": "0xB9CEc304899037E661F49DdFa7f64943b5920072",
5455
"AcrossFacetPackedV3": "0x20F3FFf5A89e988c4109A6e496a839480B1B558f"
55-
}
56+
}

deployments/arbitrum.staging.json

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
"LiFuelFeeCollector": "0x94EA56D8049e93E0308B9c7d1418Baf6A7C68280",
4747
"TokenWrapper": "0xF63b27AE2Dc887b88f82E2Cc597d07fBB2E78E70",
4848
"EmergencyPauseFacet": "0x17Bb203F42d8e404ac7E8dB6ff972B7E8473850b",
49+
"Permit2Proxy": "0x6FC01BC9Ff6Cdab694Ec8Ca41B21a2F04C8c37E5",
4950
"AcrossFacetV3": "0x6124C65B6264bE13f059b7C3A891a5b77DA8Bd95",
5051
"ReceiverAcrossV3": "0x3877f47B560819E96BBD7e7700a02dfACe36D696",
5152
"AcrossFacetPackedV3": "0x4352459F6BE1C7D1278F8c34Bb598b0feeB50f8b"

deployments/aurora.diamond.json

+12-7
Original file line numberDiff line numberDiff line change
@@ -60,18 +60,23 @@
6060
"0x6e378C84e657C57b2a8d183CFf30ee5CC8989b61": {
6161
"Name": "StargateFacetV2",
6262
"Version": "1.0.1"
63+
},
64+
"0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61": {
65+
"Name": "EmergencyPauseFacet",
66+
"Version": "1.0.0"
6367
}
6468
},
6569
"Periphery": {
66-
"ERC20Proxy": "",
67-
"Executor": "",
70+
"ERC20Proxy": "0x5741A7FfE7c39Ca175546a54985fA79211290b51",
71+
"Executor": "0x2dfaDAB8266483beD9Fd9A292Ce56596a2D1378D",
6872
"FeeCollector": "0xB0210dE78E28e2633Ca200609D9f528c13c26cD9",
69-
"LiFiDEXAggregator": "",
70-
"LiFuelFeeCollector": "",
71-
"Receiver": "0x5439f8ca43f832DD21a28C5BF038dad4c07ad02c",
73+
"LiFiDEXAggregator": "0x6140b987d6B51Fd75b66C3B07733Beb5167c42fc",
74+
"LiFuelFeeCollector": "0x8E92e662573CBC66B0AB6A93B5FE291925508085",
75+
"Permit2Proxy": "",
76+
"Receiver": "",
7277
"ReceiverAcrossV3": "",
73-
"ReceiverStargateV2": "",
74-
"RelayerCelerIM": "",
78+
"ReceiverStargateV2": "0x1493e7B8d4DfADe0a178dAD9335470337A3a219A",
79+
"RelayerCelerIM": "0x6a8b11bF29C0546991DEcD6E0Db8cC7Fda22bA97",
7580
"TokenWrapper": "0x5215E9fd223BC909083fbdB2860213873046e45d"
7681
}
7782
}

deployments/avalanche.diamond.json

+5
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,10 @@
116116
"0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61": {
117117
"Name": "EmergencyPauseFacet",
118118
"Version": "1.0.0"
119+
},
120+
"0xF5c923a087fb3c554579e2DD10AB6E37E0f6F849": {
121+
"Name": "",
122+
"Version": ""
119123
}
120124
},
121125
"Periphery": {
@@ -124,6 +128,7 @@
124128
"FeeCollector": "0xB0210dE78E28e2633Ca200609D9f528c13c26cD9",
125129
"LiFiDEXAggregator": "0x6140b987d6B51Fd75b66C3B07733Beb5167c42fc",
126130
"LiFuelFeeCollector": "0xc02FFcdD914DbA646704439c6090BAbaD521d04C",
131+
"Permit2Proxy": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
127132
"Receiver": "0x050e198E36A73a1e32F15C3afC58C4506d82f657",
128133
"ReceiverAcrossV3": "",
129134
"ReceiverStargateV2": "0x1493e7B8d4DfADe0a178dAD9335470337A3a219A",

deployments/avalanche.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -45,5 +45,6 @@
4545
"StargateFacetV2": "0x6e378C84e657C57b2a8d183CFf30ee5CC8989b61",
4646
"ReceiverStargateV2": "0x1493e7B8d4DfADe0a178dAD9335470337A3a219A",
4747
"LiFiDEXAggregator": "0x6140b987d6B51Fd75b66C3B07733Beb5167c42fc",
48-
"EmergencyPauseFacet": "0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61"
48+
"EmergencyPauseFacet": "0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61",
49+
"Permit2Proxy": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9"
4950
}

deployments/base.diamond.json

+9
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,14 @@
132132
"0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61": {
133133
"Name": "EmergencyPauseFacet",
134134
"Version": "1.0.0"
135+
},
136+
"0xF5c923a087fb3c554579e2DD10AB6E37E0f6F849": {
137+
"Name": "",
138+
"Version": ""
139+
},
140+
"0x6e00e0a7685Ca22c288d56D9E7924746B5043Ee7": {
141+
"Name": "AcrossFacetV3",
142+
"Version": "1.0.0"
135143
}
136144
},
137145
"Periphery": {
@@ -140,6 +148,7 @@
140148
"FeeCollector": "0x0A6d96E7f4D7b96CFE42185DF61E64d255c12DFf",
141149
"LiFiDEXAggregator": "0x6140b987d6B51Fd75b66C3B07733Beb5167c42fc",
142150
"LiFuelFeeCollector": "0xc02FFcdD914DbA646704439c6090BAbaD521d04C",
151+
"Permit2Proxy": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9",
143152
"Receiver": "0xeC03B65CbDc5f8858b02F44EBa54C90664249fb1",
144153
"ReceiverAcrossV3": "0xB9CEc304899037E661F49DdFa7f64943b5920072",
145154
"ReceiverStargateV2": "0x1493e7B8d4DfADe0a178dAD9335470337A3a219A",

deployments/base.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -41,5 +41,6 @@
4141
"EmergencyPauseFacet": "0x6F2baA7cd5F156CA1B132F7FF11E0fa2aD775F61",
4242
"AcrossFacetV3": "0x6e00e0a7685Ca22c288d56D9E7924746B5043Ee7",
4343
"ReceiverAcrossV3": "0xB9CEc304899037E661F49DdFa7f64943b5920072",
44-
"AcrossFacetPackedV3": "0x20F3FFf5A89e988c4109A6e496a839480B1B558f"
45-
}
44+
"AcrossFacetPackedV3": "0x20F3FFf5A89e988c4109A6e496a839480B1B558f",
45+
"Permit2Proxy": "0x6307119078556Fc8aD77781DFC67df20d75FB4f9"
46+
}

0 commit comments

Comments
 (0)