Skip to content

Commit 9d3c10d

Browse files
authored
Merge pull request #57 from lidofinance/feature/devnet-command
Devnet with DG support and Fusaka fork
2 parents 84f463e + db25c71 commit 9d3c10d

File tree

6 files changed

+26
-20
lines changed

6 files changed

+26
-20
lines changed

contracts/csm.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ import { getVersion } from './initializable';
1111
export const csModuleAddress = getOptionalDeployedAddress('csm.module.address');
1212
export const csModuleContract = new Contract(csModuleAddress, moduleAbi, wallet);
1313

14+
export const csPermissionlessGateAddress = getOptionalDeployedAddress('csm.permissionlessGate.address');
15+
export const csPermissionlessGateContract = new Contract(csPermissionlessGateAddress, permissionlessGateAbi, wallet);
16+
1417
export const csAccountingAddress = getOptionalDeployedAddress('csm.accounting.address');
1518
export const csAccountingContract = new Contract(csAccountingAddress, accountingAbi, wallet);
1619

programs/devnet.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { program } from '@command';
2-
import { votingNewVote } from '@scripts';
2+
import { agentForward, encodeFromAgent, votingNewVote } from '@scripts';
33
import {
44
CallScriptActionWithDescription,
55
encodeCallScript,
@@ -80,8 +80,13 @@ devnet
8080
logger.log();
8181

8282
// Voting calls
83+
const forwardedLidoResumeScripts = lidoResumeScripts.map((call) => {
84+
const [, agentCall] = encodeFromAgent(call);
85+
return agentCall;
86+
});
87+
8388
const votingCalls: CallScriptActionWithDescription[] = [
84-
...lidoResumeScripts,
89+
...forwardedLidoResumeScripts,
8590
...wqResumeScripts,
8691
...veboScripts,
8792
...aoScripts,
@@ -126,7 +131,6 @@ devnet
126131

127132
const newLocatorDeployTx = {
128133
data: newLocatorDeploymentData,
129-
gasLimit: 5000000,
130134
};
131135

132136
const txResponse = await wallet.sendTransaction(newLocatorDeployTx);

programs/omnibus-scripts/generators/aragon.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import { encodeCallScript, getRoleHash, logger } from '@utils';
1+
import { getRoleHash, logger } from '@utils';
22
import { confirmRoleGranting, printRoles } from './roles-auxiliary';
33
import { Contract } from 'ethers';
44
import { aclContract } from '@contracts';
5+
import { encodeFromAgent } from '@scripts';
56

6-
export const encodeFromVotingGrantRolesAragonWithConfirm = async (
7+
export const encodeFromAgentGrantRolesAragonWithConfirm = async (
78
contractName: string,
89
rolesToGrant: string[],
910
contract: Contract,
@@ -13,27 +14,27 @@ export const encodeFromVotingGrantRolesAragonWithConfirm = async (
1314

1415
if (await confirmRoleGranting()) {
1516
logger.log();
16-
return await encodeFromVotingGrantRolesAragon(contractName, rolesToGrant, contract, rolesBeneficiary);
17+
return await encodeFromAgentGrantRolesAragon(contractName, rolesToGrant, contract, rolesBeneficiary);
1718
}
1819

1920
return [];
2021
};
2122

22-
export const encodeFromVotingGrantRolesAragon = async (
23+
export const encodeFromAgentGrantRolesAragon = async (
2324
contractName: string,
2425
rolesToGrant: string[],
2526
contract: Contract,
2627
rolesBeneficiary: string,
2728
) => {
2829
return await Promise.all(
2930
rolesToGrant.map(async (role) => {
30-
const [, grantRoleCall] = await encodeFromVotingGrantRoleAragon(contractName, contract, role, rolesBeneficiary);
31+
const [, grantRoleCall] = await encodeFromAgentGrantRoleAragon(contractName, contract, role, rolesBeneficiary);
3132
return grantRoleCall;
3233
}),
3334
);
3435
};
3536

36-
export const encodeFromVotingGrantRoleAragon = async (
37+
export const encodeFromAgentGrantRoleAragon = async (
3738
contractName: string,
3839
contract: Contract,
3940
role: string,
@@ -49,6 +50,5 @@ export const encodeFromVotingGrantRoleAragon = async (
4950
desc: `${contractName}: Grant '${role}' role to ${account}`,
5051
};
5152

52-
const encoded = encodeCallScript([grantPermissionCall]);
53-
return [encoded, grantPermissionCall] as const;
53+
return encodeFromAgent(grantPermissionCall);
5454
};

programs/omnibus-scripts/generators/lido.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,6 @@ export const encodeScriptsLidoResumeIfStopped = async (stakingLimit: number) =>
4141

4242
export const encodeScriptsLidoResume = async (stakingLimit: number | string) => {
4343
const parsedLimit = parseEther(String(stakingLimit));
44-
const [, resumeProtocolCall, resumeStakingCall, setStakingLimitCall] = resumeLidoAndSetStakingLimit(parsedLimit);
45-
return [resumeProtocolCall, resumeStakingCall, setStakingLimitCall];
44+
const [, resumeProtocolCall, setStakingLimitCall] = resumeLidoAndSetStakingLimit(parsedLimit);
45+
return [resumeProtocolCall, setStakingLimitCall];
4646
};

programs/omnibus-scripts/generators/roles-auxiliary.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import {
66
encodeFromAgentGrantRolesAccessControl,
77
encodeFromAgentGrantRolesAccessControlWithConfirm,
88
} from './access-control';
9-
import { encodeFromVotingGrantRolesAragon, encodeFromVotingGrantRolesAragonWithConfirm } from './aragon';
109
import {
1110
consensusForAccountingContract,
1211
consensusForCSMContract,
@@ -17,6 +16,7 @@ import {
1716
stakingRouterContract,
1817
} from '@contracts';
1918
import { DEFAULT_DEVNET_CONFIG } from './devnet';
19+
import { encodeFromAgentGrantRolesAragon, encodeFromAgentGrantRolesAragonWithConfirm } from './aragon';
2020

2121
const NOR_ROLES = [
2222
'STAKING_ROUTER_ROLE',
@@ -49,7 +49,7 @@ export const promptScriptsRolesWithConfirm = async (beneficiary: string) => {
4949
stakingRouterContract,
5050
beneficiary,
5151
);
52-
const norScripts = await encodeFromVotingGrantRolesAragonWithConfirm('NOR', NOR_ROLES, norContract, beneficiary);
52+
const norScripts = await encodeFromAgentGrantRolesAragonWithConfirm('NOR', NOR_ROLES, norContract, beneficiary);
5353
const aoScripts = await encodeFromAgentGrantRolesAccessControlWithConfirm(
5454
'AO consensus',
5555
HASH_CONSENSUS_ROLES,
@@ -89,7 +89,7 @@ export const promptScriptsCurateModulesRolesWithConfirm = async (moduleIds: numb
8989
for (const moduleId of moduleIds) {
9090
const { stakingModuleAddress } = await stakingRouterContract.getStakingModule(moduleId);
9191
const moduleContract = norContract.attach(stakingModuleAddress) as Contract;
92-
const moduleScripts = await encodeFromVotingGrantRolesAragonWithConfirm(
92+
const moduleScripts = await encodeFromAgentGrantRolesAragonWithConfirm(
9393
`Module ${moduleId}`,
9494
NOR_ROLES,
9595
moduleContract,
@@ -137,7 +137,7 @@ export const encodeScriptsRoles = async (beneficiary: string) => {
137137
stakingRouterContract,
138138
beneficiary,
139139
);
140-
const norScripts = await encodeFromVotingGrantRolesAragon('NOR', NOR_ROLES, norContract, beneficiary);
140+
const norScripts = await encodeFromAgentGrantRolesAragon('NOR', NOR_ROLES, norContract, beneficiary);
141141
const aoScripts = await encodeFromAgentGrantRolesAccessControl(
142142
'AO consensus',
143143
HASH_CONSENSUS_ROLES,

scripts/lido.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { lidoAddress, lidoContract } from '@contracts';
2-
import { encodeCallScript, calcStakeLimitIncreasePerBlock } from '@utils';
2+
import { calcStakeLimitIncreasePerBlock, encodeCallScript } from '@utils';
33
import { formatEther } from 'ethers';
44

55
export const resumeProtocol = () => {
@@ -39,9 +39,8 @@ export const setStakingLimit = (dailyStakingLimit: bigint) => {
3939

4040
export const resumeLidoAndSetStakingLimit = (dailyStakingLimit: bigint) => {
4141
const [, resumeProtocolCall] = resumeProtocol();
42-
const [, resumeStakingCall] = resumeStaking();
4342
const [, setStakingLimitCall] = setStakingLimit(dailyStakingLimit);
44-
const calls = [resumeProtocolCall, resumeStakingCall, setStakingLimitCall];
43+
const calls = [resumeProtocolCall, setStakingLimitCall];
4544

4645
const encoded = encodeCallScript(calls);
4746
return [encoded, ...calls] as const;

0 commit comments

Comments
 (0)