Skip to content

Commit c3b46f6

Browse files
committed
refactor: opset ds
1 parent 3c5d172 commit c3b46f6

6 files changed

Lines changed: 16 additions & 18 deletions

File tree

src/contracts/interfaces/IDurationVaultStrategy.sol

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
66
import "./IStrategy.sol";
77
import "./IDelegationManager.sol";
88
import "./IAllocationManager.sol";
9+
import "../libraries/OperatorSetLib.sol";
910

1011
/**
1112
* @title Interface for time-bound EigenLayer vault strategies.
@@ -26,8 +27,7 @@ interface IDurationVaultStrategy is IStrategy {
2627
uint256 maxPerDeposit;
2728
uint256 stakeCap;
2829
string metadataURI;
29-
address operatorSetAVS;
30-
uint32 operatorSetId;
30+
OperatorSet operatorSet;
3131
bytes operatorSetRegistrationData;
3232
address delegationApprover;
3333
uint32 operatorAllocationDelay;

src/contracts/strategies/DurationVaultStrategy.sol

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -191,19 +191,19 @@ contract DurationVaultStrategy is DurationVaultStrategyStorage, StrategyBaseTVLL
191191
function _configureOperatorIntegration(
192192
VaultConfig memory config
193193
) internal {
194-
if (config.operatorSetAVS == address(0) || config.operatorSetId == 0) {
194+
if (config.operatorSet.avs == address(0) || config.operatorSet.id == 0) {
195195
revert OperatorIntegrationInvalid();
196196
}
197-
_operatorSet = OperatorSet({avs: config.operatorSetAVS, id: config.operatorSetId});
197+
_operatorSet = config.operatorSet;
198198

199199
delegationManager.registerAsOperator(
200200
config.delegationApprover, config.operatorAllocationDelay, config.operatorMetadataURI
201201
);
202202

203203
IAllocationManager.RegisterParams memory params;
204-
params.avs = config.operatorSetAVS;
204+
params.avs = config.operatorSet.avs;
205205
params.operatorSetIds = new uint32[](1);
206-
params.operatorSetIds[0] = config.operatorSetId;
206+
params.operatorSetIds[0] = config.operatorSet.id;
207207
params.data = config.operatorSetRegistrationData;
208208
allocationManager.registerForOperatorSets(address(this), params);
209209
operatorSetRegistered = true;

src/contracts/strategies/StrategyFactory.sol

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,8 @@ contract StrategyFactory is StrategyFactoryStorage, OwnableUpgradeable, Pausable
200200
config.maxPerDeposit,
201201
config.stakeCap,
202202
config.metadataURI,
203-
config.operatorSetAVS,
204-
config.operatorSetId
203+
config.operatorSet.avs,
204+
config.operatorSet.id
205205
);
206206
}
207207
}

src/test/unit/DurationVaultStrategyUnit.t.sol

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import "../../contracts/strategies/DurationVaultStrategy.sol";
66
import "../../contracts/interfaces/IDurationVaultStrategy.sol";
77
import "../../contracts/interfaces/IDelegationManager.sol";
88
import "../../contracts/interfaces/IAllocationManager.sol";
9+
import "../../contracts/libraries/OperatorSetLib.sol";
910
import "../mocks/DelegationManagerMock.sol";
1011
import "../mocks/AllocationManagerMock.sol";
1112

@@ -45,8 +46,7 @@ contract DurationVaultStrategyUnitTests is StrategyBaseTVLLimitsUnitTests {
4546
maxPerDeposit: maxPerDeposit,
4647
stakeCap: maxTotalDeposits,
4748
metadataURI: "ipfs://duration-vault",
48-
operatorSetAVS: OPERATOR_SET_AVS,
49-
operatorSetId: OPERATOR_SET_ID,
49+
operatorSet: OperatorSet({avs: OPERATOR_SET_AVS, id: OPERATOR_SET_ID}),
5050
operatorSetRegistrationData: REGISTRATION_DATA,
5151
delegationApprover: DELEGATION_APPROVER,
5252
operatorAllocationDelay: OPERATOR_ALLOCATION_DELAY,

src/test/unit/StrategyFactoryUnit.t.sol

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import "src/contracts/strategies/DurationVaultStrategy.sol";
99
import "../../contracts/interfaces/IDurationVaultStrategy.sol";
1010
import "../../contracts/interfaces/IDelegationManager.sol";
1111
import "../../contracts/interfaces/IAllocationManager.sol";
12+
import "../../contracts/libraries/OperatorSetLib.sol";
1213
import "src/test/utils/EigenLayerUnitTestSetup.sol";
1314
import "../../contracts/permissions/PauserRegistry.sol";
1415

@@ -146,8 +147,7 @@ contract StrategyFactoryUnitTests is EigenLayerUnitTestSetup {
146147
maxPerDeposit: 10 ether,
147148
stakeCap: 100 ether,
148149
metadataURI: "ipfs://duration",
149-
operatorSetAVS: OPERATOR_SET_AVS,
150-
operatorSetId: OPERATOR_SET_ID,
150+
operatorSet: OperatorSet({avs: OPERATOR_SET_AVS, id: OPERATOR_SET_ID}),
151151
operatorSetRegistrationData: REGISTRATION_DATA,
152152
delegationApprover: DELEGATION_APPROVER,
153153
operatorAllocationDelay: OPERATOR_ALLOCATION_DELAY,
@@ -172,8 +172,7 @@ contract StrategyFactoryUnitTests is EigenLayerUnitTestSetup {
172172
maxPerDeposit: 10 ether,
173173
stakeCap: 100 ether,
174174
metadataURI: "ipfs://duration",
175-
operatorSetAVS: OPERATOR_SET_AVS,
176-
operatorSetId: OPERATOR_SET_ID,
175+
operatorSet: OperatorSet({avs: OPERATOR_SET_AVS, id: OPERATOR_SET_ID}),
177176
operatorSetRegistrationData: REGISTRATION_DATA,
178177
delegationApprover: DELEGATION_APPROVER,
179178
operatorAllocationDelay: OPERATOR_ALLOCATION_DELAY,
@@ -195,8 +194,7 @@ contract StrategyFactoryUnitTests is EigenLayerUnitTestSetup {
195194
maxPerDeposit: 5 ether,
196195
stakeCap: 50 ether,
197196
metadataURI: "ipfs://duration",
198-
operatorSetAVS: OPERATOR_SET_AVS,
199-
operatorSetId: OPERATOR_SET_ID,
197+
operatorSet: OperatorSet({avs: OPERATOR_SET_AVS, id: OPERATOR_SET_ID}),
200198
operatorSetRegistrationData: REGISTRATION_DATA,
201199
delegationApprover: DELEGATION_APPROVER,
202200
operatorAllocationDelay: OPERATOR_ALLOCATION_DELAY,

src/test/unit/StrategyManagerDurationUnit.t.sol

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import "src/contracts/interfaces/IDurationVaultStrategy.sol";
1111
import "src/contracts/interfaces/IStrategy.sol";
1212
import "src/contracts/interfaces/IDelegationManager.sol";
1313
import "src/contracts/interfaces/IAllocationManager.sol";
14+
import "src/contracts/libraries/OperatorSetLib.sol";
1415
import "src/test/utils/EigenLayerUnitTestSetup.sol";
1516

1617
contract StrategyManagerDurationUnitTests is EigenLayerUnitTestSetup, IStrategyManagerEvents {
@@ -65,8 +66,7 @@ contract StrategyManagerDurationUnitTests is EigenLayerUnitTestSetup, IStrategyM
6566
maxPerDeposit: 1_000_000 ether,
6667
stakeCap: 10_000_000 ether,
6768
metadataURI: "ipfs://duration-vault-test",
68-
operatorSetAVS: OPERATOR_SET_AVS,
69-
operatorSetId: OPERATOR_SET_ID,
69+
operatorSet: OperatorSet({avs: OPERATOR_SET_AVS, id: OPERATOR_SET_ID}),
7070
operatorSetRegistrationData: REGISTRATION_DATA,
7171
delegationApprover: DELEGATION_APPROVER,
7272
operatorAllocationDelay: OPERATOR_ALLOCATION_DELAY,

0 commit comments

Comments
 (0)