Files
smom-dbis-138/docs/deployment/DEPLOYMENT_INSTRUCTIONS.md
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- 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.
2025-12-12 14:57:48 -08:00

81 lines
1.8 KiB
Markdown

# 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:
```bash
forge build --via-ir
forge script script/DeployTransactionMirror.s.sol --via-ir ...
```
---
## 📋 Pre-Deployment Checklist
- [x] Contracts reviewed for errors
- [x] Security patterns verified
- [x] Input validation complete
- [x] Replay protection implemented
- [ ] Set `TETHER_ADMIN` in `.env` (multisig recommended)
- [ ] Set `MIRROR_ADMIN` in `.env` (multisig recommended)
- [ ] Verify sufficient ETH balance for gas
- [ ] Verify `ETH_MAINNET_RPC_URL` is set
- [ ] Verify `ETHERSCAN_API_KEY` is set
---
## 🚀 Deployment Commands
### MainnetTether
```bash
forge script script/DeployMainnetTether.s.sol \
--rpc-url $ETH_MAINNET_RPC_URL \
--private-key $PRIVATE_KEY \
--broadcast \
--verify \
-vvvv
```
### TransactionMirror
```bash
# 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
1. Update `.env` with deployed addresses:
```bash
MAINNET_TETHER_ADDRESS=<deployed_address>
TRANSACTION_MIRROR_ADDRESS=<deployed_address>
```
2. Verify contracts on Etherscan
3. Set up off-chain services:
- State proof anchoring service (for MainnetTether)
- Transaction mirroring service (for TransactionMirror)
---
**Last Updated**: 2025-12-11