Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
68 lines
4.2 KiB
Markdown
68 lines
4.2 KiB
Markdown
# Contract Deployment Gaps — Completed
|
||
|
||
**Last Updated:** 2026-02-13
|
||
**Purpose:** Record of gaps and missing pieces that were completed so all blocks to contract deployments are removed or documented.
|
||
|
||
**Related:** [CONTRACT_DEPLOYMENT_RUNBOOK](CONTRACT_DEPLOYMENT_RUNBOOK.md) | [CONTRACTS_TO_DEPLOY](../11-references/CONTRACTS_TO_DEPLOY.md) | [CONTRACT_INVENTORY_AND_VERIFICATION](../11-references/CONTRACT_INVENTORY_AND_VERIFICATION.md) | [PLACEHOLDERS_AND_COMPLETION_MASTER_LIST](../00-meta/PLACEHOLDERS_AND_COMPLETION_MASTER_LIST.md)
|
||
|
||
---
|
||
|
||
## 1. Env and config (unblock deploys)
|
||
|
||
| Gap | Completion |
|
||
|-----|------------|
|
||
| **CCIPReceiver / CCIPSender** need `CCIP_ROUTER_ADDRESS` and `ORACLE_AGGREGATOR_ADDRESS` | Added `ORACLE_AGGREGATOR_ADDRESS` to `smom-dbis-138/.env.example` with comment; `CCIP_ROUTER_ADDRESS` already present. |
|
||
| **Mainnet WETH bridge** addresses for cross-chain config | `.env.example` already had `MAINNET_WETH9_BRIDGE_ADDRESS`, `MAINNET_WETH10_BRIDGE_ADDRESS`; added comment "Set when configuring cross-chain destinations." |
|
||
| **Single source** for which env each script needs | Added "Env required per deploy script" table in [CONTRACT_DEPLOYMENT_RUNBOOK](CONTRACT_DEPLOYMENT_RUNBOOK.md) § Prerequisites. |
|
||
|
||
---
|
||
|
||
## 2. TransactionMirror (Forge broadcast bug workaround)
|
||
|
||
| Gap | Completion |
|
||
|-----|------------|
|
||
| **TransactionMirror** deploy script can hit constructor-args decode on broadcast | Runbook already had `forge create` one-liner. Added dedicated § **TransactionMirror** in CONTRACT_DEPLOYMENT_RUNBOOK with full command and `MIRROR_ADMIN` handling. |
|
||
| **One-command** deploy for operators | Added `./scripts/deployment/deploy-transaction-mirror-chain138.sh` — runs `forge create` with admin from `MIRROR_ADMIN` or deployer; documents setting `TRANSACTION_MIRROR_ADDRESS` in .env. |
|
||
| **Inventory** pointed to runbook | CONTRACT_INVENTORY_AND_VERIFICATION §4 Undeployed updated to reference the helper script and runbook § TransactionMirror. |
|
||
|
||
---
|
||
|
||
## 3. Smart accounts (no contracts in repo)
|
||
|
||
| Gap | Completion |
|
||
|-----|------------|
|
||
| **DeploySmartAccountsKit** does not deploy (logs next steps only) | Prerequisites table in runbook states: "Script does not deploy contracts; obtain EntryPoint/Factory from MetaMask kit or ERC-4337 impl and set in env." |
|
||
| **.env.example** and runbook | Already had ENTRY_POINT, SMART_ACCOUNT_FACTORY, PAYMASTER in smom-dbis-138/.env.example and runbook § Smart accounts. |
|
||
|
||
---
|
||
|
||
## 4. Deployments already done (reference)
|
||
|
||
| Contract | Address | Script / note |
|
||
|----------|---------|----------------|
|
||
| Multicall, Oracle (Aggregator+Proxy), MultiSig | See CONTRACT_ADDRESSES_REFERENCE | deploy-all-contracts.sh (2026-02-13) |
|
||
| CCIPReceiver | `0xC12236C03b28e675d376774FCE2C2C052488430F` | DeployCCIPReceiver.s.sol |
|
||
| Voting | `0x022267b26400114aF01BaCcb92456Fe36cfccD93` | DeployVoting.s.sol |
|
||
| Phased core, channels, CREATE2, Vault, Reserve | See CONTRACT_ADDRESSES_REFERENCE | deploy-all-phases.sh (skips when env set) |
|
||
|
||
---
|
||
|
||
## 5. Remaining (operator / when-needed)
|
||
|
||
| Item | Blocker / when | Action |
|
||
|------|----------------|--------|
|
||
| **TransactionMirror** on chain | None | Run `./scripts/deployment/deploy-transaction-mirror-chain138.sh` when mirror feature is needed. |
|
||
| **Smart accounts** (EntryPoint, Factory, Paymaster) | No contracts in repo | Obtain from MetaMask Smart Accounts Kit or ERC-4337 impl; deploy to Chain 138; set ENTRY_POINT, SMART_ACCOUNT_FACTORY, PAYMASTER in .env. |
|
||
| **Mainnet WETH receiver** addresses | When configuring cross-chain to mainnet | Set MAINNET_WETH9_BRIDGE_ADDRESS, MAINNET_WETH10_BRIDGE_ADDRESS in .env. |
|
||
| **CCIPLogger** | Optional | Omit from deploy list unless monitoring needed; see CONTRACTS_TO_DEPLOY §1.4. |
|
||
| **Dodo / EnhancedSwapRouter** | When DEX integration needed | Set quoter/pool env when pools exist; see PLACEHOLDERS_AND_TBD. |
|
||
|
||
---
|
||
|
||
## 6. Where to update when more is completed
|
||
|
||
- **This doc:** Add rows to §1–§5 as new gaps are closed.
|
||
- **Runbook:** Keep "Env required per deploy script" and § TransactionMirror in sync.
|
||
- **CONTRACT_INVENTORY_AND_VERIFICATION:** Update §2 (deployed) and §4 (undeployed) when contracts are deployed or deprecated.
|
||
- **PLACEHOLDERS_AND_COMPLETION_MASTER_LIST:** Mark items ✅ and point to this doc or runbook.
|