Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

m2-mainnet Contracts Update #158

Merged
merged 41 commits into from
Feb 2, 2024
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
ab4cd8f
start
0x0aa0 Nov 22, 2023
c94e852
temp comment scripts
0x0aa0 Nov 28, 2023
0f1a5ca
sm interface
0x0aa0 Jan 5, 2024
e150030
batch confirmer permission
0x0aa0 Jan 5, 2024
69a8ae3
mock rollup reorg
0x0aa0 Jan 8, 2024
3ce4a72
optimistic confirmation
0x0aa0 Jan 10, 2024
6bb3fa7
use ServiceManagerBase
0x0aa0 Jan 10, 2024
c933aa9
update DASM interface
0x0aa0 Jan 10, 2024
f64bf6f
nit
0x0aa0 Jan 10, 2024
e45bb7c
optimistic confirmation
0x0aa0 Jan 10, 2024
6f2788e
Merge branch 'nitro' of https://github.com/Layr-Labs/eigenda into nitro
0x0aa0 Jan 10, 2024
63d0351
nsss calldata
0x0aa0 Jan 12, 2024
5a3c1e8
Merge branch 'master' into m2-mainnet-contracts
0x0aa0 Jan 12, 2024
b105c4a
rm fee
0x0aa0 Jan 12, 2024
41c0064
Updated assignments commitments rebase (#176)
mooselumph Jan 13, 2024
112c739
fix rollup
0x0aa0 Jan 14, 2024
44de9d8
rm op
0x0aa0 Jan 14, 2024
aa8620b
fix scripts
0x0aa0 Jan 14, 2024
7e8d345
fin
0x0aa0 Jan 14, 2024
3c38f51
Update transactor for M2 mainnet contracts (#194)
mooselumph Jan 25, 2024
8ccb524
Update deployment code for M2 mainnet contracts (#193)
mooselumph Jan 25, 2024
ca28ca1
Update indexer M2 mainnet contracts (#195)
mooselumph Jan 25, 2024
aa7b912
Component updates for M2 mainnet contracts (#196)
mooselumph Jan 25, 2024
165e760
Plumb the kickparams for register operator with churn call (#212)
jianoaix Jan 26, 2024
d06dec1
fix(breaking): add storage gap to da service manager storage (#215)
stevennevins Jan 29, 2024
0f83d13
Update subgraphs for m2 contract changes (#192)
mooselumph Jan 29, 2024
5e911e0
Make Churner work on v2 smart contracts (#213)
jianoaix Jan 30, 2024
8bea4a7
Update contract submodules (#224)
0x0aa0 Jan 31, 2024
d104c9d
Update eigenda batch metadata subgraph (#221)
mooselumph Jan 31, 2024
0efdbf0
Merge master into m2 mainnet contracts (#220)
mooselumph Jan 31, 2024
6916ee0
Merge master
mooselumph Jan 31, 2024
48edabb
Update bindings and protoc
mooselumph Jan 31, 2024
f47fbd0
Merge master again
mooselumph Feb 1, 2024
d703d8f
update eigenlayer-contracts submodule (#229)
0x0aa0 Feb 1, 2024
a31bc9e
update eigenlayer-middleware submodule
0x0aa0 Feb 1, 2024
f534540
Add AVS directory (#227)
mooselumph Feb 1, 2024
d950176
Churner fixes for m2 mainnet contracts (#231)
mooselumph Feb 1, 2024
5966e34
Goerli deploy script (#214)
0x0aa0 Feb 2, 2024
c91f47b
Fix unit tests and lint (#234)
mooselumph Feb 2, 2024
8c7be10
fix: integration script (#235)
0x0aa0 Feb 2, 2024
723c9bb
M2 mainnet contracts fix integ tests (#237)
mooselumph Feb 2, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 0 additions & 9 deletions contracts/foundry.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,6 @@ out = 'out'
libs = ['lib']
fs_permissions = [{ access = "read-write", path = "./"}]

remappings = [
"@eigenlayer-middleware/=lib/eigenlayer-middleware/src/",
"@eigenlayer-core/=lib/eigenlayer-contracts/src/",
"@eigenlayer-scripts/=lib/eigenlayer-contracts/script/",
"@openzeppelin/=lib/openzeppelin-contracts/",
"@openzeppelin-upgrades/=lib/openzeppelin-contracts-upgradeable/",
"forge-std/=lib/forge-std/src/"
]

gas_reports = ["*"]

# A list of ignored solc error codes
Expand Down
2 changes: 1 addition & 1 deletion contracts/lib/eigenlayer-contracts
2 changes: 1 addition & 1 deletion contracts/lib/eigenlayer-middleware
Submodule eigenlayer-middleware updated 88 files
+34 −0 .github/ISSUE_TEMPLATE/bug_report.md
+30 −0 .github/ISSUE_TEMPLATE/design.md
+24 −0 .github/ISSUE_TEMPLATE/feature_request.md
+26 −0 .github/ISSUE_TEMPLATE/test.md
+1 −0 .github/workflows/tests.yml
+1 −0 .gitmodules
+39 −79 README.md
+0 −21 docs/BLSOperatorStateRetriever.md
+0 −36 docs/BLSPubkeyRegistry.md
+0 −27 docs/BLSPublicKeyCompendium.md
+0 −86 docs/BLSRegistryCoordinatorWithIndices.md
+185 −29 docs/BLSSignatureChecker.md
+0 −48 docs/IndexRegistry.md
+0 −15 docs/Middleware-registration-operator-flow.md
+152 −0 docs/README.md
+334 −0 docs/RegistryCoordinator.md
+68 −0 docs/ServiceManagerBase.md
+0 −56 docs/StakeRegistry.md
+4 −4 docs/experimental/AVS-Guide.md
+161 −0 docs/registries/BLSApkRegistry.md
+166 −0 docs/registries/IndexRegistry.md
+339 −0 docs/registries/StakeRegistry.md
+3 −0 foundry.toml
+1 −1 lib/eigenlayer-contracts
+0 −2 script/AVSContractsDeploy.s.sol
+9 −12 script/DeploySharedContracts.s.sol
+284 −0 src/BLSApkRegistry.sol
+40 −0 src/BLSApkRegistryStorage.sol
+0 −213 src/BLSPubkeyRegistry.sol
+0 −34 src/BLSPubkeyRegistryStorage.sol
+0 −91 src/BLSPublicKeyCompendium.sol
+0 −655 src/BLSRegistryCoordinatorWithIndices.sol
+166 −91 src/BLSSignatureChecker.sol
+198 −146 src/IndexRegistry.sol
+11 −14 src/IndexRegistryStorage.sol
+20 −20 src/OperatorStateRetriever.sol
+874 −0 src/RegistryCoordinator.sol
+122 −68 src/ServiceManagerBase.sol
+515 −335 src/StakeRegistry.sol
+31 −9 src/StakeRegistryStorage.sol
+0 −226 src/VoteWeigherBase.sol
+0 −63 src/VoteWeigherBaseStorage.sol
+140 −0 src/interfaces/IBLSApkRegistry.sol
+0 −85 src/interfaces/IBLSPubkeyRegistry.sol
+0 −43 src/interfaces/IBLSPublicKeyCompendium.sol
+0 −70 src/interfaces/IBLSRegistry.sol
+0 −68 src/interfaces/IBLSRegistryCoordinatorWithIndices.sol
+13 −7 src/interfaces/IBLSSignatureChecker.sol
+11 −13 src/interfaces/IIndexRegistry.sol
+0 −155 src/interfaces/IQuorumRegistry.sol
+1 −3 src/interfaces/IRegistry.sol
+76 −20 src/interfaces/IRegistryCoordinator.sol
+38 −11 src/interfaces/IServiceManager.sol
+113 −25 src/interfaces/IStakeRegistry.sol
+0 −97 src/interfaces/IVoteWeigher.sol
+8 −4 src/libraries/BN254.sol
+67 −3 src/libraries/BitmapUtils.sol
+21 −16 test/ffi/BLSPubKeyCompendiumFFI.t.sol
+7 −7 test/ffi/BLSSignatureCheckerFFI.t.sol
+1 −1 test/ffi/util/G2Operations.sol
+21 −0 test/harnesses/BLSApkRegistryHarness.sol
+0 −33 test/harnesses/BLSRegistryCoordinatorWithIndicesHarness.sol
+3 −3 test/harnesses/BitmapUtilsWrapper.sol
+39 −0 test/harnesses/RegistryCoordinatorHarness.t.sol
+44 −49 test/harnesses/StakeRegistryHarness.sol
+188 −0 test/integration/CoreRegistration.t.sol
+0 −44 test/mocks/BLSPublicKeyCompendiumMock.sol
+185 −0 test/mocks/DelegationMock.sol
+0 −39 test/mocks/MiddlewareRegistryMock.sol
+33 −9 test/mocks/RegistryCoordinatorMock.sol
+0 −31 test/mocks/ServiceManagerMock.sol
+83 −29 test/mocks/StakeRegistryMock.sol
+348 −0 test/unit/BLSApkRegistryUnit.t.sol
+0 −254 test/unit/BLSPubkeyRegistryUnit.t.sol
+0 −80 test/unit/BLSPublicKeyCompendiumUnit.t.sol
+5 −9 test/unit/BLSSignatureCheckerUnit.t.sol
+7 −7 test/unit/BitmapUtils.t.sol
+0 −82 test/unit/DelegationManager.tree
+90 −128 test/unit/IndexRegistryUnit.t.sol
+10 −10 test/unit/OperatorStateRetrieverUnit.t.sol
+214 −159 test/unit/RegistryCoordinatorUnit.t.sol
+138 −188 test/unit/StakeRegistryUnit.t.sol
+440 −451 test/unit/VoteWeigherBaseUnit.t.sol
+6 −6 test/utils/BLSMockAVSDeployer.sol
+110 −97 test/utils/MockAVSDeployer.sol
+8 −8 test/utils/Operators.sol
+2 −2 test/utils/Owners.sol
+14 −14 test/utils/ProofParsing.sol
6 changes: 6 additions & 0 deletions contracts/remappings.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
@openzeppelin-upgrades/=lib/openzeppelin-contracts-upgradeable/
@openzeppelin/=lib/openzeppelin-contracts/
eigenlayer-middleware/=lib/eigenlayer-middleware/src/
eigenlayer-core/=lib/eigenlayer-contracts/src/
eigenlayer-scripts/=lib/eigenlayer-contracts/script/
forge-std/=lib/forge-std/src/
30 changes: 14 additions & 16 deletions contracts/script/EigenDADeployer.s.sol
Original file line number Diff line number Diff line change
@@ -1,23 +1,20 @@
// SPDX-License-Identifier: UNLICENSED
// SPDX-License-Identifier: UNLICENSED
/*
pragma solidity ^0.8.9;

import "@eigenlayer-scripts/middleware/DeployOpenEigenLayer.s.sol";

import "@eigenlayer-core/contracts/permissions/PauserRegistry.sol";
import "@eigenlayer-core/test/mocks/EmptyContract.sol";

import "@eigenlayer-middleware/BLSPublicKeyCompendium.sol";
import "@eigenlayer-middleware/BLSRegistryCoordinatorWithIndices.sol";
import "@eigenlayer-middleware/BLSPubkeyRegistry.sol";
import "@eigenlayer-middleware/IndexRegistry.sol";
import "@eigenlayer-middleware/StakeRegistry.sol";
import "@eigenlayer-middleware/BLSOperatorStateRetriever.sol";

import "eigenlayer-scripts/middleware/DeployOpenEigenLayer.s.sol";
import {PauserRegistry} from "eigenlayer-core/contracts/permissions/PauserRegistry.sol";
import {EmptyContract} from "eigenlayer-core/test/mocks/EmptyContract.sol";
import {BLSPublicKeyCompendium} from "eigenlayer-middleware/BLSPublicKeyCompendium.sol";
import {BLSRegistryCoordinatorWithIndices, IBLSRegistryCoordinatorWithIndices} from "eigenlayer-middleware/BLSRegistryCoordinatorWithIndices.sol";
import {BLSPubkeyRegistry, IBLSPubkeyRegistry} from "eigenlayer-middleware/BLSPubkeyRegistry.sol";
import {IndexRegistry, IIndexRegistry} from "eigenlayer-middleware/IndexRegistry.sol";
import {StakeRegistry, IStakeRegistry, IServiceManager} from "eigenlayer-middleware/StakeRegistry.sol";
import {BLSOperatorStateRetriever} from "eigenlayer-middleware/BLSOperatorStateRetriever.sol";
import {EigenDAServiceManager} from "../src/core/EigenDAServiceManager.sol";
import "../src/libraries/EigenDAHasher.sol";
import {EigenDAHasher} from "../src/libraries/EigenDAHasher.sol";

import "forge-std/Test.sol";

import "forge-std/Script.sol";
import "forge-std/StdJson.sol";

Expand Down Expand Up @@ -96,7 +93,7 @@ contract EigenDADeployer is DeployOpenEigenLayer {
/**
* First, deploy upgradeable proxy contracts that **will point** to the implementations. Since the implementation contracts are
* not yet deployed, we give these proxies an empty contract as the initial implementation, to act as if they have no code.
*/
*//*
eigenDAServiceManager = EigenDAServiceManager(
address(new TransparentUpgradeableProxy(address(emptyContract), address(eigenDAProxyAdmin), ""))
);
Expand Down Expand Up @@ -218,3 +215,4 @@ contract EigenDADeployer is DeployOpenEigenLayer {
blsOperatorStateRetriever = new BLSOperatorStateRetriever();
}
}
*/
2 changes: 1 addition & 1 deletion contracts/script/MockRollupDeployer.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
pragma solidity ^0.8.9;

import "forge-std/Script.sol";
import "../test/mocks/MockRollup.sol";
import "../src/rollup/MockRollup.sol";
import {IEigenDAServiceManager} from "../src/interfaces/IEigenDAServiceManager.sol";

contract MockRollupDeployer is Script {
Expand Down
33 changes: 15 additions & 18 deletions contracts/script/SetUpEigenDA.s.sol
Original file line number Diff line number Diff line change
@@ -1,26 +1,22 @@
// SPDX-License-Identifier: UNLICENSED
// SPDX-License-Identifier: UNLICENSED
/*
pragma solidity ^0.8.9;

import "@eigenlayer-scripts/middleware/DeployOpenEigenLayer.s.sol";

import "@eigenlayer-core/contracts/permissions/PauserRegistry.sol";
import "@eigenlayer-core/test/mocks/EmptyContract.sol";

import "@eigenlayer-middleware/BLSPublicKeyCompendium.sol";
import "@eigenlayer-middleware/BLSRegistryCoordinatorWithIndices.sol";
import "@eigenlayer-middleware/BLSPubkeyRegistry.sol";
import "@eigenlayer-middleware/IndexRegistry.sol";
import "@eigenlayer-middleware/StakeRegistry.sol";


import "eigenlayer-scripts/middleware/DeployOpenEigenLayer.s.sol";
import {PauserRegistry} from "eigenlayer-core/contracts/permissions/PauserRegistry.sol";
import {EmptyContract} from "eigenlayer-core/test/mocks/EmptyContract.sol";
import {BLSPublicKeyCompendium} from "eigenlayer-middleware/BLSPublicKeyCompendium.sol";
import {BLSRegistryCoordinatorWithIndices} from "eigenlayer-middleware/BLSRegistryCoordinatorWithIndices.sol";
import {BLSPubkeyRegistry} from "eigenlayer-middleware/BLSPubkeyRegistry.sol";
import {IndexRegistry} from "eigenlayer-middleware/IndexRegistry.sol";
import {IIndexRegistry} from "eigenlayer-middleware/interfaces/IIndexRegistry.sol";
import {StakeRegistry} from "eigenlayer-middleware/StakeRegistry.sol";
import {EigenDAServiceManager} from "../src/core/EigenDAServiceManager.sol";
import "../src/libraries/EigenDAHasher.sol";

import "./EigenDADeployer.s.sol";
import "./EigenLayerUtils.s.sol";
import {EigenDAHasher} from "../src/libraries/EigenDAHasher.sol";
import {EigenDADeployer} from "./EigenDADeployer.s.sol";
import {EigenLayerUtils} from "./EigenLayerUtils.s.sol";

import "forge-std/Test.sol";

import "forge-std/Script.sol";
import "forge-std/StdJson.sol";

Expand Down Expand Up @@ -189,3 +185,4 @@ contract SetupEigenDA is EigenDADeployer, EigenLayerUtils {
vm.writeJson(finalJson, "./script/output/eigenda_deploy_output.json");
}
}
*/
21 changes: 11 additions & 10 deletions contracts/script/m2/M2_Deploy.s.sol
Original file line number Diff line number Diff line change
@@ -1,16 +1,17 @@
// SPDX-License-Identifier: BUSL-1.1
/*
pragma solidity =0.8.12;

import "@eigenlayer-scripts/utils/ExistingDeploymentParser.sol";
import "eigenlayer-scripts/utils/ExistingDeploymentParser.sol";

import "@eigenlayer-middleware/BLSPublicKeyCompendium.sol";
import "@eigenlayer-middleware/BLSRegistryCoordinatorWithIndices.sol";
import "@eigenlayer-middleware/BLSPubkeyRegistry.sol";
import "@eigenlayer-middleware/IndexRegistry.sol";
import "@eigenlayer-middleware/StakeRegistry.sol";
import "@eigenlayer-middleware/BLSOperatorStateRetriever.sol";
import "eigenlayer-middleware/BLSPublicKeyCompendium.sol";
import "eigenlayer-middleware/BLSRegistryCoordinatorWithIndices.sol";
import "eigenlayer-middleware/BLSPubkeyRegistry.sol";
import "eigenlayer-middleware/IndexRegistry.sol";
import "eigenlayer-middleware/StakeRegistry.sol";
import "eigenlayer-middleware/BLSOperatorStateRetriever.sol";

import "@eigenlayer-core/contracts/permissions/PauserRegistry.sol";
import "eigenlayer-core/contracts/permissions/PauserRegistry.sol";

import {EigenDAServiceManager} from "../../src/core/EigenDAServiceManager.sol";

Expand Down Expand Up @@ -336,5 +337,5 @@ contract Deployer_M2 is ExistingDeploymentParser {
string memory finalJson = vm.serializeString(parent_object, permissions, permissions_output);
vm.writeJson(finalJson, outputPath);
}

}
}
*/
6 changes: 3 additions & 3 deletions contracts/src/Imports.sol
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Imports used for compiling for bindings for clients

import "@eigenlayer-middleware/BLSOperatorStateRetriever.sol";
import "@eigenlayer-middleware/BLSPublicKeyCompendium.sol";
import "@eigenlayer-middleware/BLSRegistryCoordinatorWithIndices.sol";
import "eigenlayer-middleware/OperatorStateRetriever.sol";
import "eigenlayer-middleware/BLSApkRegistry.sol";
import "eigenlayer-middleware/RegistryCoordinator.sol";
Loading
Loading