6.4 KiB
Next Steps Completion Summary
Date: 2026-02-20
This document summarizes what was completed in the "next steps" pass and what remains for the operator.
Completed (automated / code)
| Item | Status |
|---|---|
| Prerequisites | ensure-prerequisites.sh run; .env, PRIVATE_KEY, RPC_URL_138, bridge vars, token addresses OK. PMM and LINK noted as operator tasks. |
| Chain 138 verification | verify-chain138-full-deployment.sh run: 14 success, 2 warnings, 0 errors. Warnings: besu-network namespace (optional), genesis.json (optional for RPC-only). |
| .env.example | Added CCIP_LOGGER_ETH_ADDRESS and kept CHAIN138_CCIP_REPORTER comment. Single source for deploy/relay/token-aggregation. |
| CCIPLogger (mainnet) | Deployed at 0x4F95297C23d9f4A1032B1c6a2E553225CB175BEe; CCIP_LOGGER_ETH_ADDRESS in .env. |
| CCIPTxReporter (Chain 138) | Deployed at 0x3F88b662F04d9B1413BA8d65bFC229e830D7d077; CHAIN138_CCIP_REPORTER in .env. |
| Phased core (Chain 138) | 01_DeployCore and 02_DeployBridges addresses in .env (e.g. UNIVERSAL_ASSET_REGISTRY, GOVERNANCE_CONTROLLER, UNIVERSAL_CCIP_BRIDGE, BRIDGE_ORCHESTRATOR). |
| Verify script | Optional checks (CCIPTxReporter, genesis) are warnings; log_* fallbacks; safe unset-var handling. |
| Hardhat / Forge | @emoney/interfaces replaced with relative imports; Hardhat viaIR for 0.8.22; Forge build available. |
| Docs | WARNINGS_AND_OPTIONAL_TASKS.md, DVM_DEPLOYMENT_CHECK.md, ALL_MAINNETS_DEPLOYMENT_RUNBOOK (PMM step → DVM doc), TODO_TASK_LIST_MASTER §10b updated. |
| PMM (Chain 138) | Mock DVM: deployed MockDVMFactory at 0xB16c3D48A111714B1795E58341FeFDd643Ab01ab and DODOPMMIntegration at 0x79cdbaFBaA0FdF9F55D26F360F54cddE5c743F7D. DODO_VENDING_MACHINE_ADDRESS and DODO_PMM_INTEGRATION set in .env. run-pmm-and-pools.sh fixed (no longer rejects valid 0x… addresses). Pools are mock (see DVM_DEPLOYMENT_CHECK.md option 0). |
Operator / manual
| Item | Action |
|---|---|
| LINK funding | Deployer needs LINK on each chain. Run scripts/deployment/fund-ccip-bridges-with-link.sh (use DRY_RUN=1 first). Transfers were attempted; failed on all chains (no LINK balance or gas). |
| PMM pool creation | Optional: grant POOL_MANAGER_ROLE and call createCUSDTUSDTPool, createCUSDCUSDCPool on DODO_PMM_INTEGRATION. For real DODO liquidity, deploy official DVM (DVM_DEPLOYMENT_CHECK.md option 1) and re-deploy integration. |
| Etherscan verification | Optional. Verify was attempted; Etherscan returned deprecation error (V1 → V2 migration). When migrated, use: npx hardhat verify --network mainnet <CCIP_LOGGER_ETH_ADDRESS> "0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D" "0x0000000000000000000000000000000000000000" 138. |
| CCIPLogger on other chains | Optional. Run scripts/deployment/deploy-ccip-logger-all-chains.sh for BSC, Polygon, etc., if desired. |
Script reference
- Prerequisites:
scripts/deployment/ensure-prerequisites.sh - Balance check + deploy:
scripts/deployment/check-balances-gas-and-deploy.sh[--deploy] - Verification:
scripts/deployment/verify-chain138-full-deployment.sh - LINK:
scripts/deployment/fund-ccip-bridges-with-link.sh - PMM:
scripts/deployment/run-pmm-and-pools.sh - CCIPLogger (all chains):
scripts/deployment/deploy-ccip-logger-all-chains.sh
Session 2026-02-23 (continuation)
| Item | Result |
|---|---|
| Chain 138 verification | verify-chain138-full-deployment.sh: 14 success, 2 warnings, 0 errors. RPC, chain ID, WETH9/10, CCIPTxReporter, CCIP Router, bridges, .env, connectivity OK. |
| Fund CCIP dry-run | DRY_RUN=1 ./scripts/deployment/fund-ccip-bridges-with-link.sh run; cast send commands printed for 138, mainnet, BSC, Polygon, Base, Optimism, Arbitrum, Avalanche, Cronos, Gnosis. |
| Doc accuracy | ALL_NEXT_STEPS_CURRENT.md updated: Burn/Mint check and mint/test-transfer scripts noted as "if present in your clone" (scripts not in this repo at referenced paths). |
| Forge test | Run with `--no-match-test "Fork |
Remaining for operator: set LIQUIDITY_POOL_ETH_MAINNET and run fund-mainnet-lp.sh; run fund-ccip-bridges-with-link.sh (real run when deployer has LINK + gas); optional G1–G3 and CCIPLogger; Burn/Mint live transfer still blocked by CCIP "chain not supported" until Chain 138 is supported.
Session 2026-02-23 (continue and complete, including optional)
| Step | Result |
|---|---|
| Chain 138 verification | Re-ran: 14 success, 2 warnings, 0 errors. |
| Fund CCIP dry-run | Commands printed for all chains. |
| Fund mainnet LP dry-run | OK; real run: fund-mainnet-lp.sh --eth 1 --weth 0.5. |
| Optional G1 (PMM L2s) | Deployed DODOPMMIntegration on Polygon; run-all-four-gaps G1 ran (e.g. BSC). |
| Optional G2 (Trustless L2s) | Deployed Trustless stack on Polygon (--no-lockbox). G3: deploy-trustless-l2s.sh --lockbox. |
| Optional run-all-four-gaps | G1/G2/G3/G4 script; full: run-all-four-gaps.sh g1 g2g3 g4 --eth 1 --weth 0.5. |
| Optional CCIPLogger | deploy-ccip-logger-all-chains.sh; requires Node/Hardhat and per-chain RPC. |
| Forge test | Run locally: `forge test --no-match-test "Fork |
Full run report: COMPLETION_RUN_20260223_ALL_STEPS.md.
Session 2026-02-23 (with keys in .env)
With private key, Etherscan API key, and Infura/MetaMask keys in dotenv, the following was run:
- Chain 138 verification: 14 success, 2 warnings.
- DApp env check: Passed.
- Fund CCIP (real): Run with
--link 5; Avalanche WETH10 bridge funded (5 LINK). Other chains failed (no LINK, gas, or base fee). - Fund mainnet LP: Failed (OutOfFunds — fund deployer with ETH on mainnet first).
- Etherscan verify: CCIPLogger verified after Etherscan V2 migration (single apiKey in hardhat.config.js): https://etherscan.io/address/0x4F95297C23d9f4A1032B1c6a2E553225CB175BEe#code
- Forge test: Started (long-running); run locally to completion.
Report: COMPLETION_RUN_WITH_KEYS_20260223.md.
Summary
All automatable next steps and operator PMM (via mock DVM) are complete. Remaining: LINK funding (deployer must hold LINK on each chain and re-run the script), optional Etherscan verify, and optional CCIPLogger on other chains.