From 9b44d0fd4984644cefb16309aad82eaf7b686cc0 Mon Sep 17 00:00:00 2001 From: afkbyte Date: Wed, 15 May 2024 14:58:28 -0700 Subject: [PATCH] new stub with v2.0.0 of eigen npm package, alias OZ for expected path --- deploy/SequencerInbox.js | 6 +- deploy/SequencerInboxStubCreator.js | 10 ++ package.json | 1 + src/mocks/EigenDAServiceManagerStub.sol | 140 +++++------------------- yarn.lock | 5 + 5 files changed, 51 insertions(+), 111 deletions(-) diff --git a/deploy/SequencerInbox.js b/deploy/SequencerInbox.js index d90135a9..f9cca5a3 100644 --- a/deploy/SequencerInbox.js +++ b/deploy/SequencerInbox.js @@ -6,7 +6,11 @@ module.exports = async hre => { const blobBasefeeReader = await ethers.getContract('BlobBasefeeReader') const dataHashReader = await ethers.getContract('DataHashReader') - await deploy('SequencerInbox', { from: deployer, args: [117964] }) + const EigenDARollupUtils = await ethers.getContract('EigenDARollupUtils') + + + + await deploy('SequencerInbox', { from: deployer, args: [117964], libraries: { EigenDARollupUtils: EigenDARollupUtils.address } }) } module.exports.tags = ['SequencerInbox'] diff --git a/deploy/SequencerInboxStubCreator.js b/deploy/SequencerInboxStubCreator.js index 73c19c07..4fe29ca0 100644 --- a/deploy/SequencerInboxStubCreator.js +++ b/deploy/SequencerInboxStubCreator.js @@ -18,6 +18,16 @@ module.exports = async hre => { const eigenDAServiceManager = await ethers.getContract('EigenDAServiceManagerStub') +// constructor( +// IBridge bridge_, +// address sequencer_, +// ISequencerInbox.MaxTimeVariation memory maxTimeVariation_, +// uint256 maxDataSize_, +// IReader4844 reader4844_, +// IEigenDAServiceManager eigenDAServiceManager_, +// bool isUsingFeeToken_ +// ) + await deploy('SequencerInboxStub', { from: deployer, args: [ diff --git a/package.json b/package.json index 3ac5b6b4..075e2d99 100644 --- a/package.json +++ b/package.json @@ -44,6 +44,7 @@ "dependencies": { "@eigenda/eigenda-utils": "2.0.0", "@offchainlabs/upgrade-executor": "1.1.0-beta.0", + "@openzeppelin-upgrades/contracts": "npm:@openzeppelin/contracts-upgradeable@4.7", "@openzeppelin/contracts": "4.7", "@openzeppelin/contracts-upgradeable": "4.7", "patch-package": "^6.4.7" diff --git a/src/mocks/EigenDAServiceManagerStub.sol b/src/mocks/EigenDAServiceManagerStub.sol index 60ee3aad..222c188d 100644 --- a/src/mocks/EigenDAServiceManagerStub.sol +++ b/src/mocks/EigenDAServiceManagerStub.sol @@ -1,116 +1,36 @@ // SPDX-License-Identifier: UNLICENSED -import {IEigenDAServiceManager} from "@eigenda/eigenda-utils/interfaces/IEigenDAServiceManager.sol"; -import {BN254} from "@eigenda/eigenda-utils/libraries/BN254.sol"; -import {IBLSSignatureChecker} from "@eigenda/eigenda-utils/interfaces/IBLSSignatureChecker.sol"; +pragma solidity ^0.8.0; + +import {EigenDAServiceManager} from "@eigenda/eigenda-utils/contracts/eigenda/EigenDAServiceManager.sol"; +import {IAVSDirectory} from "@eigenda/eigenda-utils/interfaces/IAVSDirectory.sol"; +import {IPaymentCoordinator} from "@eigenda/eigenda-utils/interfaces/IPaymentCoordinator.sol"; import {IRegistryCoordinator} from "@eigenda/eigenda-utils/interfaces/IRegistryCoordinator.sol"; import {IStakeRegistry} from "@eigenda/eigenda-utils/interfaces/IStakeRegistry.sol"; -import {IBLSApkRegistry} from "@eigenda/eigenda-utils/interfaces/IBLSApkRegistry.sol"; -import {IDelegationManager} from "@eigenda/eigenda-utils/interfaces/IDelegationManager.sol"; -import {IPaymentCoordinator} from "@eigenda/eigenda-utils/interfaces/IPaymentCoordinator.sol"; -import {ISignatureUtils} from "@eigenda/eigenda-utils/interfaces/ISignatureUtils.sol"; - -contract EigenDAServiceManagerStub is IEigenDAServiceManager, IBLSSignatureChecker { - function confirmBatch( - BatchHeader calldata batchHeader, - NonSignerStakesAndSignature memory nonSignerStakesAndSignature - ) external override pure { - revert("NOT_IMPLEMENTED"); - } - - function setBatchConfirmer(address _batchConfirmer) external override pure { - revert("NOT_IMPLEMENTED"); - } - - function taskNumber() external view override returns (uint32) { - revert("NOT_IMPLEMENTED"); - } - - function latestServeUntilBlock(uint32 referenceBlockNumber) - external - view - override - returns (uint32) - { - return referenceBlockNumber + 100; - } - - function checkSignatures( - bytes32 msgHash, - bytes calldata quorumNumbers, - uint32 referenceBlockNumber, - NonSignerStakesAndSignature memory nonSignerStakesAndSignature - ) external view override returns (QuorumStakeTotals memory, bytes32) { - revert("NOT_IMPLEMENTED"); - } - - function registryCoordinator() external view override returns (IRegistryCoordinator) { - revert("NOT_IMPLEMENTED"); - } - - function stakeRegistry() external view override returns (IStakeRegistry) { - revert("NOT_IMPLEMENTED"); - } - - function blsApkRegistry() external view override returns (IBLSApkRegistry) { - revert("NOT_IMPLEMENTED"); - } - - function delegation() external view override returns (IDelegationManager) { - revert("NOT_IMPLEMENTED"); - } - - function BLOCK_STALE_MEASURE() external view override returns (uint32) { - revert("NOT_IMPLEMENTED"); - } - - function quorumAdversaryThresholdPercentages() external view override returns (bytes memory) { - revert("NOT_IMPLEMENTED"); - } - - function quorumConfirmationThresholdPercentages() - external - view - override - returns (bytes memory) - { - revert("NOT_IMPLEMENTED"); - } - - function quorumNumbersRequired() external view override returns (bytes memory) { - revert("NOT_IMPLEMENTED"); - } - - // Implement missing functions from IServiceManagerUI and IEigenDAServiceManager - function avsDirectory() external view override returns (address) { - revert("NOT_IMPLEMENTED"); - } - - function batchIdToBatchMetadataHash(uint32 batchId) external view override returns(bytes32) { - revert("NOT_IMPLEMENTED"); - } - - function deregisterOperatorFromAVS(address operator) external override pure { - revert("NOT_IMPLEMENTED"); - } - - function getOperatorRestakedStrategies(address operator) external view override returns (address[] memory) { - revert("NOT_IMPLEMENTED"); - } - - function getRestakeableStrategies() external view override returns (address[] memory) { - revert("NOT_IMPLEMENTED"); - } - - function payForRange(IPaymentCoordinator.RangePayment[] calldata rangePayments) external override pure { - revert("NOT_IMPLEMENTED"); - } - - function registerOperatorToAVS(address operator, ISignatureUtils.SignatureWithSaltAndExpiry memory operatorSignature) external { - revert("NOT_IMPLEMENTED"); - } - - function updateAVSMetadataURI(string memory _metadataURI) external override pure { - revert("NOT_IMPLEMENTED"); +import {IPauserRegistry} from "@eigenda/eigenda-utils/interfaces/IPauserRegistry.sol"; + +contract EigenDAServiceManagerStub is EigenDAServiceManager { + + constructor( + IAVSDirectory __avsDirectory, + IPaymentCoordinator __paymentCoordinator, + IRegistryCoordinator __registryCoordinator, + IStakeRegistry __stakeRegistry, + IPauserRegistry _pauserRegistry, + uint256 _initialPausedStatus, + address _initialOwner, + address[] memory _batchConfirmers + ) EigenDAServiceManager( + __avsDirectory, + __paymentCoordinator, + __registryCoordinator, + __stakeRegistry + ) { + initialize( + _pauserRegistry, + _initialPausedStatus, + _initialOwner, + _batchConfirmers + ); } } diff --git a/yarn.lock b/yarn.lock index a2eaf7dc..2fc4be77 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1280,6 +1280,11 @@ "@openzeppelin/contracts" "4.7.3" "@openzeppelin/contracts-upgradeable" "4.7.3" +"@openzeppelin-upgrades/contracts@npm:@openzeppelin/contracts-upgradeable@4.7": + version "4.7.3" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.7.3.tgz#f1d606e2827d409053f3e908ba4eb8adb1dd6995" + integrity sha512-+wuegAMaLcZnLCJIvrVUDzA9z/Wp93f0Dla/4jJvIhijRrPabjQbZe6fWiECLaJyfn5ci9fqf9vTw3xpQOad2A== + "@openzeppelin/contracts-upgradeable@4.7", "@openzeppelin/contracts-upgradeable@4.7.3": version "4.7.3" resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-4.7.3.tgz#f1d606e2827d409053f3e908ba4eb8adb1dd6995"