Skip to content

Commit 528f4b3

Browse files
committed
intermediate
1 parent c5862a6 commit 528f4b3

File tree

10 files changed

+150
-54
lines changed

10 files changed

+150
-54
lines changed

contracts/_test/UFragmentsTestnet.sol

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// SPDX-License-Identifier: GPL-3.0-or-later
2+
// Importing uFragments contract dependencies to be compiled for integration tests
3+
pragma solidity 0.7.6;
4+
5+
import {UFragments} from "uFragments/contracts/UFragments.sol";
6+
7+
contract UFragmentsTestnet is UFragments {
8+
event Result(bool result, bytes reason);
9+
10+
function isArbitrumEnabled() external view returns (uint8) {
11+
return uint8(0xa4b1);
12+
}
13+
14+
// NOTE: this allows the token contarct to register itself with the bridge on testnet
15+
// The AMPL contract on mainnet is immutable and this can't be used!
16+
function externalCall(address destination, bytes calldata data, uint256 value) external payable {
17+
(bool result, bytes memory reason) = destination.call{value: value}(data);
18+
emit Result(result, reason);
19+
}
20+
}

contracts/base-chain/bridge-gateways/AMPLArbitrumGateway.sol

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ contract AMPLArbitrumGateway is
224224
IERC20(_l1Token).safeTransferFrom(from, address(this), _amount);
225225
IERC20(_l1Token).approve(vault, _amount);
226226

227-
ITokenVault(vault).lock(_l1Token, from, _amount);
227+
ITokenVault(vault).lock(_l1Token, address(this), _amount);
228228

229229
emit XCTransferOut(from, address(0), _amount, recordedGlobalAMPLSupply);
230230
}

helpers/contracts.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ const ContractABIPaths = {
1515
UFragmentsPolicy: 'uFragments/contracts',
1616
Orchestrator: 'uFragments/contracts',
1717
MedianOracle: 'market-oracle/contracts',
18+
UFragmentsTestnet: 'contracts/_test',
1819

1920
// Chainbridge
2021
Bridge: 'chainbridge-solidity/contracts',

helpers/deploy/ampl.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ const {
66
deployProxyContract,
77
} = require('../contracts');
88

9-
async function deployAMPLContracts(
9+
async function deployAMPLTestnetContracts(
1010
ethers,
1111
deployer,
1212
txParams = {},
@@ -18,7 +18,7 @@ async function deployAMPLContracts(
1818

1919
const ampl = await deployProxyContract(
2020
ethers,
21-
'UFragments',
21+
'UFragmentsTestnet',
2222
proxyAdmin,
2323
deployer,
2424
[deployerAddress],
@@ -164,6 +164,6 @@ async function deployXCAmpleContracts(
164164
}
165165

166166
module.exports = {
167-
deployAMPLContracts,
167+
deployAMPLTestnetContracts,
168168
deployXCAmpleContracts,
169169
};

sdk/deployments/dev3RinkebyArbitrumSatChain.json

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"proxyAdmin": {
3-
"address": "0x7A3ce10573718e00F63187598b5BBe1D82931b28",
3+
"address": "0xbAdBD05c2eC381B2DdF610E125A73baBda54fc7f",
44
"abi": [
55
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
66
"function changeProxyAdmin(address proxy, address newAdmin)",
@@ -13,11 +13,11 @@
1313
"function upgrade(address proxy, address implementation)",
1414
"function upgradeAndCall(address proxy, address implementation, bytes data) payable"
1515
],
16-
"hash": "0xabb51fb3c568f280ccdfb834c77be3837585f566a58007832cae22e37ea43467",
17-
"blockNumber": 5974712
16+
"hash": "0x800809255038a5d6659ff394b65b1334ac215c017d7ea8c43e16fa91c55ec753",
17+
"blockNumber": 6019296
1818
},
1919
"xcAmple": {
20-
"address": "0x9B76a1139bcE77399f88a0E397F044094c289a89",
20+
"address": "0x4162aEE7665a2b8EafE5C257e600DEa7c4296f73",
2121
"abi": [
2222
"event Approval(address indexed owner, address indexed spender, uint256 value)",
2323
"event ControllerUpdated(address controller)",
@@ -56,11 +56,11 @@
5656
"function transferFrom(address from, address to, uint256 value) returns (bool)",
5757
"function transferOwnership(address newOwner)"
5858
],
59-
"hash": "0x0eda762c735a4407c211a484aa6923359c0feb46e8f917ca4ce256b99eb44940",
60-
"blockNumber": 5974717
59+
"hash": "0xd14fd701a190ab766181adfeb5e94b94011cf6628672521b2e789f3066f5623d",
60+
"blockNumber": 6019298
6161
},
6262
"xcAmpleController": {
63-
"address": "0x6F1cE4B4B7C30c903A42FDc0D77c8671393101C0",
63+
"address": "0xDFbE71D6D42284e9a28aA84304c4696dE0e89f99",
6464
"abi": [
6565
"event GatewayBurn(address indexed bridgeGateway, address indexed depositor, uint256 xcAmpleAmount)",
6666
"event GatewayMint(address indexed bridgeGateway, address indexed recipient, uint256 xcAmpleAmount)",
@@ -88,11 +88,11 @@
8888
"function whitelistedBridgeGateways(address) view returns (bool)",
8989
"function xcAmple() view returns (address)"
9090
],
91-
"hash": "0xde8074129b911b6281faf4d8ea6e9c6649453a85837ee2ffa9afa5f318da5093",
92-
"blockNumber": 5974726
91+
"hash": "0x3081fdb2f1146254f743c8c4940b7fd6e6356927f94918227a07fc1ed4da4f9c",
92+
"blockNumber": 6019305
9393
},
9494
"rebaseRelayer": {
95-
"address": "0x91F2B10275A9C3F461ea19BB51ff960c3b933303",
95+
"address": "0xBf1D78dEC7f1D82CCF0c45ab7Ee362e72BeE6f39",
9696
"abi": [
9797
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
9898
"event TransactionFailed(address indexed destination, uint256 index, bytes data, bytes reason)",
@@ -108,12 +108,12 @@
108108
"function transactionsSize() view returns (uint256)",
109109
"function transferOwnership(address newOwner)"
110110
],
111-
"hash": "0x22d7267332c9dd172ddb8a02a9ad339418c2e6294eb756984ab690c49d1934a5",
112-
"blockNumber": 5974731
111+
"hash": "0x48788898957d483844e03f54f7eb6c330f32d59503872c7864b8fc5469390c21",
112+
"blockNumber": 6019311
113113
},
114114
"isBaseChain": false,
115115
"arbitrum/transferGateway": {
116-
"address": "0x2eAb9dE5f87a4A3261f1e33Dc4DB3EC0a68Ae61c",
116+
"address": "0x75c00CF8B6C932AaD2E20fa238a57D389aE3842d",
117117
"abi": [
118118
"constructor(address xcAmple_, address xcController_)",
119119
"event DepositFinalized(address indexed l1Token, address indexed _from, address indexed _to, uint256 _amount)",
@@ -136,11 +136,11 @@
136136
"function xcAmple() view returns (address)",
137137
"function xcController() view returns (address)"
138138
],
139-
"hash": "0x30b6c6898fc57f20a835c7182051f3a92d68345bf97aa64c2afd3b683d1ec59c",
140-
"blockNumber": 5975087
139+
"hash": "0xb43520d64bc6ba1d1af688745608b7414e43457b484103f7f3f4a55c9bab2fe7",
140+
"blockNumber": 6019546
141141
},
142142
"arbitrum/rebaseGateway": {
143-
"address": "0x2eAb9dE5f87a4A3261f1e33Dc4DB3EC0a68Ae61c",
143+
"address": "0x75c00CF8B6C932AaD2E20fa238a57D389aE3842d",
144144
"abi": [
145145
"constructor(address xcAmple_, address xcController_)",
146146
"event DepositFinalized(address indexed l1Token, address indexed _from, address indexed _to, uint256 _amount)",
@@ -163,7 +163,7 @@
163163
"function xcAmple() view returns (address)",
164164
"function xcController() view returns (address)"
165165
],
166-
"hash": "0x30b6c6898fc57f20a835c7182051f3a92d68345bf97aa64c2afd3b683d1ec59c",
167-
"blockNumber": 5975087
166+
"hash": "0xb43520d64bc6ba1d1af688745608b7414e43457b484103f7f3f4a55c9bab2fe7",
167+
"blockNumber": 6019546
168168
}
169169
}

sdk/deployments/dev3RinkebyBaseChain.json

Lines changed: 30 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"proxyAdmin": {
3-
"address": "0x2E5D096ef6f134A89270e791F502bCbA099d6f68",
3+
"address": "0x38fab7E342311cF384f76d1Ea31c4AFcc565c55c",
44
"abi": [
55
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
66
"function changeProxyAdmin(address proxy, address newAdmin)",
@@ -13,17 +13,18 @@
1313
"function upgrade(address proxy, address implementation)",
1414
"function upgradeAndCall(address proxy, address implementation, bytes data) payable"
1515
],
16-
"hash": "0x664201f2c6b027c92fc8de997fef95f3d8aca0a8936d5e7bf80ff36f569f0f5d",
17-
"blockNumber": 9528020
16+
"hash": "0x0c4d620b0220a581f617919b347f7a078f312bcc51c047a042b2a63fecb10835",
17+
"blockNumber": 9535696
1818
},
1919
"ampl": {
20-
"address": "0xBb6ae64dAeE2264708cFc6c62100027c0bAB5a67",
20+
"address": "0x244E12361f488adFa757E706466023673a96Fa3d",
2121
"abi": [
2222
"event Approval(address indexed owner, address indexed spender, uint256 value)",
2323
"event LogMonetaryPolicyUpdated(address monetaryPolicy)",
2424
"event LogRebase(uint256 indexed epoch, uint256 totalSupply)",
2525
"event OwnershipRenounced(address indexed previousOwner)",
2626
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)",
27+
"event Result(bool result, bytes reason)",
2728
"event Transfer(address indexed from, address indexed to, uint256 value)",
2829
"function DOMAIN_SEPARATOR() view returns (bytes32)",
2930
"function EIP712_DOMAIN() view returns (bytes32)",
@@ -34,9 +35,11 @@
3435
"function balanceOf(address who) view returns (uint256)",
3536
"function decimals() view returns (uint8)",
3637
"function decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)",
38+
"function externalCall(address destination, bytes data, uint256 value) payable",
3739
"function increaseAllowance(address spender, uint256 addedValue) returns (bool)",
3840
"function initialize(string name, string symbol, uint8 decimals)",
3941
"function initialize(address owner_)",
42+
"function isArbitrumEnabled() view returns (uint8)",
4043
"function isOwner() view returns (bool)",
4144
"function monetaryPolicy() view returns (address)",
4245
"function name() view returns (string)",
@@ -56,11 +59,11 @@
5659
"function transferFrom(address from, address to, uint256 value) returns (bool)",
5760
"function transferOwnership(address newOwner)"
5861
],
59-
"hash": "0xbc9e7e26e329f0d0f2fa203a849f20ab4f8f39762fd40816a3cef15926480720",
60-
"blockNumber": 9528020
62+
"hash": "0x4dc164878c11e4bd6ba0986435d68a013dfb1dcf762ac2624db4632802b58aa0",
63+
"blockNumber": 9535696
6164
},
6265
"policy": {
63-
"address": "0xa5520E5bED964560d2B5d75A025B0FB78C97b1D4",
66+
"address": "0x4964610919942c8680A0717b342c2A6176FE16b2",
6467
"abi": [
6568
"event LogRebase(uint256 indexed epoch, uint256 exchangeRate, uint256 cpi, int256 requestedSupplyAdjustment, uint256 timestampSec)",
6669
"event OwnershipRenounced(address indexed previousOwner)",
@@ -92,11 +95,11 @@
9295
"function transferOwnership(address newOwner)",
9396
"function uFrags() view returns (address)"
9497
],
95-
"hash": "0x2f5bd869e28d941e588d56fde87a6e8c97b613f4b64099a6c9dcc245a6d1e2cb",
96-
"blockNumber": 9528041
98+
"hash": "0xfbf40d4e2e276af206825e29bab48824a267fd9baec2822c60ab79321fdd4bc8",
99+
"blockNumber": 9535712
97100
},
98101
"orchestrator": {
99-
"address": "0x058c1c118373d2291adF21CB4C395698Ae2552E6",
102+
"address": "0x90dE686Ba9289A2978B23Bf199299A33eA3ef036",
100103
"abi": [
101104
"constructor(address policy_)",
102105
"event OwnershipRenounced(address indexed previousOwner)",
@@ -114,11 +117,11 @@
114117
"function transactionsSize() view returns (uint256)",
115118
"function transferOwnership(address newOwner)"
116119
],
117-
"hash": "0xcde9d28067494e5512e1430388ca2da66869f2c43204ee9c1de8beda9ac94216",
118-
"blockNumber": 9528057
120+
"hash": "0xe7bd741ac56bbbcaee274b1261f237864b537f2dfba5ac86ed696132fc72409d",
121+
"blockNumber": 9535726
119122
},
120123
"rateOracle": {
121-
"address": "0x89Fb2e35cEf8480342d441702a82ED041135202d",
124+
"address": "0x7156F72425C0D6A729b0016F7DC1E00050f6DA6E",
122125
"abi": [
123126
"function reportDelaySec() view returns (uint256)",
124127
"function pushReport(uint256 payload)",
@@ -145,11 +148,11 @@
145148
"event ProviderReportPushed(address indexed provider, uint256 payload, uint256 timestamp)",
146149
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)"
147150
],
148-
"hash": "0x656950a4690a21fbc0fde59312a7c94c7f0cd1d95dc22690dbcb2f70dd7e0ee0",
149-
"blockNumber": 9528029
151+
"hash": "0x9f2e3ef3361cbce993f5dafc6bff2223164b6b75d61a842e721db1224577b3fc",
152+
"blockNumber": 9535700
150153
},
151154
"cpiOracle": {
152-
"address": "0x21e9d1FfE15991dD27256ff42963C86374d97B0E",
155+
"address": "0x6e31D7Ea7176238392c07d58Fb9e3c6D78ae8910",
153156
"abi": [
154157
"function reportDelaySec() view returns (uint256)",
155158
"function pushReport(uint256 payload)",
@@ -176,12 +179,12 @@
176179
"event ProviderReportPushed(address indexed provider, uint256 payload, uint256 timestamp)",
177180
"event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)"
178181
],
179-
"hash": "0xbfa768aa20932344396b3d93fda79bf5269f7c3d0415194e8aac9def55e44124",
180-
"blockNumber": 9528035
182+
"hash": "0x62577b74d7b88b0a748651998d134af4de3cc692b95145430b24ff7fd7c9e721",
183+
"blockNumber": 9535706
181184
},
182185
"isBaseChain": true,
183186
"arbitrum/tokenVault": {
184-
"address": "0xf704fCA2fd138E31760aa242240B78b7Ba89d2d2",
187+
"address": "0x02C04C9DF6F994BFd54C66e770e5945f444A9526",
185188
"abi": [
186189
"event GatewayLocked(address indexed bridgeGateway, address indexed token, address indexed depositor, uint256 amount)",
187190
"event GatewayUnlocked(address indexed bridgeGateway, address indexed token, address indexed recipient, uint256 amount)",
@@ -197,11 +200,11 @@
197200
"function unlock(address token, address recipient, uint256 amount)",
198201
"function whitelistedBridgeGateways(address) view returns (bool)"
199202
],
200-
"hash": "0x0c4060895cab3e4693fc5d6ba0924ff864cb188639fef0d3501415d2cda5ccd1",
201-
"blockNumber": 9349617
203+
"hash": "0x773e193e00f36636c7bb633e31e6acecc2b428b54f0543ee8c698be60110d7c1",
204+
"blockNumber": 9535747
202205
},
203206
"arbitrum/transferGateway": {
204-
"address": "0x60CcDea1Ba997e2D781C13b5E6B4f7Fec94eE691",
207+
"address": "0xbAb60bb39D6f086CA2e7e578fbF945E61a12cE3a",
205208
"abi": [
206209
"constructor(address ampl_, address policy_, address vault_)",
207210
"event DepositInitiated(address l1Token, address indexed _from, address indexed _to, uint256 indexed _sequenceNumber, uint256 _amount)",
@@ -225,11 +228,11 @@
225228
"function vault() view returns (address)",
226229
"function xcAmple() view returns (address)"
227230
],
228-
"hash": "0x6bdcd4aadb75b28a76e6c166e5d25ac982788e8500855ab809b9d8dd5c02115c",
229-
"blockNumber": 9528225
231+
"hash": "0xbb5bda37bdd726212b9c9cc5c08045d8b4eeec3631d24ba4a3293b8f34362b54",
232+
"blockNumber": 9535779
230233
},
231234
"arbitrum/rebaseGateway": {
232-
"address": "0x60CcDea1Ba997e2D781C13b5E6B4f7Fec94eE691",
235+
"address": "0xbAb60bb39D6f086CA2e7e578fbF945E61a12cE3a",
233236
"abi": [
234237
"constructor(address ampl_, address policy_, address vault_)",
235238
"event DepositInitiated(address l1Token, address indexed _from, address indexed _to, uint256 indexed _sequenceNumber, uint256 _amount)",
@@ -253,7 +256,7 @@
253256
"function vault() view returns (address)",
254257
"function xcAmple() view returns (address)"
255258
],
256-
"hash": "0x6bdcd4aadb75b28a76e6c166e5d25ac982788e8500855ab809b9d8dd5c02115c",
257-
"blockNumber": 9528225
259+
"hash": "0xbb5bda37bdd726212b9c9cc5c08045d8b4eeec3631d24ba4a3293b8f34362b54",
260+
"blockNumber": 9535779
258261
}
259262
}

tasks/deploy/ampleforth.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ const {
1616
} = require('../../helpers/contracts');
1717

1818
const {
19-
deployAMPLContracts,
19+
deployAMPLTestnetContracts,
2020
deployXCAmpleContracts,
2121
deployTokenVault,
2222
} = require('../../helpers/deploy');
@@ -103,7 +103,7 @@ txTask('testnet:deploy:ampleforth', 'Deploy ampleforth contract suite')
103103
console.log('Deployer:', deployerAddress);
104104

105105
const { proxyAdmin, ampl, policy, orchestrator, rateOracle, cpiOracle } =
106-
await deployAMPLContracts(hre.ethers, deployer, txParams, 2);
106+
await deployAMPLTestnetContracts(hre.ethers, deployer, txParams, 2);
107107
for (const w in args.fundingWallets) {
108108
await ampl.transfer(args.fundingWallets[w], toAmplFixedPt(args.amount));
109109
}
@@ -149,6 +149,7 @@ txTask('deploy:ampleforth_xc', 'Deploy cross chain ampleforth contract suite')
149149
if (txParams.gasPrice == 0) {
150150
txParams.gasPrice = await hre.ethers.provider.getGasPrice();
151151
}
152+
// const txParams = {}
152153

153154
const deployer = await loadSignerSync(args, hre.ethers.provider);
154155
const deployerAddress = await deployer.getAddress();

0 commit comments

Comments
 (0)