File size: 1,167 Bytes
dfb775d
 
 
 
 
 
c27193b
dfb775d
 
 
 
 
 
 
 
 
 
 
c27193b
dfb775d
 
 
 
c27193b
dfb775d
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// SPDX-License-Identifier: Apache-2.0
pragma solidity ^0.8.26;

import {Script, console} from "forge-std/Script.sol";
import {MindXTrainRegistry} from "../src/mindxtrain_registry.sol";
import {X402Receiver} from "../src/x402_receiver.sol";
import {MindXAutoresearchRegistry} from "../src/mindx_autoresearch_registry.sol";

contract Deploy is Script {
    function run() external {
        uint256 pk = vm.envUint("DEPLOYER_PRIVATE_KEY");
        address facilitator = vm.envAddress("X402_FACILITATOR");
        // ("algorand", 203977300) — Algorand mainnet USDC ASA
        bytes32 assetIdHash = keccak256(abi.encode("algorand", uint256(203977300)));

        vm.startBroadcast(pk);
        MindXTrainRegistry registry = new MindXTrainRegistry();
        X402Receiver receiver = new X402Receiver(facilitator, assetIdHash);
        MindXAutoresearchRegistry research = new MindXAutoresearchRegistry();
        vm.stopBroadcast();

        console.log("MindXTrainRegistry deployed at:", address(registry));
        console.log("X402Receiver deployed at:", address(receiver));
        console.log("MindXAutoresearchRegistry deployed at:", address(research));
    }
}