Skip to content

Commit c710fa9

Browse files
authored
Merge pull request #21 from firstbatchxyz/vinh/jokerace_integration
Jokerace/BKRT integration
2 parents 3c0edc8 + 5b720c8 commit c710fa9

7 files changed

+866
-1
lines changed

script/Deploy.s.sol

+9
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,12 @@ contract DeploySwanLottery is Script {
7070
addr = config.deploySwanLottery();
7171
}
7272
}
73+
74+
contract DeploySwanDebate is Script {
75+
HelperConfig public config;
76+
77+
function run() external returns (address addr) {
78+
config = new HelperConfig();
79+
addr = config.deploySwanDebate();
80+
}
81+
}

script/HelperConfig.s.sol

+22
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {SwanAgentFactory} from "../src/SwanAgent.sol";
1313
import {SwanArtifactFactory} from "../src/SwanArtifact.sol";
1414
import {Swan} from "../src/Swan.sol";
1515
import {SwanLottery} from "../src/SwanLottery.sol";
16+
import {SwanDebate} from "../src/SwanDebate.sol";
1617
import {WETH9} from "../test/contracts/WETH9.sol";
1718

1819
struct Stakes {
@@ -223,6 +224,27 @@ contract HelperConfig is Script {
223224
return address(lottery);
224225
}
225226

227+
function deploySwanDebate() external returns (address) {
228+
// read deployed contract addresses
229+
string memory dir = "deployments/";
230+
string memory fileName = Strings.toString(block.chainid);
231+
string memory path = string.concat(dir, fileName, ".json");
232+
string memory contractAddresses = vm.readFile(path);
233+
234+
bool isCoordinatorExist = vm.keyExistsJson(contractAddresses, "$.LLMOracleCoordinator");
235+
require(isCoordinatorExist, "Please deploy LLMOracleCoordinator first");
236+
237+
address coordinatorProxy = vm.parseJsonAddress(contractAddresses, "$.LLMOracleCoordinator.proxyAddr");
238+
require(coordinatorProxy != address(0), "Coordinator proxy address is invalid");
239+
240+
vm.startBroadcast();
241+
SwanDebate debate = new SwanDebate(coordinatorProxy);
242+
vm.stopBroadcast();
243+
244+
writeContractAddress("SwanDebate", address(debate));
245+
return address(debate);
246+
}
247+
226248
function writeContractAddress(string memory name, address addr) internal {
227249
// create a deployment file if not exist
228250
string memory dir = "deployments/";

0 commit comments

Comments
 (0)