From cf16bb3c5bb450277f3d2054c2d1d5cef9b519d7 Mon Sep 17 00:00:00 2001 From: zorzal Date: Mon, 18 Nov 2024 12:43:06 -0500 Subject: [PATCH 1/3] feat: deploy EBOAccessModule in Deploy script --- script/Deploy.s.sol | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/script/Deploy.s.sol b/script/Deploy.s.sol index a6ea82f..c38438d 100644 --- a/script/Deploy.s.sol +++ b/script/Deploy.s.sol @@ -19,11 +19,13 @@ import { IBondEscalationAccounting } from '@defi-wonderland/prophet-modules/solidity/interfaces/extensions/IBondEscalationAccounting.sol'; import {IERC20} from '@openzeppelin/contracts/interfaces/IERC20.sol'; -import {IEpochManager} from 'interfaces/external/IEpochManager.sol'; -import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol'; import {Arbitrable, IArbitrable} from 'contracts/Arbitrable.sol'; import {CouncilArbitrator, ICouncilArbitrator} from 'contracts/CouncilArbitrator.sol'; +import {IEpochManager} from 'interfaces/external/IEpochManager.sol'; +import {IHorizonStaking} from 'interfaces/external/IHorizonStaking.sol'; + +import {EBOAccessModule, IEBOAccessModule} from 'contracts/EBOAccessModule.sol'; import {EBOFinalityModule, IEBOFinalityModule} from 'contracts/EBOFinalityModule.sol'; import {EBORequestCreator, IEBORequestCreator} from 'contracts/EBORequestCreator.sol'; import {EBORequestModule, IEBORequestModule} from 'contracts/EBORequestModule.sol'; @@ -54,6 +56,7 @@ contract Deploy is Script { IBondEscalationModule public bondEscalationModule; IArbitratorModule public arbitratorModule; IEBOFinalityModule public eboFinalityModule; + IEBOAccessModule public eboAccessModule; // Extensions IHorizonAccountingExtension public horizonAccountingExtension; @@ -155,6 +158,10 @@ contract Deploy is Script { councilArbitrator = new CouncilArbitrator(arbitratorModule, arbitrable); console.log('`CouncilArbitrator` deployed at:', address(councilArbitrator)); + // Deploy `EBOAccessModule` + eboAccessModule = new EBOAccessModule(oracle, arbitrable, horizonAccountingExtension); + console.log('`EBOAccessModule` deployed at:', address(eboAccessModule)); + // Deploy `EBORequestCreator` IOracle.Request memory _requestData = _instantiateRequestData(); eboRequestCreator = new EBORequestCreator(oracle, epochManager, arbitrable, _requestData); @@ -173,8 +180,7 @@ contract Deploy is Script { // Set requester and modules _requestData.requester = address(eboRequestCreator); - // todo : replace with HorizonOperatorAccessModule - _requestData.accessModule = address(0); + _requestData.accessModule = address(eboAccessModule); _requestData.requestModule = address(eboRequestModule); _requestData.responseModule = address(bondedResponseModule); _requestData.disputeModule = address(bondEscalationModule); From f272559a0b225e87ea8902f6c763a770074499f2 Mon Sep 17 00:00:00 2001 From: zorzal Date: Mon, 18 Nov 2024 12:43:55 -0500 Subject: [PATCH 2/3] test: add access module to instantiated request data --- test/unit/Deploy.t.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/test/unit/Deploy.t.sol b/test/unit/Deploy.t.sol index 0d807df..4cde5cb 100644 --- a/test/unit/Deploy.t.sol +++ b/test/unit/Deploy.t.sol @@ -181,6 +181,7 @@ contract UnitDeploy is Test { _requestData.nonce = 0; _requestData.requester = address(deploy.eboRequestCreator()); + _requestData.accessModule = address(deploy.eboAccessModule()); _requestData.requestModule = address(deploy.eboRequestModule()); _requestData.responseModule = address(deploy.bondedResponseModule()); _requestData.disputeModule = address(deploy.bondEscalationModule()); From 75bd08e6db5dbfc18e10c23d579dbfaf94df5fd6 Mon Sep 17 00:00:00 2001 From: zorzal Date: Mon, 18 Nov 2024 12:45:10 -0500 Subject: [PATCH 3/3] feat: update deployment account to precompute the correct address --- script/Deploy.s.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/Deploy.s.sol b/script/Deploy.s.sol index c38438d..c8aaa6f 100644 --- a/script/Deploy.s.sol +++ b/script/Deploy.s.sol @@ -44,7 +44,7 @@ import { import 'forge-std/Script.sol'; contract Deploy is Script { - uint256 public constant DEPLOYMENT_COUNT = 10; + uint256 public constant DEPLOYMENT_COUNT = 11; uint256 public constant OFFSET_EBO_REQUEST_CREATOR = DEPLOYMENT_COUNT - 1; // Oracle