refactor: remove BSP and MSP operator sets (#323)

This commit is contained in:
Ahmad Kaouk 2025-11-28 14:01:28 +01:00 committed by GitHub
parent ffd01d8f1d
commit b737bc03ba
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 33 additions and 743 deletions

View file

@ -24,15 +24,13 @@
"allocationConfigurationDelay": 75,
"beaconChainGenesisTimestamp": 1695902400
},
"avs": {
"avsOwner": "0x976EA74026E726554dB657fA54763abd0C3a0aa9",
"rewardsInitiator": "0x14dC79964da2C08b23698B3D3cc7Ca32193d9955",
"vetoCommitteeMember": "0x23618e81E3f5cdF7f54C3d65f7FBc0aBf5B21E8f",
"vetoWindowBlocks": 100,
"validatorsStrategies": [],
"bspsStrategies": [],
"mspsStrategies": []
},
"avs": {
"avsOwner": "0x976EA74026E726554dB657fA54763abd0C3a0aa9",
"rewardsInitiator": "0x14dC79964da2C08b23698B3D3cc7Ca32193d9955",
"vetoCommitteeMember": "0x23618e81E3f5cdF7f54C3d65f7FBc0aBf5B21E8f",
"vetoWindowBlocks": 100,
"validatorsStrategies": []
},
"snowbridge": {
"randaoCommitDelay": 4,
"randaoCommitExpiration": 24,

View file

@ -20,8 +20,6 @@ contract Config {
address vetoCommitteeMember;
uint32 vetoWindowBlocks;
address[] validatorsStrategies;
address[] bspsStrategies;
address[] mspsStrategies;
}
// EigenLayer parameters

View file

@ -194,8 +194,6 @@ contract DeployLocal is DeployBase {
params.avsOwner,
params.rewardsInitiator,
params.validatorsStrategies,
new IStrategy[](0), // FIXME remove when BSPs are removed
new IStrategy[](0), // FIXME remove when MSPs are removed
params.gateway
);
@ -662,12 +660,8 @@ contract DeployLocal is DeployBase {
) internal pure {
if (config.validatorsStrategies.length == 0) {
config.validatorsStrategies = new address[](strategies.length);
config.bspsStrategies = new address[](strategies.length);
config.mspsStrategies = new address[](strategies.length);
for (uint256 i = 0; i < strategies.length; i++) {
config.validatorsStrategies[i] = strategies[i].address_;
config.bspsStrategies[i] = strategies[i].address_;
config.mspsStrategies[i] = strategies[i].address_;
}
}
}

View file

@ -132,8 +132,6 @@ contract DeployTestnet is DeployBase {
params.avsOwner,
params.rewardsInitiator,
params.validatorsStrategies,
new IStrategy[](0), // FIXME remove when BSPs and MSPs are removed
new IStrategy[](0), // FIXME remove when BSPs and MSPs are removed
params.gateway
);

View file

@ -1,33 +0,0 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.27;
import {SignUpOperatorBase} from "./SignUpOperatorBase.s.sol";
import {DataHavenServiceManager} from "../../src/DataHavenServiceManager.sol";
/**
* @title SignUpBsp
* @notice Script to sign up a backup storage provider (BSP) for the DataHaven network
*/
contract SignUpBsp is SignUpOperatorBase {
/**
* @inheritdoc SignUpOperatorBase
*/
function _getOperatorSetId() internal view override returns (uint32) {
return serviceManager.BSPS_SET_ID();
}
/**
* @inheritdoc SignUpOperatorBase
*/
function _addToAllowlist() internal override {
vm.broadcast(_avsOwnerPrivateKey);
serviceManager.addBspToAllowlist(_operator);
}
/**
* @inheritdoc SignUpOperatorBase
*/
function _getOperatorTypeName() internal pure override returns (string memory) {
return "BSP";
}
}

View file

@ -1,33 +0,0 @@
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.27;
import {SignUpOperatorBase} from "./SignUpOperatorBase.s.sol";
import {DataHavenServiceManager} from "../../src/DataHavenServiceManager.sol";
/**
* @title SignUpMsp
* @notice Script to sign up a main storage provider (MSP) for the DataHaven network
*/
contract SignUpMsp is SignUpOperatorBase {
/**
* @inheritdoc SignUpOperatorBase
*/
function _getOperatorSetId() internal view override returns (uint32) {
return serviceManager.MSPS_SET_ID();
}
/**
* @inheritdoc SignUpOperatorBase
*/
function _addToAllowlist() internal override {
vm.broadcast(_avsOwnerPrivateKey);
serviceManager.addMspToAllowlist(_operator);
}
/**
* @inheritdoc SignUpOperatorBase
*/
function _getOperatorTypeName() internal pure override returns (string memory) {
return "MSP";
}
}

View file

@ -20,7 +20,7 @@ import {Accounts} from "../utils/Accounts.sol";
/**
* @title SignUpOperatorBase
* @notice Base contract for signing up different types of operators (Validators, BSPs, MSPs)
* @notice Base contract for signing up validators
*/
abstract contract SignUpOperatorBase is Script, ELScriptStorage, DHScriptStorage, Accounts {
// Progress indicator

View file

@ -27,8 +27,7 @@ import {ServiceManagerBase} from "./middleware/ServiceManagerBase.sol";
/**
* @title DataHaven ServiceManager contract
* @notice Manages validators, backup storage providers (BSPs), and main storage providers (MSPs)
* in the DataHaven network
* @notice Manages validators in the DataHaven network
*/
contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager {
/// @notice The metadata for the DataHaven AVS.
@ -36,17 +35,9 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
/// @notice The EigenLayer operator set ID for the Validators securing the DataHaven network.
uint32 public constant VALIDATORS_SET_ID = 0;
/// @notice The EigenLayer operator set ID for the Backup Storage Providers participating in the DataHaven network.
uint32 public constant BSPS_SET_ID = 1;
/// @notice The EigenLayer operator set ID for the Main Storage Providers participating in the DataHaven network.
uint32 public constant MSPS_SET_ID = 2;
/// @inheritdoc IDataHavenServiceManager
mapping(address => bool) public validatorsAllowlist;
/// @inheritdoc IDataHavenServiceManager
mapping(address => bool) public bspsAllowlist;
/// @inheritdoc IDataHavenServiceManager
mapping(address => bool) public mspsAllowlist;
IGatewayV2 private _snowbridgeGateway;
@ -75,8 +66,6 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
address initialOwner,
address rewardsInitiator,
IStrategy[] memory validatorsStrategies,
IStrategy[] memory bspsStrategies,
IStrategy[] memory mspsStrategies,
address _snowbridgeGatewayAddress
) public virtual initializer {
__ServiceManagerBase_init(initialOwner, rewardsInitiator);
@ -84,8 +73,8 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
// Register the DataHaven service in the AllocationManager.
_allocationManager.updateAVSMetadataURI(address(this), DATAHAVEN_AVS_METADATA);
// Create the operator sets for the DataHaven service.
_createDataHavenOperatorSets(validatorsStrategies, bspsStrategies, mspsStrategies);
// Create the operator set for the DataHaven service.
_createDataHavenOperatorSets(validatorsStrategies);
// Set the Snowbridge Gateway address.
// This is the contract to which messages are sent, to be relayed to the Solochain network.
@ -159,34 +148,20 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
revert CantRegisterToMultipleOperatorSets();
}
// Case: Validator
if (operatorSetIds[0] == VALIDATORS_SET_ID) {
if (!validatorsAllowlist[operator]) {
revert OperatorNotInAllowlist();
}
// In the case of the Validators operator set, expect the data to have the Solochain address of the operator.
// Require validators to provide 20 bytes addresses.
require(data.length == 20, "Invalid solochain address length");
validatorEthAddressToSolochainAddress[operator] = address(bytes20(data));
}
// Case: BSP
else if (operatorSetIds[0] == BSPS_SET_ID) {
if (!bspsAllowlist[operator]) {
revert OperatorNotInAllowlist();
}
}
// Case: MSP
else if (operatorSetIds[0] == MSPS_SET_ID) {
if (!mspsAllowlist[operator]) {
revert OperatorNotInAllowlist();
}
}
// Case: Invalid operator set ID
else {
// Only validators are supported
if (operatorSetIds[0] != VALIDATORS_SET_ID) {
revert InvalidOperatorSetId();
}
if (!validatorsAllowlist[operator]) {
revert OperatorNotInAllowlist();
}
// In the case of the Validators operator set, expect the data to have the Solochain address of the operator.
// Require validators to provide 20 bytes addresses.
require(data.length == 20, "Invalid solochain address length");
validatorEthAddressToSolochainAddress[operator] = address(bytes20(data));
emit OperatorRegistered(operator, operatorSetIds[0]);
}
@ -204,17 +179,12 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
revert CantDeregisterFromMultipleOperatorSets();
}
if (
operatorSetIds[0] != VALIDATORS_SET_ID && operatorSetIds[0] != BSPS_SET_ID
&& operatorSetIds[0] != MSPS_SET_ID
) {
if (operatorSetIds[0] != VALIDATORS_SET_ID) {
revert InvalidOperatorSetId();
}
if (operatorSetIds[0] == VALIDATORS_SET_ID) {
// Remove validator from the addresses mapping
delete validatorEthAddressToSolochainAddress[operator];
}
// Remove validator from the addresses mapping
delete validatorEthAddressToSolochainAddress[operator];
emit OperatorDeregistered(operator, operatorSetIds[0]);
}
@ -227,22 +197,6 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
emit ValidatorAddedToAllowlist(validator);
}
/// @inheritdoc IDataHavenServiceManager
function addBspToAllowlist(
address bsp
) external onlyOwner {
bspsAllowlist[bsp] = true;
emit BspAddedToAllowlist(bsp);
}
/// @inheritdoc IDataHavenServiceManager
function addMspToAllowlist(
address msp
) external onlyOwner {
mspsAllowlist[msp] = true;
emit MspAddedToAllowlist(msp);
}
/// @inheritdoc IDataHavenServiceManager
function removeValidatorFromAllowlist(
address validator
@ -251,22 +205,6 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
emit ValidatorRemovedFromAllowlist(validator);
}
/// @inheritdoc IDataHavenServiceManager
function removeBspFromAllowlist(
address bsp
) external onlyOwner {
bspsAllowlist[bsp] = false;
emit BspRemovedFromAllowlist(bsp);
}
/// @inheritdoc IDataHavenServiceManager
function removeMspFromAllowlist(
address msp
) external onlyOwner {
mspsAllowlist[msp] = false;
emit MspRemovedFromAllowlist(msp);
}
/// @inheritdoc IDataHavenServiceManager
function validatorsSupportedStrategies() external view returns (IStrategy[] memory) {
OperatorSet memory operatorSet = OperatorSet({avs: address(this), id: VALIDATORS_SET_ID});
@ -289,71 +227,23 @@ contract DataHavenServiceManager is ServiceManagerBase, IDataHavenServiceManager
_allocationManager.addStrategiesToOperatorSet(address(this), VALIDATORS_SET_ID, _strategies);
}
/// @inheritdoc IDataHavenServiceManager
function bspsSupportedStrategies() external view returns (IStrategy[] memory) {
OperatorSet memory operatorSet = OperatorSet({avs: address(this), id: BSPS_SET_ID});
return _allocationManager.getStrategiesInOperatorSet(operatorSet);
}
/// @inheritdoc IDataHavenServiceManager
function removeStrategiesFromBspsSupportedStrategies(
IStrategy[] calldata _strategies
) external onlyOwner {
_allocationManager.removeStrategiesFromOperatorSet(address(this), BSPS_SET_ID, _strategies);
}
/// @inheritdoc IDataHavenServiceManager
function addStrategiesToBspsSupportedStrategies(
IStrategy[] calldata _strategies
) external onlyOwner {
_allocationManager.addStrategiesToOperatorSet(address(this), BSPS_SET_ID, _strategies);
}
/// @inheritdoc IDataHavenServiceManager
function mspsSupportedStrategies() external view returns (IStrategy[] memory) {
OperatorSet memory operatorSet = OperatorSet({avs: address(this), id: MSPS_SET_ID});
return _allocationManager.getStrategiesInOperatorSet(operatorSet);
}
/// @inheritdoc IDataHavenServiceManager
function removeStrategiesFromMspsSupportedStrategies(
IStrategy[] calldata _strategies
) external onlyOwner {
_allocationManager.removeStrategiesFromOperatorSet(address(this), MSPS_SET_ID, _strategies);
}
/// @inheritdoc IDataHavenServiceManager
function addStrategiesToMspsSupportedStrategies(
IStrategy[] calldata _strategies
) external onlyOwner {
_allocationManager.addStrategiesToOperatorSet(address(this), MSPS_SET_ID, _strategies);
}
/// @inheritdoc IDataHavenServiceManager
function snowbridgeGateway() external view returns (address) {
return address(_snowbridgeGateway);
}
/**
* @notice Creates the initial operator sets for DataHaven in the AllocationManager.
* @dev This function should be called during initialisation to set up the required operator sets.
* @notice Creates the initial operator set for DataHaven in the AllocationManager.
* @dev This function should be called during initialisation to set up the required operator set.
*/
function _createDataHavenOperatorSets(
IStrategy[] memory validatorsStrategies,
IStrategy[] memory bspsStrategies,
IStrategy[] memory mspsStrategies
IStrategy[] memory validatorsStrategies
) internal {
IAllocationManagerTypes.CreateSetParams[] memory operatorSets =
new IAllocationManagerTypes.CreateSetParams[](3);
new IAllocationManagerTypes.CreateSetParams[](1);
operatorSets[0] = IAllocationManagerTypes.CreateSetParams({
operatorSetId: VALIDATORS_SET_ID, strategies: validatorsStrategies
});
operatorSets[1] = IAllocationManagerTypes.CreateSetParams({
operatorSetId: BSPS_SET_ID, strategies: bspsStrategies
});
operatorSets[2] = IAllocationManagerTypes.CreateSetParams({
operatorSetId: MSPS_SET_ID, strategies: mspsStrategies
});
_allocationManager.createOperatorSets(address(this), operatorSets);
}
}

View file

@ -43,26 +43,10 @@ interface IDataHavenServiceManagerEvents {
/// @param validator Address of the validator added to the allowlist
event ValidatorAddedToAllowlist(address indexed validator);
/// @notice Emitted when a Backup Storage Provider is added to the allowlist
/// @param bsp Address of the BSP added to the allowlist
event BspAddedToAllowlist(address indexed bsp);
/// @notice Emitted when a Main Storage Provider is added to the allowlist
/// @param msp Address of the MSP added to the allowlist
event MspAddedToAllowlist(address indexed msp);
/// @notice Emitted when a validator is removed from the allowlist
/// @param validator Address of the validator removed from the allowlist
event ValidatorRemovedFromAllowlist(address indexed validator);
/// @notice Emitted when a Backup Storage Provider is removed from the allowlist
/// @param bsp Address of the BSP removed from the allowlist
event BspRemovedFromAllowlist(address indexed bsp);
/// @notice Emitted when a Main Storage Provider is removed from the allowlist
/// @param msp Address of the MSP removed from the allowlist
event MspRemovedFromAllowlist(address indexed msp);
/// @notice Emitted when the Snowbridge Gateway address is set
/// @param snowbridgeGateway Address of the Snowbridge Gateway
event SnowbridgeGatewaySet(address indexed snowbridgeGateway);
@ -70,8 +54,8 @@ interface IDataHavenServiceManagerEvents {
/**
* @title DataHaven Service Manager Interface
* @notice Defines the interface for the DataHaven Service Manager, which manages validators,
* backup storage providers (BSPs), and main storage providers (MSPs) in the DataHaven network
* @notice Defines the interface for the DataHaven Service Manager, which manages validators
* in the DataHaven network
*/
interface IDataHavenServiceManager is
IDataHavenServiceManagerErrors,
@ -84,20 +68,6 @@ interface IDataHavenServiceManager is
address validator
) external view returns (bool);
/// @notice Checks if a BSP address is in the allowlist
/// @param bsp Address to check
/// @return True if the BSP is in the allowlist, false otherwise
function bspsAllowlist(
address bsp
) external view returns (bool);
/// @notice Checks if an MSP address is in the allowlist
/// @param msp Address to check
/// @return True if the MSP is in the allowlist, false otherwise
function mspsAllowlist(
address msp
) external view returns (bool);
/// @notice Returns the Snowbridge Gateway address
/// @return The Snowbridge gateway address
function snowbridgeGateway() external view returns (address);
@ -116,15 +86,11 @@ interface IDataHavenServiceManager is
* @param initialOwner Address of the initial owner
* @param rewardsInitiator Address authorized to initiate rewards
* @param validatorsStrategies Array of strategies supported by validators
* @param bspsStrategies Array of strategies supported by BSPs
* @param mspsStrategies Array of strategies supported by MSPs
*/
function initialise(
address initialOwner,
address rewardsInitiator,
IStrategy[] memory validatorsStrategies,
IStrategy[] memory bspsStrategies,
IStrategy[] memory mspsStrategies,
address _snowbridgeGatewayAddress
) external;
@ -174,22 +140,6 @@ interface IDataHavenServiceManager is
address validator
) external;
/**
* @notice Adds a BSP to the allowlist
* @param bsp Address of the BSP to add
*/
function addBspToAllowlist(
address bsp
) external;
/**
* @notice Adds an MSP to the allowlist
* @param msp Address of the MSP to add
*/
function addMspToAllowlist(
address msp
) external;
/**
* @notice Removes a validator from the allowlist
* @param validator Address of the validator to remove
@ -198,22 +148,6 @@ interface IDataHavenServiceManager is
address validator
) external;
/**
* @notice Removes a BSP from the allowlist
* @param bsp Address of the BSP to remove
*/
function removeBspFromAllowlist(
address bsp
) external;
/**
* @notice Removes an MSP from the allowlist
* @param msp Address of the MSP to remove
*/
function removeMspFromAllowlist(
address msp
) external;
/**
* @notice Returns all strategies supported by the DataHaven Validators operator set
* @return An array of strategy contracts that validators can delegate to
@ -235,48 +169,4 @@ interface IDataHavenServiceManager is
function addStrategiesToValidatorsSupportedStrategies(
IStrategy[] calldata _strategies
) external;
/**
* @notice Returns all strategies supported by the Backup Storage Providers (BSPs) operator set
* @return An array of strategy contracts that BSPs can delegate to
*/
function bspsSupportedStrategies() external view returns (IStrategy[] memory);
/**
* @notice Removes strategies from the list of supported strategies for Backup Storage Providers
* @param _strategies Array of strategy contracts to remove from BSPs operator set
*/
function removeStrategiesFromBspsSupportedStrategies(
IStrategy[] calldata _strategies
) external;
/**
* @notice Adds strategies to the list of supported strategies for Backup Storage Providers
* @param _strategies Array of strategy contracts to add to BSPs operator set
*/
function addStrategiesToBspsSupportedStrategies(
IStrategy[] calldata _strategies
) external;
/**
* @notice Returns all strategies supported by the Main Storage Providers (MSPs) operator set
* @return An array of strategy contracts that MSPs can delegate to
*/
function mspsSupportedStrategies() external view returns (IStrategy[] memory);
/**
* @notice Removes strategies from the list of supported strategies for Main Storage Providers
* @param _strategies Array of strategy contracts to remove from MSPs operator set
*/
function removeStrategiesFromMspsSupportedStrategies(
IStrategy[] calldata _strategies
) external;
/**
* @notice Adds strategies to the list of supported strategies for Main Storage Providers
* @param _strategies Array of strategy contracts to add to MSPs operator set
*/
function addStrategiesToMspsSupportedStrategies(
IStrategy[] calldata _strategies
) external;
}

View file

@ -252,16 +252,12 @@ contract AVSDeployer is Test {
rewardsCoordinator, permissionControllerMock, allocationManager
);
// Create arrays for the three sets of strategies required by DataHavenServiceManager
// Create array for validators strategies required by DataHavenServiceManager
IStrategy[] memory validatorsStrategies = new IStrategy[](deployedStrategies.length);
IStrategy[] memory bspsStrategies = new IStrategy[](deployedStrategies.length);
IStrategy[] memory mspsStrategies = new IStrategy[](deployedStrategies.length);
// For testing purposes, we'll use the same strategies for all three sets
// For testing purposes, we'll use the deployed strategies for validators
for (uint256 i = 0; i < deployedStrategies.length; i++) {
validatorsStrategies[i] = deployedStrategies[i];
bspsStrategies[i] = deployedStrategies[i];
mspsStrategies[i] = deployedStrategies[i];
}
serviceManager = DataHavenServiceManager(
@ -274,8 +270,6 @@ contract AVSDeployer is Test {
avsOwner,
rewardsInitiator,
validatorsStrategies,
bspsStrategies,
mspsStrategies,
address(0) // This deployment does not use Snowbridge
)
)

View file

@ -43,10 +43,6 @@ contract SnowbridgeAndAVSDeployer is AVSDeployer {
0x23618e81E3f5cdF7f54C3d65f7FBc0aBf5B21E8f, // Ninth pre-funded address in anvil
0xa0Ee7A142d267C1f36714E4a8F75612F20a79720 // Tenth pre-funded address in anvil
];
// The addresses of the Backup Storage Providers that are allowed to register to the DataHaven service.
address[] public bspsAllowlist;
// The addresses of the Main Storage Providers that are allowed to register to the DataHaven service.
address[] public mspsAllowlist;
// Snowbridge contracts params
// The hashes of the initial (current) Validators in the DataHaven solochain.

View file

@ -2045,13 +2045,6 @@ export const dataHavenServiceManagerAbi = [
],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [],
name: 'BSPS_SET_ID',
outputs: [{ name: '', internalType: 'uint32', type: 'uint32' }],
stateMutability: 'view',
},
{
type: 'function',
inputs: [],
@ -2059,13 +2052,6 @@ export const dataHavenServiceManagerAbi = [
outputs: [{ name: '', internalType: 'string', type: 'string' }],
stateMutability: 'view',
},
{
type: 'function',
inputs: [],
name: 'MSPS_SET_ID',
outputs: [{ name: '', internalType: 'uint32', type: 'uint32' }],
stateMutability: 'view',
},
{
type: 'function',
inputs: [],
@ -2073,20 +2059,6 @@ export const dataHavenServiceManagerAbi = [
outputs: [{ name: '', internalType: 'uint32', type: 'uint32' }],
stateMutability: 'view',
},
{
type: 'function',
inputs: [{ name: 'bsp', internalType: 'address', type: 'address' }],
name: 'addBspToAllowlist',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [{ name: 'msp', internalType: 'address', type: 'address' }],
name: 'addMspToAllowlist',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [{ name: 'admin', internalType: 'address', type: 'address' }],
@ -2094,32 +2066,6 @@ export const dataHavenServiceManagerAbi = [
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [
{
name: '_strategies',
internalType: 'contract IStrategy[]',
type: 'address[]',
},
],
name: 'addStrategiesToBspsSupportedStrategies',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [
{
name: '_strategies',
internalType: 'contract IStrategy[]',
type: 'address[]',
},
],
name: 'addStrategiesToMspsSupportedStrategies',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [
@ -2161,22 +2107,6 @@ export const dataHavenServiceManagerAbi = [
outputs: [{ name: '', internalType: 'address', type: 'address' }],
stateMutability: 'view',
},
{
type: 'function',
inputs: [{ name: '', internalType: 'address', type: 'address' }],
name: 'bspsAllowlist',
outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
stateMutability: 'view',
},
{
type: 'function',
inputs: [],
name: 'bspsSupportedStrategies',
outputs: [
{ name: '', internalType: 'contract IStrategy[]', type: 'address[]' },
],
stateMutability: 'view',
},
{
type: 'function',
inputs: [],
@ -2390,16 +2320,6 @@ export const dataHavenServiceManagerAbi = [
internalType: 'contract IStrategy[]',
type: 'address[]',
},
{
name: 'bspsStrategies',
internalType: 'contract IStrategy[]',
type: 'address[]',
},
{
name: 'mspsStrategies',
internalType: 'contract IStrategy[]',
type: 'address[]',
},
{
name: '_snowbridgeGatewayAddress',
internalType: 'address',
@ -2410,22 +2330,6 @@ export const dataHavenServiceManagerAbi = [
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [{ name: '', internalType: 'address', type: 'address' }],
name: 'mspsAllowlist',
outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
stateMutability: 'view',
},
{
type: 'function',
inputs: [],
name: 'mspsSupportedStrategies',
outputs: [
{ name: '', internalType: 'contract IStrategy[]', type: 'address[]' },
],
stateMutability: 'view',
},
{
type: 'function',
inputs: [{ name: '', internalType: 'uint32', type: 'uint32' }],
@ -2516,20 +2420,6 @@ export const dataHavenServiceManagerAbi = [
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [{ name: 'bsp', internalType: 'address', type: 'address' }],
name: 'removeBspFromAllowlist',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [{ name: 'msp', internalType: 'address', type: 'address' }],
name: 'removeMspFromAllowlist',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [
@ -2539,32 +2429,6 @@ export const dataHavenServiceManagerAbi = [
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [
{
name: '_strategies',
internalType: 'contract IStrategy[]',
type: 'address[]',
},
],
name: 'removeStrategiesFromBspsSupportedStrategies',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [
{
name: '_strategies',
internalType: 'contract IStrategy[]',
type: 'address[]',
},
],
name: 'removeStrategiesFromMspsSupportedStrategies',
outputs: [],
stateMutability: 'nonpayable',
},
{
type: 'function',
inputs: [
@ -2760,22 +2624,6 @@ export const dataHavenServiceManagerAbi = [
],
stateMutability: 'view',
},
{
type: 'event',
anonymous: false,
inputs: [
{ name: 'bsp', internalType: 'address', type: 'address', indexed: true },
],
name: 'BspAddedToAllowlist',
},
{
type: 'event',
anonymous: false,
inputs: [
{ name: 'bsp', internalType: 'address', type: 'address', indexed: true },
],
name: 'BspRemovedFromAllowlist',
},
{
type: 'event',
anonymous: false,
@ -2784,22 +2632,6 @@ export const dataHavenServiceManagerAbi = [
],
name: 'Initialized',
},
{
type: 'event',
anonymous: false,
inputs: [
{ name: 'msp', internalType: 'address', type: 'address', indexed: true },
],
name: 'MspAddedToAllowlist',
},
{
type: 'event',
anonymous: false,
inputs: [
{ name: 'msp', internalType: 'address', type: 'address', indexed: true },
],
name: 'MspRemovedFromAllowlist',
},
{
type: 'event',
anonymous: false,
@ -11594,15 +11426,6 @@ export const readDataHavenServiceManager = /*#__PURE__*/ createReadContract({
abi: dataHavenServiceManagerAbi,
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"BSPS_SET_ID"`
*/
export const readDataHavenServiceManagerBspsSetId =
/*#__PURE__*/ createReadContract({
abi: dataHavenServiceManagerAbi,
functionName: 'BSPS_SET_ID',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"DATAHAVEN_AVS_METADATA"`
*/
@ -11612,15 +11435,6 @@ export const readDataHavenServiceManagerDatahavenAvsMetadata =
functionName: 'DATAHAVEN_AVS_METADATA',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"MSPS_SET_ID"`
*/
export const readDataHavenServiceManagerMspsSetId =
/*#__PURE__*/ createReadContract({
abi: dataHavenServiceManagerAbi,
functionName: 'MSPS_SET_ID',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"VALIDATORS_SET_ID"`
*/
@ -11638,24 +11452,6 @@ export const readDataHavenServiceManagerAvs = /*#__PURE__*/ createReadContract({
functionName: 'avs',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"bspsAllowlist"`
*/
export const readDataHavenServiceManagerBspsAllowlist =
/*#__PURE__*/ createReadContract({
abi: dataHavenServiceManagerAbi,
functionName: 'bspsAllowlist',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"bspsSupportedStrategies"`
*/
export const readDataHavenServiceManagerBspsSupportedStrategies =
/*#__PURE__*/ createReadContract({
abi: dataHavenServiceManagerAbi,
functionName: 'bspsSupportedStrategies',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"buildNewValidatorSetMessage"`
*/
@ -11683,24 +11479,6 @@ export const readDataHavenServiceManagerGetRestakeableStrategies =
functionName: 'getRestakeableStrategies',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"mspsAllowlist"`
*/
export const readDataHavenServiceManagerMspsAllowlist =
/*#__PURE__*/ createReadContract({
abi: dataHavenServiceManagerAbi,
functionName: 'mspsAllowlist',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"mspsSupportedStrategies"`
*/
export const readDataHavenServiceManagerMspsSupportedStrategies =
/*#__PURE__*/ createReadContract({
abi: dataHavenServiceManagerAbi,
functionName: 'mspsSupportedStrategies',
})
/**
* Wraps __{@link readContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"operatorSetToRewardsRegistry"`
*/
@ -11780,24 +11558,6 @@ export const writeDataHavenServiceManager = /*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addBspToAllowlist"`
*/
export const writeDataHavenServiceManagerAddBspToAllowlist =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addBspToAllowlist',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addMspToAllowlist"`
*/
export const writeDataHavenServiceManagerAddMspToAllowlist =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addMspToAllowlist',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addPendingAdmin"`
*/
@ -11807,24 +11567,6 @@ export const writeDataHavenServiceManagerAddPendingAdmin =
functionName: 'addPendingAdmin',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addStrategiesToBspsSupportedStrategies"`
*/
export const writeDataHavenServiceManagerAddStrategiesToBspsSupportedStrategies =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addStrategiesToBspsSupportedStrategies',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addStrategiesToMspsSupportedStrategies"`
*/
export const writeDataHavenServiceManagerAddStrategiesToMspsSupportedStrategies =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addStrategiesToMspsSupportedStrategies',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addStrategiesToOperatorSet"`
*/
@ -11996,24 +11738,6 @@ export const writeDataHavenServiceManagerRemoveAppointee =
functionName: 'removeAppointee',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeBspFromAllowlist"`
*/
export const writeDataHavenServiceManagerRemoveBspFromAllowlist =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeBspFromAllowlist',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeMspFromAllowlist"`
*/
export const writeDataHavenServiceManagerRemoveMspFromAllowlist =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeMspFromAllowlist',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removePendingAdmin"`
*/
@ -12023,24 +11747,6 @@ export const writeDataHavenServiceManagerRemovePendingAdmin =
functionName: 'removePendingAdmin',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeStrategiesFromBspsSupportedStrategies"`
*/
export const writeDataHavenServiceManagerRemoveStrategiesFromBspsSupportedStrategies =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeStrategiesFromBspsSupportedStrategies',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeStrategiesFromMspsSupportedStrategies"`
*/
export const writeDataHavenServiceManagerRemoveStrategiesFromMspsSupportedStrategies =
/*#__PURE__*/ createWriteContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeStrategiesFromMspsSupportedStrategies',
})
/**
* Wraps __{@link writeContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeStrategiesFromOperatorSet"`
*/
@ -12182,24 +11888,6 @@ export const writeDataHavenServiceManagerUpdateSolochainAddressForValidator =
export const simulateDataHavenServiceManager =
/*#__PURE__*/ createSimulateContract({ abi: dataHavenServiceManagerAbi })
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addBspToAllowlist"`
*/
export const simulateDataHavenServiceManagerAddBspToAllowlist =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addBspToAllowlist',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addMspToAllowlist"`
*/
export const simulateDataHavenServiceManagerAddMspToAllowlist =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addMspToAllowlist',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addPendingAdmin"`
*/
@ -12209,24 +11897,6 @@ export const simulateDataHavenServiceManagerAddPendingAdmin =
functionName: 'addPendingAdmin',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addStrategiesToBspsSupportedStrategies"`
*/
export const simulateDataHavenServiceManagerAddStrategiesToBspsSupportedStrategies =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addStrategiesToBspsSupportedStrategies',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addStrategiesToMspsSupportedStrategies"`
*/
export const simulateDataHavenServiceManagerAddStrategiesToMspsSupportedStrategies =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'addStrategiesToMspsSupportedStrategies',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"addStrategiesToOperatorSet"`
*/
@ -12398,24 +12068,6 @@ export const simulateDataHavenServiceManagerRemoveAppointee =
functionName: 'removeAppointee',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeBspFromAllowlist"`
*/
export const simulateDataHavenServiceManagerRemoveBspFromAllowlist =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeBspFromAllowlist',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeMspFromAllowlist"`
*/
export const simulateDataHavenServiceManagerRemoveMspFromAllowlist =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeMspFromAllowlist',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removePendingAdmin"`
*/
@ -12425,24 +12077,6 @@ export const simulateDataHavenServiceManagerRemovePendingAdmin =
functionName: 'removePendingAdmin',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeStrategiesFromBspsSupportedStrategies"`
*/
export const simulateDataHavenServiceManagerRemoveStrategiesFromBspsSupportedStrategies =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeStrategiesFromBspsSupportedStrategies',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeStrategiesFromMspsSupportedStrategies"`
*/
export const simulateDataHavenServiceManagerRemoveStrategiesFromMspsSupportedStrategies =
/*#__PURE__*/ createSimulateContract({
abi: dataHavenServiceManagerAbi,
functionName: 'removeStrategiesFromMspsSupportedStrategies',
})
/**
* Wraps __{@link simulateContract}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `functionName` set to `"removeStrategiesFromOperatorSet"`
*/
@ -12584,24 +12218,6 @@ export const simulateDataHavenServiceManagerUpdateSolochainAddressForValidator =
export const watchDataHavenServiceManagerEvent =
/*#__PURE__*/ createWatchContractEvent({ abi: dataHavenServiceManagerAbi })
/**
* Wraps __{@link watchContractEvent}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `eventName` set to `"BspAddedToAllowlist"`
*/
export const watchDataHavenServiceManagerBspAddedToAllowlistEvent =
/*#__PURE__*/ createWatchContractEvent({
abi: dataHavenServiceManagerAbi,
eventName: 'BspAddedToAllowlist',
})
/**
* Wraps __{@link watchContractEvent}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `eventName` set to `"BspRemovedFromAllowlist"`
*/
export const watchDataHavenServiceManagerBspRemovedFromAllowlistEvent =
/*#__PURE__*/ createWatchContractEvent({
abi: dataHavenServiceManagerAbi,
eventName: 'BspRemovedFromAllowlist',
})
/**
* Wraps __{@link watchContractEvent}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `eventName` set to `"Initialized"`
*/
@ -12611,24 +12227,6 @@ export const watchDataHavenServiceManagerInitializedEvent =
eventName: 'Initialized',
})
/**
* Wraps __{@link watchContractEvent}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `eventName` set to `"MspAddedToAllowlist"`
*/
export const watchDataHavenServiceManagerMspAddedToAllowlistEvent =
/*#__PURE__*/ createWatchContractEvent({
abi: dataHavenServiceManagerAbi,
eventName: 'MspAddedToAllowlist',
})
/**
* Wraps __{@link watchContractEvent}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `eventName` set to `"MspRemovedFromAllowlist"`
*/
export const watchDataHavenServiceManagerMspRemovedFromAllowlistEvent =
/*#__PURE__*/ createWatchContractEvent({
abi: dataHavenServiceManagerAbi,
eventName: 'MspRemovedFromAllowlist',
})
/**
* Wraps __{@link watchContractEvent}__ with `abi` set to __{@link dataHavenServiceManagerAbi}__ and `eventName` set to `"OperatorDeregistered"`
*/