- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control. - Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities. - Created .gitmodules to include OpenZeppelin contracts as a submodule. - Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment. - Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks. - Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring. - Created scripts for resource import and usage validation across non-US regions. - Added tests for CCIP error handling and integration to ensure robust functionality. - Included various new files and directories for the orchestration portal and deployment scripts.
1.8 KiB
1.8 KiB
Deployment Instructions - MainnetTether & TransactionMirror
Date: 2025-12-11 Status: Ready for Deployment
⚠️ Important: Stack Too Deep Issue
The TransactionMirror.sol contract's mirrorBatchTransactions function has 9 calldata array parameters, which may cause a "Stack too deep" compilation error.
Solution: Use the --via-ir flag when compiling and deploying:
forge build --via-ir
forge script script/DeployTransactionMirror.s.sol --via-ir ...
📋 Pre-Deployment Checklist
- Contracts reviewed for errors
- Security patterns verified
- Input validation complete
- Replay protection implemented
- Set
TETHER_ADMINin.env(multisig recommended) - Set
MIRROR_ADMINin.env(multisig recommended) - Verify sufficient ETH balance for gas
- Verify
ETH_MAINNET_RPC_URLis set - Verify
ETHERSCAN_API_KEYis set
🚀 Deployment Commands
MainnetTether
forge script script/DeployMainnetTether.s.sol \
--rpc-url $ETH_MAINNET_RPC_URL \
--private-key $PRIVATE_KEY \
--broadcast \
--verify \
-vvvv
TransactionMirror
# IMPORTANT: Use --via-ir flag to avoid stack too deep error
forge script script/DeployTransactionMirror.s.sol \
--rpc-url $ETH_MAINNET_RPC_URL \
--private-key $PRIVATE_KEY \
--broadcast \
--verify \
--via-ir \
-vvvv
✅ Post-Deployment
-
Update
.envwith deployed addresses:MAINNET_TETHER_ADDRESS=<deployed_address> TRANSACTION_MIRROR_ADDRESS=<deployed_address> -
Verify contracts on Etherscan
-
Set up off-chain services:
- State proof anchoring service (for MainnetTether)
- Transaction mirroring service (for TransactionMirror)
Last Updated: 2025-12-11