@skalenetwork/upgrade-tools 4.0.0-ownership-helpers.4 → 4.0.0-ownership-helpers.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/dist/src/ownership-transfer/ownershipAdmin.d.ts +4 -3
- package/dist/src/ownership-transfer/ownershipAdmin.js +20 -20
- package/dist/src/ownership-transfer/ownershipAdmin.js.map +1 -1
- package/dist/src/ownership-transfer/permission-utils.d.ts +2 -2
- package/dist/src/ownership-transfer/permission-utils.js +18 -13
- package/dist/src/ownership-transfer/permission-utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Instance } from "@skalenetwork/skale-contracts-ethers-v6";
|
|
2
|
-
interface OwnershipAdminOptions {
|
|
2
|
+
export interface OwnershipAdminOptions {
|
|
3
|
+
oldOwner: string;
|
|
3
4
|
newOwner?: string;
|
|
4
5
|
readonly?: boolean;
|
|
5
6
|
rolesToCheck?: string[];
|
|
@@ -14,10 +15,11 @@ export declare class OwnershipAdmin {
|
|
|
14
15
|
private transactions;
|
|
15
16
|
private bytes32RolesToCheck;
|
|
16
17
|
private managerRolesToCheck;
|
|
18
|
+
private oldOwner;
|
|
17
19
|
private newOwner;
|
|
18
20
|
private newOwnerConfirmed;
|
|
19
21
|
private readonly;
|
|
20
|
-
constructor(instance: Instance, contractNames: string[], options
|
|
22
|
+
constructor(instance: Instance, contractNames: string[], options: OwnershipAdminOptions);
|
|
21
23
|
loadContractMetadata(confirmFindings?: boolean): Promise<void>;
|
|
22
24
|
createNecessaryTransactions(): Promise<void>;
|
|
23
25
|
private confirmMetadata;
|
|
@@ -34,4 +36,3 @@ export declare class OwnershipAdmin {
|
|
|
34
36
|
private promptConfirmTransactions;
|
|
35
37
|
private isDuplicateTransaction;
|
|
36
38
|
}
|
|
37
|
-
export {};
|
|
@@ -13,7 +13,7 @@ const hardhat_1 = require("hardhat");
|
|
|
13
13
|
const ZERO = 0;
|
|
14
14
|
class OwnershipAdmin {
|
|
15
15
|
// eslint-disable-next-line max-statements
|
|
16
|
-
constructor(instance, contractNames, options
|
|
16
|
+
constructor(instance, contractNames, options) {
|
|
17
17
|
this.transactions = [];
|
|
18
18
|
this.bytes32RolesToCheck = [];
|
|
19
19
|
this.managerRolesToCheck = [];
|
|
@@ -25,18 +25,20 @@ class OwnershipAdmin {
|
|
|
25
25
|
// If true, does not allow to send transactions to blockchain
|
|
26
26
|
this.readonly = options.readonly ?? true;
|
|
27
27
|
this.newOwner = options.newOwner ?? hardhat_1.ethers.ZeroAddress;
|
|
28
|
-
this.bytes32RolesToCheck = (options.rolesToCheck ?? []).map(role =>
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
this.bytes32RolesToCheck = (options.rolesToCheck ?? []).map(role => ({
|
|
29
|
+
identifier: hardhat_1.ethers.id(role),
|
|
30
|
+
name: role
|
|
31
|
+
}));
|
|
31
32
|
// Always check DEFAULT_ADMIN_ROLE at the end!
|
|
32
|
-
this.bytes32RolesToCheck.push(hardhat_1.ethers.ZeroHash);
|
|
33
|
-
this.managerRolesToCheck = options.managerRolesToCheck ?? []
|
|
34
|
-
this.managerRolesToCheck.forEach(role => {
|
|
33
|
+
this.bytes32RolesToCheck.push({ identifier: hardhat_1.ethers.ZeroHash, name: "DEFAULT_ADMIN_ROLE" });
|
|
34
|
+
this.managerRolesToCheck = (options.managerRolesToCheck ?? []).map(role => {
|
|
35
35
|
if (typeof role !== "number" || !Number.isInteger(role) || role < ZERO) {
|
|
36
36
|
throw new Error(`Invalid manager role: ${role}. Must be a non-negative integer.`);
|
|
37
37
|
}
|
|
38
|
+
return { identifier: role, name: `Role ${role}` };
|
|
38
39
|
});
|
|
39
|
-
this.managerRolesToCheck.push(ZERO);
|
|
40
|
+
this.managerRolesToCheck.push({ identifier: ZERO, name: "ADMIN_ROLE" });
|
|
41
|
+
this.oldOwner = options.oldOwner;
|
|
40
42
|
if (!this.readonly && this.newOwner === hardhat_1.ethers.ZeroAddress) {
|
|
41
43
|
throw new Error("New owner address must be provided in options when in write mode.");
|
|
42
44
|
}
|
|
@@ -143,26 +145,23 @@ class OwnershipAdmin {
|
|
|
143
145
|
}
|
|
144
146
|
async createTUPPOwnershipTransaction(contractData) {
|
|
145
147
|
const admin = await (0, utils_1.getAdminAddress)(contractData.address);
|
|
146
|
-
const tx = await (0, permission_utils_1.transferOwnership)(admin, this.newOwner);
|
|
148
|
+
const tx = await (0, permission_utils_1.transferOwnership)(admin, this.newOwner, this.oldOwner);
|
|
147
149
|
if (typeof tx === "boolean" && tx) {
|
|
148
|
-
console.log(chalk_1.default.gray(` -> Owner of ProxyAdmin of ${contractData.address} is already ${this.newOwner}.`));
|
|
149
150
|
return true;
|
|
150
151
|
}
|
|
151
152
|
else if (this.isDuplicateTransaction(tx)) {
|
|
152
|
-
|
|
153
|
-
console.log(chalk_1.default.gray(` NOTE: It's likely ${contractData.name} shares the same Proxy Admin of another contract.`));
|
|
153
|
+
// Shares proxy admin with another contract - tx already created
|
|
154
154
|
return true;
|
|
155
155
|
}
|
|
156
|
-
console.log(chalk_1.default.yellow(` -> Tx to change Proxy Admin at ${admin}
|
|
156
|
+
console.log(chalk_1.default.yellow(` -> Tx to change Proxy Admin Owner at ${admin} created.`));
|
|
157
157
|
return {
|
|
158
|
-
description: `-> Tx to change Proxy Admin at ${admin} to ${this.newOwner}`,
|
|
158
|
+
description: `-> Tx to change Proxy Admin Owner at ${admin} to ${this.newOwner}`,
|
|
159
159
|
transaction: tx
|
|
160
160
|
};
|
|
161
161
|
}
|
|
162
162
|
async createOwnableOwnershipTransaction(contractData) {
|
|
163
|
-
const tx = await (0, permission_utils_1.transferOwnership)(contractData.address, this.newOwner);
|
|
163
|
+
const tx = await (0, permission_utils_1.transferOwnership)(contractData.address, this.newOwner, this.oldOwner);
|
|
164
164
|
if (typeof tx === "boolean" && tx) {
|
|
165
|
-
console.log(chalk_1.default.gray(` -> Owner of ${contractData.name} at ${contractData.address} is already ${this.newOwner}.`));
|
|
166
165
|
return true;
|
|
167
166
|
}
|
|
168
167
|
else if (this.isDuplicateTransaction(tx)) {
|
|
@@ -178,17 +177,18 @@ class OwnershipAdmin {
|
|
|
178
177
|
const txs = [];
|
|
179
178
|
for (const role of this.bytes32RolesToCheck) {
|
|
180
179
|
// eslint-disable-next-line no-await-in-loop
|
|
181
|
-
const tx = await (0, permission_utils_1.grantRole)(contractData.address, role, this.newOwner);
|
|
180
|
+
const tx = await (0, permission_utils_1.grantRole)(contractData.address, role.identifier, this.newOwner, this.oldOwner);
|
|
182
181
|
if (typeof tx === "boolean" && tx) {
|
|
183
|
-
|
|
182
|
+
// eslint-disable-next-line no-continue
|
|
183
|
+
continue;
|
|
184
184
|
}
|
|
185
185
|
else if (this.isDuplicateTransaction(tx)) {
|
|
186
186
|
throw new Error(`Error: Transaction to grant role ${role} in ${contractData.name} was already created.`);
|
|
187
187
|
}
|
|
188
188
|
else {
|
|
189
|
-
console.log(chalk_1.default.yellow(` -> Tx to grant role ${role} to ${this.newOwner} in ${contractData.name} created.`));
|
|
189
|
+
console.log(chalk_1.default.yellow(` -> Tx to grant role ${role.name} to ${this.newOwner} in ${contractData.name} created.`));
|
|
190
190
|
txs.push({
|
|
191
|
-
description: `-> Tx to grant role ${role} to ${this.newOwner} in ${contractData.name}`,
|
|
191
|
+
description: `-> Tx to grant role ${role.name} to ${this.newOwner} in ${contractData.name}`,
|
|
192
192
|
transaction: tx
|
|
193
193
|
});
|
|
194
194
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ownershipAdmin.js","sourceRoot":"","sources":["../../../src/ownership-transfer/ownershipAdmin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ownershipAdmin.js","sourceRoot":"","sources":["../../../src/ownership-transfer/ownershipAdmin.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,6 @@ export declare const tryGetMultiSigInfo: (contractAddress: string) => Promise<{
|
|
|
13
13
|
owners: string[] | null;
|
|
14
14
|
threshold: bigint | null;
|
|
15
15
|
}>;
|
|
16
|
-
export declare const transferOwnership: (contractAddress: string, newOwner: string) => Promise<Transaction | true>;
|
|
17
|
-
export declare const grantRole: (contractAddress:
|
|
16
|
+
export declare const transferOwnership: (contractAddress: string, newOwner: string, oldOwner: string) => Promise<Transaction | true>;
|
|
17
|
+
export declare const grantRole: (contractAddress: string, role: string, newAccount: AddressLike, oldAccount: AddressLike) => Promise<Transaction | true>;
|
|
18
18
|
export declare const getPermissionModels: (address: AddressLike) => Promise<PermissionModel[]>;
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.getPermissionModels = exports.grantRole = exports.transferOwnership = exports.tryGetMultiSigInfo = exports.isAccessManaged = exports.isAccessManager = exports.isAccessControl = exports.isOwnable = exports.PermissionModel = void 0;
|
|
7
4
|
/* eslint-disable max-lines */
|
|
8
5
|
const ethers_1 = require("ethers");
|
|
9
6
|
const utils_1 = require("./utils");
|
|
10
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
11
7
|
const hardhat_1 = require("hardhat");
|
|
12
8
|
var PermissionModel;
|
|
13
9
|
(function (PermissionModel) {
|
|
@@ -218,13 +214,15 @@ exports.tryGetMultiSigInfo = tryGetMultiSigInfo;
|
|
|
218
214
|
* @dev The address must have already been verified as an Ownable contract before calling this function.
|
|
219
215
|
*/
|
|
220
216
|
// eslint-disable-next-line max-statements
|
|
221
|
-
const transferOwnership = async (contractAddress, newOwner) => {
|
|
217
|
+
const transferOwnership = async (contractAddress, newOwner, oldOwner) => {
|
|
222
218
|
const contract = new ethers_1.Contract(contractAddress, OWNABLE_ABI, hardhat_1.ethers.provider);
|
|
223
219
|
if (await contract.owner() === newOwner) {
|
|
224
220
|
return true;
|
|
225
221
|
}
|
|
222
|
+
if (await contract.owner() !== oldOwner) {
|
|
223
|
+
throw new Error(`Current owner of contract ${contractAddress} does not match the provided old owner address.`);
|
|
224
|
+
}
|
|
226
225
|
const data = contract.interface.encodeFunctionData("transferOwnership", [newOwner]);
|
|
227
|
-
console.log(chalk_1.default.green(`Prepared transferOwnership transaction for ${contractAddress} to new owner ${newOwner}`));
|
|
228
226
|
const transaction = new ethers_1.Transaction();
|
|
229
227
|
transaction.to = contractAddress;
|
|
230
228
|
transaction.data = data;
|
|
@@ -243,19 +241,26 @@ exports.transferOwnership = transferOwnership;
|
|
|
243
241
|
*
|
|
244
242
|
* @dev The contract address must be a ROLE_BASED contract (not validated by this function)
|
|
245
243
|
*/
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
244
|
+
// eslint-disable-next-line max-statements
|
|
245
|
+
const grantRole = async (contractAddress, role, newAccount, oldAccount
|
|
246
|
+
// eslint-disable-next-line max-params
|
|
247
|
+
) => {
|
|
248
|
+
const contract = new ethers_1.Contract(contractAddress, ACCESS_CONTROL_ABI, hardhat_1.ethers.provider);
|
|
250
249
|
/*
|
|
251
250
|
* Check if the account already has the role
|
|
252
251
|
*/
|
|
253
|
-
if (await contract.hasRole(role,
|
|
252
|
+
if (await contract.hasRole(role, newAccount)) {
|
|
254
253
|
return true;
|
|
255
254
|
}
|
|
256
|
-
|
|
255
|
+
if (!await contract.hasRole(hardhat_1.ethers.ZeroHash, oldAccount)) {
|
|
256
|
+
throw new Error(`Account ${oldAccount} does not have permission to grant roles on contract ${contractAddress}.`);
|
|
257
|
+
}
|
|
258
|
+
if (!await contract.hasRole(role, oldAccount)) {
|
|
259
|
+
return true;
|
|
260
|
+
}
|
|
261
|
+
const data = contract.interface.encodeFunctionData("grantRole", [role, newAccount]);
|
|
257
262
|
const transaction = new ethers_1.Transaction();
|
|
258
|
-
transaction.to =
|
|
263
|
+
transaction.to = contractAddress;
|
|
259
264
|
transaction.data = data;
|
|
260
265
|
return transaction;
|
|
261
266
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-utils.js","sourceRoot":"","sources":["../../../src/ownership-transfer/permission-utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"permission-utils.js","sourceRoot":"","sources":["../../../src/ownership-transfer/permission-utils.ts"],"names":[],"mappings":"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"}
|