# TODO Tasks Status (2026-02-16)

Summary of all deployment TODOs and their current status.

## Completed ✅

| ID | Task | Notes |
|----|------|------|
| cron-2 | Cronos: Deploy Oracle | Deployed Aggregator + Proxy |
| cron-3 | Design Cronos trustless bridge | CRONOS_TRUSTLESS_BRIDGE_DESIGN.md |
| core-1 | Core: Multicall, CREATE2Factory, Oracle, MultiSig | Deployed on Cronos |

## Cancelled / Blocked ❌

| ID | Task | Blocker |
|----|------|---------|
| cron-1 | CCIPLogger on Cronos | Was placeholder; contract + Foundry script now exist; Cronos deploy failed (insufficient CRO) |
| ccip-1 | CCIPLogger Mainnet, BSC, Polygon, Gnosis | Use Foundry: `forge script script/DeployCCIPLogger.s.sol --rpc-url <RPC> --broadcast` |
| tf-1 | ISO-4217W TokenFactory + W tokens | Cronos: nonce mismatch; use `fix-nonce-and-retry.sh cronos` |
| tf-2 | eMoney TokenFactory138 | Chain 138: "Replacement transaction underpriced" (stuck tx) |
| tf-3 | Compliant Fiat Tokens | Needs ~19 CRO; add CRO then: `CREATE2_FACTORY_ADDRESS=<addr> forge script script/deploy/DeployCompliantFiatTokens.s.sol --rpc-url https://evm.cronos.org --broadcast` |
| tf-4 | VaultFactory | Already on Chain 138; `script/deploy/vault/DeployVaultSystem.s.sol` for other chains |
| bridge-1, bridge-2 | Trustless bridge | Chain 138: stuck tx blocks all broadcasts |
| vault-1, reserve-1 | Vault, Reserve | Chain 138: stuck tx |
| other-1 | Bridge integrations, TwoWayBridge, MirrorManager | Various chains; run when 138 unblocked |
| opt-1 | Optional: Smart Accounts, DEX pools, etc. | Lower priority |

## Completed This Session ✅

- **CCIPLogger contract**: Created `contracts/ccip-integration/CCIPLogger.sol`
- **DeployCCIPLogger.s.sol**: Chain-agnostic Foundry deploy script
- **fix-nonce-and-retry.sh**: Helper for Cronos nonce mismatch

## Prepared (Ready When Blockers Clear)

- **CCIPLogger**: `forge script script/DeployCCIPLogger.s.sol:DeployCCIPLogger --rpc-url <RPC> --broadcast`
- **ISO-4217W on Cronos**: `./scripts/deployment/fix-nonce-and-retry.sh cronos "script/deploy/iso4217w/DeployISO4217WSystem.s.sol:DeployISO4217WSystem"` then retry
- **Chain 138**: Resolve stuck tx; then `./scripts/deployment/run-all-deployments-parallel.sh chain138`
- **G2/G3 BSC, Polygon, Base, Optimism**: Infura 429; use public RPCs in .env or retry later. Single chain: `TRUSTLESS_DEPLOY_LOCKBOX=1 ./scripts/deployment/deploy-trustless-l2s.sh BSC`

## Nonce fix and G2/G3 remaining

- **fix-nonce-and-retry.sh**: Clears broadcast/cache so Forge uses fresh on-chain nonce. Chains: cronos, chain138, bsc, polygon, base, optimism, arbitrum, avalanche, gnosis. Default script: Trustless bridge. Use `--slow` when re-running deploy.
- **Cronos G2/G3**: Completed after nonce fix (BondManager, ChallengeManager, LiquidityPoolETH, InboxETH, Lockbox on Cronos).
- **run-remaining-g2g3-with-nonce-fix.sh**: Runs Cronos (with cache clear) then BSC, Polygon, Base, Optimism with delay between chains. BSC/Polygon/Base/Optimism may still hit Infura 429; switch to public RPCs in .env to complete.

## Operator runbook (DApp LXC + Dual-Router + NPMplus)

For step-by-step commands to deploy the DApp LXC (5801), add NPMplus proxy, fund mainnet LP, fund CCIP LINK, and optional G1–G3 / CCIPLogger, see **[ALL_NEXT_STEPS_CURRENT.md](ALL_NEXT_STEPS_CURRENT.md)**.

---

## 4 Gaps — Faster liquidity (DEPLOYED_CONTRACTS_OVERVIEW §2.7)

Tasks to unlock faster or deeper liquidity across networks. Source: [DEPLOYED_CONTRACTS_OVERVIEW.md](DEPLOYED_CONTRACTS_OVERVIEW.md) §2.7.

| ID | Task | Status | Script / action |
|----|------|--------|-----------------|
| **G1** | Deploy PMM / DODO integration on L2s | ✅ Script ready | `scripts/deployment/deploy-pmm-all-l2s.sh`; set per-chain RPC and `*_DODO_VENDING_MACHINE_ADDRESS`, `*_OFFICIAL_USDT/USDC_ADDRESS`; operator runs |
| **G2** | Deploy Trustless Inbox + LP on L2s for 138 ↔ L2 | ✅ Script ready | `DeployTrustlessBridge.s.sol` L2 mode + `scripts/deployment/deploy-trustless-l2s.sh`; set `TRUSTLESS_WETH_ADDRESS` per run |
| **G3** | Deploy Lockbox on L2s | ✅ Script ready | `./scripts/deployment/deploy-trustless-l2s.sh --lockbox` (or pass `--lockbox` via run-all-four-gaps.sh g2g3) |
| **G4** | Fund mainnet Liquidity Pool | ✅ Script ready | `./scripts/deployment/fund-mainnet-lp.sh --eth <amt> --weth <amt>` or interactive; `.env` only for LP address, RPC, key |
