Skip to content

Commit fee577c

Browse files
committed
latest everything up until addTrigger call (panic)
1 parent deea58a commit fee577c

File tree

2 files changed

+21
-38
lines changed

2 files changed

+21
-38
lines changed

README.md

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,11 @@ make start-all
7777
### Upload your WAVS Service Manager
7878

7979
```bash
80+
# Deploy service-manager
81+
sudo chmod 0666 .docker/cli/deployments.json
82+
wavs-cli deploy-eigen-service-manager --data ./.docker/cli
83+
export SERVICE_MANAGER=`jq -r '.eigen_service_managers.local | .[-1]' .docker/cli/deployments.json`
84+
8085
# Deploy
8186
export FOUNDRY_ANVIL_PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
8287
forge script ./script/WavsSubmit.s.sol --rpc-url http://localhost:8545 --broadcast
@@ -86,18 +91,6 @@ export SERVICE_HANDLER_ADDR=`jq -r '.service_handler' "./.docker/cli/script_depl
8691
echo "Service Handler Addr: $SERVICE_HANDLER_ADDR"
8792

8893
export TRIGGER_ADDR=`jq -r '.trigger' "./.docker/cli/script_deploy.json"`; echo "Trigger Addr: $TRIGGER_ADDR"
89-
90-
# add read-write access
91-
sudo chmod 0666 .docker/cli/deployments.json
92-
93-
wavs-cli deploy-eigen-service-manager --data ./.docker/cli --service-handler ${SERVICE_HANDLER_ADDR}
94-
export SERVICE_MANAGER=0x0e801d84fa97b50751dbf25036d067dcf18858bf
95-
96-
# Set the service manager in the service handler
97-
# - handleAddPayload can only be called by onlyServiceManager
98-
# - add-task requires to getServiceManager() from the contract to deploy
99-
cast send ${SERVICE_HANDLER_ADDR} "setServiceManager(address)" ${SERVICE_MANAGER} --rpc-url http://localhost:8545 --private-key $FOUNDRY_ANVIL_PRIVATE_KEY
100-
# cast call ${SERVICE_HANDLER_ADDR} "getServiceManager()(address)" --rpc-url http://localhost:8545
10194
```
10295

10396
### Build WASI components
@@ -123,12 +116,13 @@ wavs-cli deploy-service --log-level=error --quiet-results=false --data ./.docker
123116
--trigger eth-contract-event \
124117
--trigger-address ${TRIGGER_ADDR} \
125118
--submit-address ${SERVICE_MANAGER} \
126-
--service-config '{"fuelLimit":100000000,"maxGas":5000000,"hostEnvs":["WAVS_ENV_OPEN_WEATHER_API_KEY"],"kv":[],"workflowId":"default","componentId":"default"}'
119+
--service-config '{"fuel_limit":100000000,"max_gas":5000000,"host_envs":["WAVS_ENV_OPEN_WEATHER_API_KEY"],"kv":[],"workflow_id":"default","component_id":"default"}'
127120

128121
SERVICE_ID=`jq -r '.services | to_entries[-1].value.id' .docker/cli/deployments.json`; echo "Service ID: $SERVICE_ID"
129122

130123
# Submit AVS request -> chain
131-
wavs-cli add-task --input "Nashville,TN" --data ./.docker/cli --service-id ${SERVICE_ID}
124+
# wavs-cli add-task --input "Nashville,TN" --data ./.docker/cli --service-id ${SERVICE_ID}
125+
cast send ${TRIGGER_ADDR} "addTrigger(bytes)" `cast format-bytes32-string Nashville,TN` --rpc-url http://localhost:8545 --private-key $FOUNDRY_ANVIL_PRIVATE_KEY
132126

133127
# Grab data from the contract directly
134128
hex_bytes=$(cast decode-abi "getData(uint64)(bytes)" `cast call ${SERVICE_HANDLER_ADDR} "getData(uint64)" 1`)

script/WavsSubmit.s.sol

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
// SPDX-License-Identifier: MIT
22
pragma solidity ^0.8.13;
33

4-
import {WavsSubmit} from "../src/WavsSubmit.sol";
4+
import {SimpleSubmit} from "../src/WavsSubmit.sol";
55
import {SimpleTrigger} from "../src/WavsTrigger.sol";
6+
import {LayerServiceManager} from "../src/LayerServiceManager.sol";
67

78
import "forge-std/Script.sol";
89
import {stdJson} from "forge-std/StdJson.sol";
@@ -29,35 +30,18 @@ contract WavsSubmitScript is Script {
2930
function run() public {
3031
vm.startBroadcast(privateKey);
3132

32-
EigenContracts memory eigen = loadEigenContractsFromFS();
33-
34-
ECDSAStakeRegistry ecdsa_registry = new ECDSAStakeRegistry(IDelegationManager(eigen.delegation_manager));
35-
36-
console.log("delegation_manager:", eigen.delegation_manager);
37-
console.log("rewards_coordinator:", eigen.rewards_coordinator);
38-
console.log("avs_directory:", eigen.avs_directory);
39-
40-
WavsSubmit submit = new WavsSubmit(
41-
// eigen.avs_directory, address(ecdsa_registry), eigen.rewards_coordinator, eigen.delegation_manager
42-
);
33+
address[] memory service_managers = loadServiceManagersFromFS();
34+
LayerServiceManager service_manager = LayerServiceManager(service_managers[service_managers.length - 1]);
4335

36+
SimpleSubmit submit = new SimpleSubmit(service_manager);
4437
SimpleTrigger trigger = new SimpleTrigger();
4538

46-
IStrategy mockStrategy = IStrategy(address(0x1234));
47-
Quorum memory quorum = Quorum({strategies: new StrategyParams[](1)});
48-
quorum.strategies[0] = StrategyParams({strategy: mockStrategy, multiplier: 10_000});
49-
ecdsa_registry.initialize(address(submit), 0, quorum);
50-
5139
vm.stopBroadcast();
5240

53-
console.log("ecdsa_registry:", address(ecdsa_registry));
54-
console.log("service_handler:", address(submit));
55-
console.log("trigger:", address(trigger));
56-
5741
string memory json = "json";
5842
json.serialize("service_handler", Strings.toHexString(address(submit)));
5943
json.serialize("trigger", Strings.toHexString(address(trigger)));
60-
string memory finalJson = json.serialize("ecdsa_registry", Strings.toHexString(address(ecdsa_registry)));
44+
string memory finalJson = json.serialize("service_manager", Strings.toHexString(address(service_manager)));
6145
vm.writeFile(script_output_path, finalJson);
6246
}
6347

@@ -67,11 +51,16 @@ contract WavsSubmitScript is Script {
6751
address rc = address(uint160(bytes20(json.readBytes(".eigen_core.local.rewards_coordinator"))));
6852
address avs = address(uint160(bytes20(json.readBytes(".eigen_core.local.avs_directory"))));
6953

70-
EigenContracts memory fixture =
71-
EigenContracts({delegation_manager: dm, rewards_coordinator: rc, avs_directory: avs});
54+
EigenContracts memory fixture = EigenContracts({delegation_manager: dm, rewards_coordinator: rc, avs_directory: avs});
7255

7356
return fixture;
7457
}
58+
59+
function loadServiceManagersFromFS() public view returns (address[] memory) {
60+
string memory json = vm.readFile(deployments_path);
61+
address[] memory service_managers = json.readAddressArray(".eigen_service_managers.local");
62+
return service_managers;
63+
}
7564
}
7665

7766
struct EigenContracts {

0 commit comments

Comments
 (0)