@@ -7,22 +7,20 @@ import "eigenlayer-contracts/src/contracts/permissions/PauserRegistry.sol";
7
7
import {IDelegationManager} from "eigenlayer-contracts/src/contracts/interfaces/IDelegationManager.sol " ;
8
8
import {IStrategyManager, IStrategy} from "eigenlayer-contracts/src/contracts/interfaces/IStrategyManager.sol " ;
9
9
import "eigenlayer-contracts/src/test/mocks/EmptyContract.sol " ;
10
- import "eigenlayer-middleware/src/RegistryCoordinator.sol " as blsregcoord;
11
10
import {IServiceManager} from "eigenlayer-middleware/src/interfaces/IServiceManager.sol " ;
12
11
import {
13
- IBLSApkRegistry ,
14
- IIndexRegistry,
15
- IStakeRegistry,
16
- StakeType
17
- } from "eigenlayer-middleware/src/RegistryCoordinator .sol " ;
18
- import {BLSApkRegistry } from "eigenlayer-middleware/src/BLSApkRegistry .sol " ;
19
- import {IndexRegistry } from "eigenlayer-middleware/src/IndexRegistry .sol " ;
20
- import {StakeRegistry } from "eigenlayer-middleware/src/StakeRegistry .sol " ;
12
+ ISlashingRegistryCoordinator ,
13
+ ISlashingRegistryCoordinatorTypes
14
+ } from " eigenlayer-middleware/src/interfaces/ISlashingRegistryCoordinator.sol " ;
15
+ import {SlashingRegistryCoordinator} from " eigenlayer-middleware/src/SlashingRegistryCoordinator.sol " ;
16
+ import {BLSApkRegistry, IBLSApkRegistry } from "eigenlayer-middleware/src/BLSApkRegistry .sol " ;
17
+ import {IndexRegistry, IIndexRegistry } from "eigenlayer-middleware/src/IndexRegistry .sol " ;
18
+ import {StakeRegistry, IStakeRegistry, IStakeRegistryTypes } from "eigenlayer-middleware/src/StakeRegistry .sol " ;
19
+ import {SocketRegistry, ISocketRegistry, IRegistryCoordinator } from "eigenlayer-middleware/src/SocketRegistry .sol " ;
21
20
import {OperatorStateRetriever} from "eigenlayer-middleware/src/OperatorStateRetriever.sol " ;
22
21
import {MockAvsContracts} from "./parsers/MockAvsContractsParser.sol " ;
23
22
import {EigenlayerContracts, EigenlayerContractsParser} from "./parsers/EigenlayerContractsParser.sol " ;
24
23
import {ConfigsReadWriter} from "./parsers/ConfigsReadWriter.sol " ;
25
- import {MockAvsServiceManager} from "../src/MockAvsServiceManager.sol " ;
26
24
import {ContractsRegistry} from "../src/ContractsRegistry.sol " ;
27
25
import "forge-std/Script.sol " ;
28
26
import "forge-std/console.sol " ;
@@ -36,13 +34,15 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
36
34
IIndexRegistry indexRegistryImplementation;
37
35
IStakeRegistry stakeRegistry;
38
36
IStakeRegistry stakeRegistryImplementation;
37
+ ISocketRegistry socketRegistry;
38
+ ISocketRegistry socketRegistryImplementation;
39
39
}
40
40
41
41
struct DeployedContracts {
42
42
ProxyAdmin proxyAdmin;
43
43
PauserRegistry pauserReg;
44
- blsregcoord.RegistryCoordinator coordinator;
45
- blsregcoord.IRegistryCoordinator coordinatorImplementation;
44
+ SlashingRegistryCoordinator coordinator;
45
+ ISlashingRegistryCoordinator coordinatorImplementation;
46
46
OperatorStateRetriever stateRetriever;
47
47
EmptyContract emptyContract;
48
48
}
@@ -67,20 +67,18 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
67
67
68
68
function _deploymockAvsRegistryContracts (
69
69
EigenlayerContracts memory eigenlayerContracts ,
70
- MockAvsOpsAddresses memory addressConfig ,
71
- MockAvsServiceManager manager ,
72
- MockAvsServiceManager managerImpl
70
+ MockAvsOpsAddresses memory addressConfig
73
71
) internal returns (MockAvsContracts memory ) {
74
72
_deployPauserRegistry (addressConfig);
75
73
_deployProxies ();
76
74
deployed.stateRetriever = new OperatorStateRetriever ();
77
- _deployAndUpgradeImplementations (eigenlayerContracts, manager );
75
+ _deployAndUpgradeImplementations (eigenlayerContracts);
78
76
_initializeRegistryCoordinator (addressConfig);
79
77
80
78
require (Ownable (address (deployed.coordinator)).owner () != address (0 ), "Owner uninitialized " );
81
- _writeDeploymentOutput (manager, managerImpl );
79
+ _writeDeploymentOutput ();
82
80
83
- return MockAvsContracts (manager, deployed.coordinator, deployed.stateRetriever);
81
+ return MockAvsContracts (deployed.coordinator, deployed.stateRetriever);
84
82
}
85
83
86
84
function _deployPauserRegistry (MockAvsOpsAddresses memory config ) internal {
@@ -97,7 +95,7 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
97
95
if (address (deployed.proxyAdmin) == address (0 )) {
98
96
deployed.proxyAdmin = new ProxyAdmin ();
99
97
}
100
- deployed.coordinator = blsregcoord. RegistryCoordinator (_deployProxy ());
98
+ deployed.coordinator = SlashingRegistryCoordinator (_deployProxy ());
101
99
registries.blsApkRegistry = IBLSApkRegistry (_deployProxy ());
102
100
registries.indexRegistry = IIndexRegistry (_deployProxy ());
103
101
registries.stakeRegistry = IStakeRegistry (_deployProxy ());
@@ -108,25 +106,28 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
108
106
address (new TransparentUpgradeableProxy (address (deployed.emptyContract), address (deployed.proxyAdmin), "" ));
109
107
}
110
108
111
- function _deployAndUpgradeImplementations (EigenlayerContracts memory eigen , MockAvsServiceManager manager )
112
- internal
113
- {
109
+ function _deployAndUpgradeImplementations (EigenlayerContracts memory eigen ) internal {
114
110
registries.blsApkRegistryImplementation = new BLSApkRegistry (deployed.coordinator);
115
111
_upgradeProxy (address (registries.blsApkRegistry), address (registries.blsApkRegistryImplementation));
116
112
117
113
registries.indexRegistryImplementation = new IndexRegistry (deployed.coordinator);
118
114
_upgradeProxy (address (registries.indexRegistry), address (registries.indexRegistryImplementation));
119
115
120
- registries.stakeRegistryImplementation =
121
- new StakeRegistry (deployed.coordinator, eigen.delegationManager, eigen.avsDirectory, manager);
116
+ registries.stakeRegistryImplementation = new StakeRegistry (
117
+ deployed.coordinator, eigen.delegationManager, eigen.avsDirectory, eigen.allocationManager
118
+ );
122
119
_upgradeProxy (address (registries.stakeRegistry), address (registries.stakeRegistryImplementation));
123
120
124
- deployed.coordinatorImplementation = new blsregcoord.RegistryCoordinator (
125
- blsregcoord.IServiceManager (address (manager)),
126
- blsregcoord.IStakeRegistry (address (registries.stakeRegistry)),
127
- blsregcoord.IBLSApkRegistry (address (registries.blsApkRegistry)),
128
- blsregcoord.IIndexRegistry (address (registries.indexRegistry)),
129
- eigen.avsDirectory,
121
+ registries.socketRegistryImplementation =
122
+ new SocketRegistry (IRegistryCoordinator (address (deployed.coordinator)));
123
+ _upgradeProxy (address (registries.socketRegistry), address (registries.socketRegistryImplementation));
124
+
125
+ deployed.coordinatorImplementation = new SlashingRegistryCoordinator (
126
+ registries.stakeRegistry,
127
+ registries.blsApkRegistry,
128
+ registries.indexRegistry,
129
+ registries.socketRegistry,
130
+ eigen.allocationManager,
130
131
deployed.pauserReg
131
132
);
132
133
}
@@ -137,11 +138,11 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
137
138
138
139
function _initializeRegistryCoordinator (MockAvsOpsAddresses memory config ) internal {
139
140
uint32 numQuorums = 0 ;
140
- blsregcoord.RegistryCoordinator .OperatorSetParam[] memory params =
141
- new blsregcoord.RegistryCoordinator .OperatorSetParam [](numQuorums);
141
+ SlashingRegistryCoordinator .OperatorSetParam[] memory params =
142
+ new SlashingRegistryCoordinator .OperatorSetParam [](numQuorums);
142
143
143
144
for (uint32 i = 0 ; i < numQuorums; i++ ) {
144
- params[i] = blsregcoord.IRegistryCoordinator .OperatorSetParam ({
145
+ params[i] = ISlashingRegistryCoordinatorTypes .OperatorSetParam ({
145
146
maxOperatorCount: 10000 ,
146
147
kickBIPsOfOperatorStake: 15000 ,
147
148
kickBIPsOfTotalStake: 100
@@ -150,14 +151,14 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
150
151
151
152
uint96 [] memory minStake = new uint96 [](numQuorums);
152
153
IStakeRegistry.StrategyParams[][] memory strategyParams = new IStakeRegistry.StrategyParams [][](numQuorums);
153
- StakeType[] memory stakeTypes = new StakeType [](numQuorums);
154
+ IStakeRegistryTypes. StakeType[] memory stakeTypes = new IStakeRegistryTypes. StakeType [](numQuorums);
154
155
uint32 [] memory lookAheadPeriods = new uint32 [](numQuorums);
155
156
156
157
deployed.proxyAdmin.upgradeAndCall (
157
158
TransparentUpgradeableProxy (payable (address (deployed.coordinator))),
158
159
address (deployed.coordinatorImplementation),
159
160
abi.encodeWithSelector (
160
- blsregcoord.RegistryCoordinator .initialize.selector ,
161
+ SlashingRegistryCoordinator .initialize.selector ,
161
162
config.communityMultisig,
162
163
config.churner,
163
164
config.ejector,
@@ -171,13 +172,11 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
171
172
);
172
173
}
173
174
174
- function _writeDeploymentOutput (MockAvsServiceManager manager , MockAvsServiceManager managerImpl ) internal {
175
+ function _writeDeploymentOutput () internal {
175
176
string memory parent = "parent object " ;
176
177
string memory addresses = "addresses " ;
177
178
178
179
vm.serializeAddress (addresses, "proxyAdmin " , address (deployed.proxyAdmin));
179
- vm.serializeAddress (addresses, "mockAvsServiceManager " , address (manager));
180
- vm.serializeAddress (addresses, "mockAvsServiceManagerImplementation " , address (managerImpl));
181
180
vm.serializeAddress (addresses, "registryCoordinator " , address (deployed.coordinator));
182
181
vm.serializeAddress (addresses, "registryCoordinatorImplementation " , address (deployed.coordinatorImplementation));
183
182
string memory output =
@@ -191,7 +190,6 @@ contract DeployMockAvsRegistries is Script, ConfigsReadWriter, EigenlayerContrac
191
190
EigenlayerContracts memory eigen ,
192
191
MockAvsContracts memory avs
193
192
) internal {
194
- registry.registerContract ("mockAvsServiceManager " , address (avs.mockAvsServiceManager));
195
193
registry.registerContract ("mockAvsRegistryCoordinator " , address (avs.registryCoordinator));
196
194
registry.registerContract ("mockAvsOperatorStateRetriever " , address (avs.operatorStateRetriever));
197
195
registry.registerContract ("delegationManager " , address (eigen.delegationManager));
0 commit comments