@keep-network/tbtc-v2 1.0.0-dev.5 → 1.0.0-dev.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/BLS.json +1 -1
- package/artifacts/Bank.json +3 -3
- package/artifacts/BeaconAuthorization.json +1 -1
- package/artifacts/BeaconDkg.json +1 -1
- package/artifacts/BeaconDkgValidator.json +1 -1
- package/artifacts/BeaconInactivity.json +1 -1
- package/artifacts/BeaconSortitionPool.json +3 -3
- package/artifacts/Bridge.json +5 -5
- package/artifacts/BridgeGovernance.json +19 -19
- package/artifacts/BridgeGovernanceParameters.json +7 -7
- package/artifacts/Deposit.json +7 -7
- package/artifacts/DepositSweep.json +7 -7
- package/artifacts/DonationVault.json +188 -0
- package/artifacts/EcdsaDkgValidator.json +1 -1
- package/artifacts/EcdsaInactivity.json +1 -1
- package/artifacts/EcdsaSortitionPool.json +3 -3
- package/artifacts/Fraud.json +9 -9
- package/artifacts/KeepRegistry.json +1 -1
- package/artifacts/KeepStake.json +2 -2
- package/artifacts/KeepToken.json +2 -2
- package/artifacts/KeepTokenStaking.json +1 -1
- package/artifacts/LightRelay.json +3 -3
- package/artifacts/MaintainerProxy.json +15 -15
- package/artifacts/MovingFunds.json +7 -7
- package/artifacts/NuCypherStakingEscrow.json +1 -1
- package/artifacts/NuCypherToken.json +2 -2
- package/artifacts/RandomBeacon.json +2 -2
- package/artifacts/RandomBeaconChaosnet.json +2 -2
- package/artifacts/RandomBeaconGovernance.json +2 -2
- package/artifacts/Redemption.json +7 -7
- package/artifacts/ReimbursementPool.json +2 -2
- package/artifacts/T.json +2 -2
- package/artifacts/TBTC.json +3 -3
- package/artifacts/TBTCToken.json +3 -3
- package/artifacts/TBTCVault.json +9 -9
- package/artifacts/TokenStaking.json +1 -1
- package/artifacts/TokenholderGovernor.json +9 -9
- package/artifacts/TokenholderTimelock.json +8 -8
- package/artifacts/VendingMachine.json +3 -3
- package/artifacts/VendingMachineKeep.json +1 -1
- package/artifacts/VendingMachineNuCypher.json +1 -1
- package/artifacts/WalletRegistry.json +5 -5
- package/artifacts/WalletRegistryGovernance.json +2 -2
- package/artifacts/Wallets.json +7 -7
- package/artifacts/solcInputs/{b63dab89a2e89a0f54eb7f775a5bd516.json → 79a96d1cf4af176d93e6844dc248dcff.json} +2 -2
- package/artifacts/solcInputs/{c88caf1374ff7ffc912d8c7e982bd645.json → fccb130292c8c7cc958ab4fa31a3e180.json} +2 -2
- package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
- package/build/contracts/bank/Bank.sol/Bank.dbg.json +1 -1
- package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +1 -1
- package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +1 -1
- package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.json +2 -2
- package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +1 -1
- package/build/contracts/bridge/Bridge.sol/Bridge.json +2 -2
- package/build/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.dbg.json +1 -1
- package/build/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.json +2 -2
- package/build/contracts/bridge/BridgeGovernanceParameters.sol/BridgeGovernanceParameters.dbg.json +1 -1
- package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +1 -1
- package/build/contracts/bridge/BridgeState.sol/BridgeState.json +2 -2
- package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +1 -1
- package/build/contracts/bridge/Deposit.sol/Deposit.json +2 -2
- package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +1 -1
- package/build/contracts/bridge/DepositSweep.sol/DepositSweep.json +2 -2
- package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +1 -1
- package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +1 -1
- package/build/contracts/bridge/Fraud.sol/Fraud.json +2 -2
- package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +1 -1
- package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +1 -1
- package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +1 -1
- package/build/contracts/bridge/MovingFunds.sol/MovingFunds.json +2 -2
- package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +1 -1
- package/build/contracts/bridge/Redemption.sol/OutboundTx.json +2 -2
- package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +1 -1
- package/build/contracts/bridge/Redemption.sol/Redemption.json +2 -2
- package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
- package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +1 -1
- package/build/contracts/bridge/Wallets.sol/Wallets.json +2 -2
- package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.dbg.json +1 -1
- package/build/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +2 -2
- package/build/contracts/relay/LightRelay.sol/ILightRelay.dbg.json +1 -1
- package/build/contracts/relay/LightRelay.sol/LightRelay.dbg.json +1 -1
- package/build/contracts/relay/LightRelay.sol/RelayUtils.dbg.json +1 -1
- package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
- package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +1 -1
- package/build/contracts/vault/IVault.sol/IVault.dbg.json +1 -1
- package/build/contracts/vault/TBTCOptimisticMinting.sol/TBTCOptimisticMinting.dbg.json +1 -1
- package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +1 -1
- package/build/contracts/vault/TBTCVault.sol/TBTCVault.json +2 -2
- package/contracts/bridge/Bridge.sol +1 -1
- package/contracts/bridge/BridgeState.sol +1 -1
- package/deploy/01_deploy_light_relay.ts +1 -1
- package/deploy/05_deploy_bank.ts +1 -2
- package/deploy/06_deploy_bridge.ts +1 -1
- package/deploy/{11_deploy_tbtc_vault.ts → 07_deploy_tbtc_vault.ts} +0 -0
- package/deploy/08_deploy_donation_vault.ts +34 -0
- package/deploy/{12_deploy_bridge_governance.ts → 09_deploy_bridge_governance.ts} +3 -2
- package/deploy/{13_deploy_maintainer_proxy.ts → 10_deploy_maintainer_proxy.ts} +0 -0
- package/deploy/{14_bank_update_bridge.ts → 11_bank_update_bridge.ts} +0 -0
- package/deploy/{15_authorize_spv_maintainer_in_bridge.ts → 12_authorize_tbtc_vault_in_bridge.ts} +7 -5
- package/deploy/{22_authorize_maintainer_proxy_in_bridge.ts → 13_authorize_maintainer_proxy_in_bridge.ts} +0 -0
- package/deploy/{10_set_deposit_params.ts → 14_set_deposit_parameters.ts} +1 -1
- package/deploy/15_set_wallet_parameters.ts +42 -0
- package/deploy/{07_disable_fraud_challenges.ts → 16_disable_fraud_challenges.ts} +7 -8
- package/deploy/{08_disable_redemptions.ts → 17_disable_redemptions.ts} +6 -4
- package/deploy/{09_disable_moving_funds.ts → 18_disable_moving_funds.ts} +16 -7
- package/deploy/19_authorize_spv_maintainer_in_bridge.ts +31 -0
- package/deploy/{16_transfer_bank_ownership.ts → 20_transfer_bank_ownership.ts} +1 -1
- package/deploy/{17_transfer_bridge_governance.ts → 21_transfer_bridge_governance.ts} +11 -1
- package/deploy/{18_transfer_bridge_governance_ownership.ts → 22_transfer_bridge_governance_ownership.ts} +0 -0
- package/deploy/{19_transfer_tbtc_vault_ownership.ts → 23_transfer_tbtc_vault_ownership.ts} +0 -0
- package/deploy/{20_transfer_maintainer_proxy_ownership.ts → 24_transfer_maintainer_proxy_ownership.ts} +0 -0
- package/deploy/{21_transfer_proxy_admin_ownership.ts → 25_transfer_proxy_admin_ownership.ts} +0 -0
- package/deploy/{23_authorize_maintainer_proxy_in_reimbursement_pool.ts → 26_authorize_maintainer_proxy_in_reimbursement_pool.ts} +7 -0
- package/deploy/{24_authorize_bridge_in_reimbursement_pool.ts → 27_authorize_bridge_in_reimbursement_pool.ts} +7 -0
- package/deploy/{25_deploy_proxy_admin_with_deputy.ts → 28_deploy_proxy_admin_with_deputy.ts} +0 -0
- package/export/artifacts/contracts/bridge/Bridge.sol/Bridge.json +6 -6
- package/export/artifacts/contracts/bridge/BridgeGovernance.sol/BridgeGovernance.json +5 -5
- package/export/artifacts/contracts/maintainer/MaintainerProxy.sol/MaintainerProxy.json +5 -5
- package/export/artifacts/contracts/test/BridgeStub.sol/BridgeStub.json +6 -6
- package/export/artifacts/contracts/test/SystemTestRelay.sol/SystemTestRelay.json +5 -5
- package/export/artifacts/contracts/vault/TBTCVault.sol/TBTCVault.json +5 -5
- package/export/deploy/01_deploy_light_relay.js +1 -1
- package/export/deploy/05_deploy_bank.js +1 -1
- package/export/deploy/06_deploy_bridge.js +1 -1
- package/export/deploy/{11_deploy_tbtc_vault.js → 07_deploy_tbtc_vault.js} +0 -0
- package/export/deploy/08_deploy_donation_vault.js +83 -0
- package/export/deploy/{12_deploy_bridge_governance.js → 09_deploy_bridge_governance.js} +3 -2
- package/export/deploy/{13_deploy_maintainer_proxy.js → 10_deploy_maintainer_proxy.js} +0 -0
- package/export/deploy/{14_bank_update_bridge.js → 11_bank_update_bridge.js} +0 -0
- package/export/deploy/12_authorize_tbtc_vault_in_bridge.js +63 -0
- package/export/deploy/{22_authorize_maintainer_proxy_in_bridge.js → 13_authorize_maintainer_proxy_in_bridge.js} +0 -0
- package/export/deploy/{10_set_deposit_params.js → 14_set_deposit_parameters.js} +1 -1
- package/export/deploy/15_set_wallet_parameters.js +67 -0
- package/export/deploy/{07_disable_fraud_challenges.js → 16_disable_fraud_challenges.js} +4 -6
- package/export/deploy/{08_disable_redemptions.js → 17_disable_redemptions.js} +3 -2
- package/export/deploy/{09_disable_moving_funds.js → 18_disable_moving_funds.js} +13 -5
- package/export/deploy/{15_authorize_spv_maintainer_in_bridge.js → 19_authorize_spv_maintainer_in_bridge.js} +10 -0
- package/export/deploy/{16_transfer_bank_ownership.js → 20_transfer_bank_ownership.js} +1 -1
- package/export/deploy/{17_transfer_bridge_governance.js → 21_transfer_bridge_governance.js} +11 -1
- package/export/deploy/{18_transfer_bridge_governance_ownership.js → 22_transfer_bridge_governance_ownership.js} +0 -0
- package/export/deploy/{19_transfer_tbtc_vault_ownership.js → 23_transfer_tbtc_vault_ownership.js} +0 -0
- package/export/deploy/{20_transfer_maintainer_proxy_ownership.js → 24_transfer_maintainer_proxy_ownership.js} +0 -0
- package/export/deploy/{21_transfer_proxy_admin_ownership.js → 25_transfer_proxy_admin_ownership.js} +0 -0
- package/export/deploy/{23_authorize_maintainer_proxy_in_reimbursement_pool.js → 26_authorize_maintainer_proxy_in_reimbursement_pool.js} +7 -0
- package/export/deploy/{24_authorize_bridge_in_reimbursement_pool.js → 27_authorize_bridge_in_reimbursement_pool.js} +7 -0
- package/export/deploy/{25_deploy_proxy_admin_with_deputy.js → 28_deploy_proxy_admin_with_deputy.js} +0 -0
- package/export/hardhat.config.js +19 -8
- package/export/typechain/factories/BridgeGovernance__factory.js +1 -1
- package/export/typechain/factories/BridgeState__factory.js +1 -1
- package/export/typechain/factories/BridgeStub__factory.js +1 -1
- package/export/typechain/factories/Bridge__factory.js +1 -1
- package/export/typechain/factories/DepositSweep__factory.js +1 -1
- package/export/typechain/factories/Deposit__factory.js +1 -1
- package/export/typechain/factories/Fraud__factory.js +1 -1
- package/export/typechain/factories/MaintainerProxy__factory.js +1 -1
- package/export/typechain/factories/MovingFunds__factory.js +1 -1
- package/export/typechain/factories/Redemption__factory.js +1 -1
- package/export/typechain/factories/SystemTestRelay__factory.js +1 -1
- package/export/typechain/factories/TBTCVault__factory.js +1 -1
- package/export/typechain/factories/Wallets__factory.js +1 -1
- package/package.json +1 -1
|
@@ -48,7 +48,7 @@ var func = function (hre) {
|
|
|
48
48
|
case 1:
|
|
49
49
|
deployer = (_a.sent()).deployer;
|
|
50
50
|
return [4 /*yield*/, deploy("Bank", {
|
|
51
|
-
contract: process.env.TEST_USE_STUBS_TBTC === "true" ? "BankStub" :
|
|
51
|
+
contract: process.env.TEST_USE_STUBS_TBTC === "true" ? "BankStub" : "Bank",
|
|
52
52
|
from: deployer,
|
|
53
53
|
args: [],
|
|
54
54
|
log: true,
|
|
@@ -120,7 +120,7 @@ var func = function (hre) {
|
|
|
120
120
|
_d = (_c = helpers.upgrades).deployProxy;
|
|
121
121
|
_e = ["Bridge"];
|
|
122
122
|
_f = {
|
|
123
|
-
contractName: process.env.TEST_USE_STUBS_TBTC === "true" ? "BridgeStub" :
|
|
123
|
+
contractName: process.env.TEST_USE_STUBS_TBTC === "true" ? "BridgeStub" : "Bridge",
|
|
124
124
|
initializerArgs: [
|
|
125
125
|
Bank.address,
|
|
126
126
|
LightRelay.address,
|
|
File without changes
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var func = function (hre) {
|
|
40
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
41
|
+
var deployments, getNamedAccounts, helpers, deploy, deployer, Bank, donationVault;
|
|
42
|
+
return __generator(this, function (_a) {
|
|
43
|
+
switch (_a.label) {
|
|
44
|
+
case 0:
|
|
45
|
+
deployments = hre.deployments, getNamedAccounts = hre.getNamedAccounts, helpers = hre.helpers;
|
|
46
|
+
deploy = deployments.deploy;
|
|
47
|
+
return [4 /*yield*/, getNamedAccounts()];
|
|
48
|
+
case 1:
|
|
49
|
+
deployer = (_a.sent()).deployer;
|
|
50
|
+
return [4 /*yield*/, deployments.get("Bank")];
|
|
51
|
+
case 2:
|
|
52
|
+
Bank = _a.sent();
|
|
53
|
+
return [4 /*yield*/, deploy("DonationVault", {
|
|
54
|
+
contract: "DonationVault",
|
|
55
|
+
from: deployer,
|
|
56
|
+
args: [Bank.address],
|
|
57
|
+
log: true,
|
|
58
|
+
waitConfirmations: 1,
|
|
59
|
+
})];
|
|
60
|
+
case 3:
|
|
61
|
+
donationVault = _a.sent();
|
|
62
|
+
if (!hre.network.tags.etherscan) return [3 /*break*/, 5];
|
|
63
|
+
return [4 /*yield*/, helpers.etherscan.verify(donationVault)];
|
|
64
|
+
case 4:
|
|
65
|
+
_a.sent();
|
|
66
|
+
_a.label = 5;
|
|
67
|
+
case 5:
|
|
68
|
+
if (!hre.network.tags.tenderly) return [3 /*break*/, 7];
|
|
69
|
+
return [4 /*yield*/, hre.tenderly.verify({
|
|
70
|
+
name: "DonationVault",
|
|
71
|
+
address: donationVault.address,
|
|
72
|
+
})];
|
|
73
|
+
case 6:
|
|
74
|
+
_a.sent();
|
|
75
|
+
_a.label = 7;
|
|
76
|
+
case 7: return [2 /*return*/];
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
exports.default = func;
|
|
82
|
+
func.tags = ["DonationVault"];
|
|
83
|
+
func.dependencies = ["Bank"];
|
|
@@ -55,12 +55,13 @@ var func = function (hre) {
|
|
|
55
55
|
log: true,
|
|
56
56
|
waitConfirmations: 1,
|
|
57
57
|
})
|
|
58
|
-
// 60 seconds for Goerli.
|
|
58
|
+
// 60 seconds for Goerli. 48 hours otherwise.
|
|
59
59
|
];
|
|
60
60
|
case 3:
|
|
61
61
|
bridgeGovernanceParameters = _a.sent();
|
|
62
|
-
GOVERNANCE_DELAY = hre.network.name === "goerli" ? 60 :
|
|
62
|
+
GOVERNANCE_DELAY = hre.network.name === "goerli" ? 60 : 172800;
|
|
63
63
|
return [4 /*yield*/, deploy("BridgeGovernance", {
|
|
64
|
+
contract: "BridgeGovernance",
|
|
64
65
|
from: deployer,
|
|
65
66
|
args: [Bridge.address, GOVERNANCE_DELAY],
|
|
66
67
|
log: true,
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var func = function (hre) {
|
|
40
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
41
|
+
var getNamedAccounts, deployments, execute, deployer, TBTCVault;
|
|
42
|
+
return __generator(this, function (_a) {
|
|
43
|
+
switch (_a.label) {
|
|
44
|
+
case 0:
|
|
45
|
+
getNamedAccounts = hre.getNamedAccounts, deployments = hre.deployments;
|
|
46
|
+
execute = deployments.execute;
|
|
47
|
+
return [4 /*yield*/, getNamedAccounts()];
|
|
48
|
+
case 1:
|
|
49
|
+
deployer = (_a.sent()).deployer;
|
|
50
|
+
return [4 /*yield*/, deployments.get("TBTCVault")];
|
|
51
|
+
case 2:
|
|
52
|
+
TBTCVault = _a.sent();
|
|
53
|
+
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "setVaultStatus", TBTCVault.address, true)];
|
|
54
|
+
case 3:
|
|
55
|
+
_a.sent();
|
|
56
|
+
return [2 /*return*/];
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
exports.default = func;
|
|
62
|
+
func.tags = ["AuthorizeTBTCVault"];
|
|
63
|
+
func.dependencies = ["Bridge", "TBTCVault"];
|
|
File without changes
|
|
@@ -60,7 +60,7 @@ var func = function (hre) { return __awaiter(void 0, void 0, void 0, function ()
|
|
|
60
60
|
});
|
|
61
61
|
}); };
|
|
62
62
|
exports.default = func;
|
|
63
|
-
func.tags = ["
|
|
63
|
+
func.tags = ["SetDepositParameters"];
|
|
64
64
|
func.dependencies = ["Bridge"];
|
|
65
65
|
func.skip = function (hre) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
66
66
|
return [2 /*return*/, hre.network.name !== "mainnet"];
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var func = function (hre) { return __awaiter(void 0, void 0, void 0, function () {
|
|
40
|
+
var deployments, ethers, getNamedAccounts, execute, read, deployer, walletCreationPeriod, walletCreationMinBtcBalance, walletParameters;
|
|
41
|
+
return __generator(this, function (_a) {
|
|
42
|
+
switch (_a.label) {
|
|
43
|
+
case 0:
|
|
44
|
+
deployments = hre.deployments, ethers = hre.ethers, getNamedAccounts = hre.getNamedAccounts;
|
|
45
|
+
execute = deployments.execute, read = deployments.read;
|
|
46
|
+
return [4 /*yield*/, getNamedAccounts()];
|
|
47
|
+
case 1:
|
|
48
|
+
deployer = (_a.sent()).deployer;
|
|
49
|
+
deployments.log("setting initial wallet parameters");
|
|
50
|
+
walletCreationPeriod = ethers.BigNumber.from("1209600");
|
|
51
|
+
walletCreationMinBtcBalance = ethers.BigNumber.from("0");
|
|
52
|
+
return [4 /*yield*/, read("Bridge", "walletParameters")];
|
|
53
|
+
case 2:
|
|
54
|
+
walletParameters = _a.sent();
|
|
55
|
+
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateWalletParameters", walletCreationPeriod, walletCreationMinBtcBalance, walletParameters.walletCreationMaxBtcBalance, walletParameters.walletClosureMinBtcBalance, walletParameters.walletMaxAge, walletParameters.walletMaxBtcTransfer, walletParameters.walletClosingPeriod)];
|
|
56
|
+
case 3:
|
|
57
|
+
_a.sent();
|
|
58
|
+
return [2 /*return*/];
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
}); };
|
|
62
|
+
exports.default = func;
|
|
63
|
+
func.tags = ["SetWalletParameters"];
|
|
64
|
+
func.dependencies = ["Bridge"];
|
|
65
|
+
func.skip = function (hre) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
66
|
+
return [2 /*return*/, hre.network.name !== "mainnet"];
|
|
67
|
+
}); }); };
|
|
@@ -37,12 +37,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
var func = function (hre) { return __awaiter(void 0, void 0, void 0, function () {
|
|
40
|
-
var deployments, ethers, getNamedAccounts, execute,
|
|
40
|
+
var deployments, ethers, getNamedAccounts, execute, deployer, fraudChallengeDepositAmount, fraudChallengeDefeatTimeout, fraudSlashingAmount, fraudNotifierRewardMultiplier;
|
|
41
41
|
return __generator(this, function (_a) {
|
|
42
42
|
switch (_a.label) {
|
|
43
43
|
case 0:
|
|
44
44
|
deployments = hre.deployments, ethers = hre.ethers, getNamedAccounts = hre.getNamedAccounts;
|
|
45
|
-
execute = deployments.execute
|
|
45
|
+
execute = deployments.execute;
|
|
46
46
|
return [4 /*yield*/, getNamedAccounts()];
|
|
47
47
|
case 1:
|
|
48
48
|
deployer = (_a.sent()).deployer;
|
|
@@ -50,11 +50,9 @@ var func = function (hre) { return __awaiter(void 0, void 0, void 0, function ()
|
|
|
50
50
|
fraudChallengeDepositAmount = ethers.BigNumber.from("79228162514264337593543950335");
|
|
51
51
|
fraudChallengeDefeatTimeout = ethers.BigNumber.from("4294967295");
|
|
52
52
|
fraudSlashingAmount = ethers.BigNumber.from("0");
|
|
53
|
-
|
|
53
|
+
fraudNotifierRewardMultiplier = ethers.BigNumber.from("0");
|
|
54
|
+
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateFraudParameters", fraudChallengeDepositAmount, fraudChallengeDefeatTimeout, fraudSlashingAmount, fraudNotifierRewardMultiplier)];
|
|
54
55
|
case 2:
|
|
55
|
-
fraudParameters = _a.sent();
|
|
56
|
-
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateFraudParameters", fraudChallengeDepositAmount, fraudChallengeDefeatTimeout, fraudSlashingAmount, fraudParameters.fraudNotifierRewardMultiplier)];
|
|
57
|
-
case 3:
|
|
58
56
|
_a.sent();
|
|
59
57
|
return [2 /*return*/];
|
|
60
58
|
}
|
|
@@ -37,7 +37,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
var func = function (hre) { return __awaiter(void 0, void 0, void 0, function () {
|
|
40
|
-
var deployments, ethers, getNamedAccounts, execute, read, deployer, redemptionDustThreshold, redemptionTimeout, redemptionTimeoutSlashingAmount, redemptionParameters;
|
|
40
|
+
var deployments, ethers, getNamedAccounts, execute, read, deployer, redemptionDustThreshold, redemptionTimeout, redemptionTimeoutSlashingAmount, redemptionTimeoutNotifierRewardMultiplier, redemptionParameters;
|
|
41
41
|
return __generator(this, function (_a) {
|
|
42
42
|
switch (_a.label) {
|
|
43
43
|
case 0:
|
|
@@ -50,10 +50,11 @@ var func = function (hre) { return __awaiter(void 0, void 0, void 0, function ()
|
|
|
50
50
|
redemptionDustThreshold = ethers.BigNumber.from("18446744073709551615");
|
|
51
51
|
redemptionTimeout = ethers.BigNumber.from("4294967295");
|
|
52
52
|
redemptionTimeoutSlashingAmount = ethers.BigNumber.from("0");
|
|
53
|
+
redemptionTimeoutNotifierRewardMultiplier = ethers.BigNumber.from("0");
|
|
53
54
|
return [4 /*yield*/, read("Bridge", "redemptionParameters")];
|
|
54
55
|
case 2:
|
|
55
56
|
redemptionParameters = _a.sent();
|
|
56
|
-
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateRedemptionParameters", redemptionDustThreshold, redemptionParameters.redemptionTreasuryFeeDivisor, redemptionParameters.redemptionTxMaxFee, redemptionParameters.redemptionTxMaxTotalFee, redemptionTimeout, redemptionTimeoutSlashingAmount,
|
|
57
|
+
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateRedemptionParameters", redemptionDustThreshold, redemptionParameters.redemptionTreasuryFeeDivisor, redemptionParameters.redemptionTxMaxFee, redemptionParameters.redemptionTxMaxTotalFee, redemptionTimeout, redemptionTimeoutSlashingAmount, redemptionTimeoutNotifierRewardMultiplier)];
|
|
57
58
|
case 3:
|
|
58
59
|
_a.sent();
|
|
59
60
|
return [2 /*return*/];
|
|
@@ -37,7 +37,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
var func = function (hre) { return __awaiter(void 0, void 0, void 0, function () {
|
|
40
|
-
var deployments, ethers, getNamedAccounts, execute, read, deployer, walletMaxAge, walletClosureMinBtcBalance, walletParameters, movingFundsTimeout, movingFundsTimeoutSlashingAmount, movingFundsParameters;
|
|
40
|
+
var deployments, ethers, getNamedAccounts, execute, read, deployer, walletMaxAge, walletClosureMinBtcBalance, walletParameters, movingFundsTimeout, movedFundsSweepTimeout, movingFundsTimeoutSlashingAmount, movedFundsSweepTimeoutSlashingAmount, movingFundsTimeoutNotifierRewardMultiplier, movedFundsSweepTimeoutNotifierRewardMultiplier, movingFundsParameters;
|
|
41
41
|
return __generator(this, function (_a) {
|
|
42
42
|
switch (_a.label) {
|
|
43
43
|
case 0:
|
|
@@ -53,18 +53,26 @@ var func = function (hre) { return __awaiter(void 0, void 0, void 0, function ()
|
|
|
53
53
|
case 2:
|
|
54
54
|
walletParameters = _a.sent();
|
|
55
55
|
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateWalletParameters", walletParameters.walletCreationPeriod, walletParameters.walletCreationMinBtcBalance, walletParameters.walletCreationMaxBtcBalance, walletClosureMinBtcBalance, walletMaxAge, walletParameters.walletMaxBtcTransfer, walletParameters.walletClosingPeriod)
|
|
56
|
-
// To emphasize the fact that moving funds is disabled, we set
|
|
57
|
-
// movingFundsTimeout to uint32 max value (2^32-1 = 4294967295)
|
|
58
|
-
//
|
|
56
|
+
// To emphasize the fact that moving funds is disabled, we set:
|
|
57
|
+
// - movingFundsTimeout to uint32 max value (2^32-1 = 4294967295),
|
|
58
|
+
// - movedFundsSweepTimeout to uint32 max value,
|
|
59
|
+
// - movingFundsTimeoutSlashingAmount to 0,
|
|
60
|
+
// - movedFundsSweepTimeoutSlashingAmount to 0,
|
|
61
|
+
// - movingFundsTimeoutNotifierRewardMultiplier to 0,
|
|
62
|
+
// - movedFundsSweepTimeoutNotifierRewardMultiplier to 0.
|
|
59
63
|
];
|
|
60
64
|
case 3:
|
|
61
65
|
_a.sent();
|
|
62
66
|
movingFundsTimeout = ethers.BigNumber.from("4294967295");
|
|
67
|
+
movedFundsSweepTimeout = ethers.BigNumber.from("4294967295");
|
|
63
68
|
movingFundsTimeoutSlashingAmount = ethers.BigNumber.from("0");
|
|
69
|
+
movedFundsSweepTimeoutSlashingAmount = ethers.BigNumber.from("0");
|
|
70
|
+
movingFundsTimeoutNotifierRewardMultiplier = ethers.BigNumber.from("0");
|
|
71
|
+
movedFundsSweepTimeoutNotifierRewardMultiplier = ethers.BigNumber.from("0");
|
|
64
72
|
return [4 /*yield*/, read("Bridge", "movingFundsParameters")];
|
|
65
73
|
case 4:
|
|
66
74
|
movingFundsParameters = _a.sent();
|
|
67
|
-
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateMovingFundsParameters", movingFundsParameters.movingFundsTxMaxTotalFee, movingFundsParameters.movingFundsDustThreshold, movingFundsParameters.movingFundsTimeoutResetDelay, movingFundsTimeout, movingFundsTimeoutSlashingAmount,
|
|
75
|
+
return [4 /*yield*/, execute("Bridge", { from: deployer, log: true, waitConfirmations: 1 }, "updateMovingFundsParameters", movingFundsParameters.movingFundsTxMaxTotalFee, movingFundsParameters.movingFundsDustThreshold, movingFundsParameters.movingFundsTimeoutResetDelay, movingFundsTimeout, movingFundsTimeoutSlashingAmount, movingFundsTimeoutNotifierRewardMultiplier, movingFundsParameters.movingFundsCommitmentGasOffset, movingFundsParameters.movedFundsSweepTxMaxTotalFee, movedFundsSweepTimeout, movedFundsSweepTimeoutSlashingAmount, movedFundsSweepTimeoutNotifierRewardMultiplier)];
|
|
68
76
|
case 5:
|
|
69
77
|
_a.sent();
|
|
70
78
|
return [2 /*return*/];
|
|
@@ -58,3 +58,13 @@ var func = function (hre) {
|
|
|
58
58
|
exports.default = func;
|
|
59
59
|
func.tags = ["AuthorizeSpvMaintainer"];
|
|
60
60
|
func.dependencies = ["Bridge"];
|
|
61
|
+
// SPV maintainer can submit SPV proofs to the Bridge. We authorize spvMaintainer
|
|
62
|
+
// account for Hardhat network (unit tests) and Goerli (testnet) but we DO NOT
|
|
63
|
+
// want to authorize it for Mainnet deployment. SPV maintainer will be authorized
|
|
64
|
+
// separately by the Governance when sweeping will be activated.
|
|
65
|
+
//
|
|
66
|
+
// Note that at this point MaintainerProxy contract is already authorized in the
|
|
67
|
+
// Bridge (see AuthorizeMaintainerProxyInBridge tag).
|
|
68
|
+
func.skip = function (hre) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
69
|
+
return [2 /*return*/, hre.network.name === "mainnet"];
|
|
70
|
+
}); }); };
|
|
@@ -59,5 +59,15 @@ var func = function (hre) {
|
|
|
59
59
|
};
|
|
60
60
|
exports.default = func;
|
|
61
61
|
func.tags = ["TransferBridgeGovernance"];
|
|
62
|
-
func.dependencies = [
|
|
62
|
+
func.dependencies = [
|
|
63
|
+
"Bridge",
|
|
64
|
+
"AuthorizeTBTCVault",
|
|
65
|
+
"AuthorizeMaintainerProxyInBridge",
|
|
66
|
+
"SetDepositParameters",
|
|
67
|
+
"SetWalletParameters",
|
|
68
|
+
"DisableFraudChallenges",
|
|
69
|
+
"DisableRedemptions",
|
|
70
|
+
"DisableMovingFunds",
|
|
71
|
+
"AuthorizeSpvMaintainer",
|
|
72
|
+
];
|
|
63
73
|
func.runAtTheEnd = true;
|
|
File without changes
|
package/export/deploy/{19_transfer_tbtc_vault_ownership.js → 23_transfer_tbtc_vault_ownership.js}
RENAMED
|
File without changes
|
|
File without changes
|
package/export/deploy/{21_transfer_proxy_admin_ownership.js → 25_transfer_proxy_admin_ownership.js}
RENAMED
|
File without changes
|
|
@@ -61,3 +61,10 @@ var func = function (hre) {
|
|
|
61
61
|
exports.default = func;
|
|
62
62
|
func.tags = ["AuthorizeMaintainerProxyInReimbursementPool"];
|
|
63
63
|
func.dependencies = ["ReimbursementPool", "MaintainerProxy"];
|
|
64
|
+
// On mainnet, the ReimbursementPool ownership is passed to the Threshold
|
|
65
|
+
// Council / DAO and that address is not controlled by the dev team.
|
|
66
|
+
// Hence, this step can be executed only for non-mainnet networks such as
|
|
67
|
+
// Hardhat (unit tests) and Goerli (testnet).
|
|
68
|
+
func.skip = function (hre) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
69
|
+
return [2 /*return*/, hre.network.name === "mainnet"];
|
|
70
|
+
}); }); };
|
|
@@ -61,3 +61,10 @@ var func = function (hre) {
|
|
|
61
61
|
exports.default = func;
|
|
62
62
|
func.tags = ["AuthorizeBridgeInReimbursementPool"];
|
|
63
63
|
func.dependencies = ["ReimbursementPool", "Bridge"];
|
|
64
|
+
// On mainnet, the ReimbursementPool ownership is passed to the Threshold
|
|
65
|
+
// Council / DAO and that address is not controlled by the dev team.
|
|
66
|
+
// Hence, this step can be executed only for non-mainnet networks such as
|
|
67
|
+
// Hardhat (unit tests) and Goerli (testnet).
|
|
68
|
+
func.skip = function (hre) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
69
|
+
return [2 /*return*/, hre.network.name === "mainnet"];
|
|
70
|
+
}); }); };
|
package/export/deploy/{25_deploy_proxy_admin_with_deputy.js → 28_deploy_proxy_admin_with_deputy.js}
RENAMED
|
File without changes
|
package/export/hardhat.config.js
CHANGED
|
@@ -101,10 +101,18 @@ var config = {
|
|
|
101
101
|
goerli: {
|
|
102
102
|
url: process.env.CHAIN_API_URL || "",
|
|
103
103
|
chainId: 5,
|
|
104
|
+
accounts: process.env.ACCOUNTS_PRIVATE_KEYS
|
|
105
|
+
? process.env.ACCOUNTS_PRIVATE_KEYS.split(",")
|
|
106
|
+
: undefined,
|
|
107
|
+
tags: ["etherscan", "tenderly"],
|
|
108
|
+
},
|
|
109
|
+
mainnet: {
|
|
110
|
+
url: process.env.CHAIN_API_URL || "",
|
|
111
|
+
chainId: 1,
|
|
104
112
|
accounts: process.env.CONTRACT_OWNER_ACCOUNT_PRIVATE_KEY
|
|
105
113
|
? [process.env.CONTRACT_OWNER_ACCOUNT_PRIVATE_KEY]
|
|
106
114
|
: undefined,
|
|
107
|
-
tags: ["tenderly"],
|
|
115
|
+
tags: ["etherscan", "tenderly"],
|
|
108
116
|
},
|
|
109
117
|
},
|
|
110
118
|
tenderly: {
|
|
@@ -154,21 +162,22 @@ var config = {
|
|
|
154
162
|
default: 1,
|
|
155
163
|
goerli: 0,
|
|
156
164
|
},
|
|
157
|
-
// TODO: Governance should be the Threshold Council.
|
|
158
|
-
// Inspect usages and rename.
|
|
159
165
|
governance: {
|
|
160
166
|
default: 2,
|
|
161
|
-
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB",
|
|
167
|
+
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB",
|
|
168
|
+
mainnet: "0x9f6e831c8f8939dc0c830c6e492e7cef4f9c2f5f", // Threshold Council
|
|
162
169
|
},
|
|
163
170
|
chaosnetOwner: {
|
|
164
171
|
default: 3,
|
|
165
172
|
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB", // Dev team
|
|
166
|
-
// mainnet
|
|
173
|
+
// Not used for mainnet deployment scripts of `@keepn-network/tbtc-v2`.
|
|
174
|
+
// Used by `@keep-network/random-beacon` and `@keep-network/ecdsa`
|
|
175
|
+
// when deploying `SortitionPool`s.
|
|
167
176
|
},
|
|
168
177
|
esdm: {
|
|
169
178
|
default: 4,
|
|
170
|
-
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB",
|
|
171
|
-
|
|
179
|
+
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB",
|
|
180
|
+
mainnet: "0x9f6e831c8f8939dc0c830c6e492e7cef4f9c2f5f", // Threshold Council
|
|
172
181
|
},
|
|
173
182
|
keepTechnicalWalletTeam: {
|
|
174
183
|
default: 5,
|
|
@@ -182,11 +191,13 @@ var config = {
|
|
|
182
191
|
},
|
|
183
192
|
treasury: {
|
|
184
193
|
default: 7,
|
|
185
|
-
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB",
|
|
194
|
+
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB",
|
|
195
|
+
mainnet: "0x87F005317692D05BAA4193AB0c961c69e175f45f", // Token Holder DAO
|
|
186
196
|
},
|
|
187
197
|
spvMaintainer: {
|
|
188
198
|
default: 8,
|
|
189
199
|
goerli: "0xCac19049825F370dB0836cB0d8E4D024F78eb2eB", // Dev team
|
|
200
|
+
// We are not setting SPV maintainer for mainnet in deployment scripts.
|
|
190
201
|
},
|
|
191
202
|
},
|
|
192
203
|
dependencyCompiler: {
|