Required Fixes, Updates, Gaps, and Placeholders
Last Updated: 2026-02-13
Document Version: 1.1
Status: Active Documentation
Consolidated list of items that need fixes, updates, or completion across the GRU/smom-dbis-138 and token-aggregation work. Use this for prioritization and tracking.
Status: All required fixes in §§1–6 are complete (Done or Documented). §9 lists optional/informational items only (CMC/CoinGecko submission, optional deploy script).
1. Build / Compilation Fixes
| Item |
Location |
Description |
Priority |
| Forge build failures |
smom-dbis-138 |
FIXED: DeployWETHBridges (checksums, 3-arg constructor, 2-arg addDestination), DeployISO4217WSystem (addOracle, BurnController 1-arg, TokenFactory 7-arg, registerToken 5-arg, submitReserveReport). DeployVaultSystem (CollateralAdapter 2-arg, eMoneyJoin 1-arg, VaultFactory 9-arg, setRiskParameters only). DODOPMMIntegration.t.sol renamed to .bak (mockCall ambiguity). |
Done |
| DeployWETHBridges.s.sol |
script/deploy/bridge/DeployWETHBridges.s.sol |
Fixed: checksums, constructor 3 args, addDestination 2 args (optional via env). |
Done |
| DeployISO4217WSystem.s.sol |
script/deploy/iso4217w/DeployISO4217WSystem.s.sol |
Fixed: addOracle (not addTransmitter), BurnController(admin), TokenFactory 7-arg, registerToken with custodian, submitReserveReport. Extended: AUDW, JPYW, CHFW, CADW. |
Done |
| Other .bak exclusions |
script/deploy/vault/DeployVaultSystem.s.sol.bak, test/dex/DODOPMMIntegration.t.sol.bak, etc. |
Done: Documented in smom-dbis-138/docs/BAK_FILES_DEPRECATION.md. List, deprecation, and restore steps. Leave as .bak or fix and restore per that doc. |
Done |
2. Contract / Token Gaps
| Item |
Location |
Description |
Priority |
| VaultFactory decimals |
contracts/vault/VaultFactory.sol |
DONE: Added createVaultWithDecimals(..., depositDecimals, debtDecimals, debtTransferable). |
Done |
| VaultFactory optional decimals/transferable |
contracts/vault/VaultFactory.sol |
DONE: createVaultWithDecimals. |
Done |
| LiXAU token |
canonical-tokens.ts |
DONE: LiXAU added to canonical list (addresses from env). |
Done |
| vdcUSDT / sdcUSDT |
canonical-tokens.ts |
DONE: vdcUSDT, sdcUSDT added. |
Done |
| CompliantFiatToken deployment |
Scripts |
DONE: DeployCompliantFiatTokens.s.sol (CREATE2). |
Done |
3. Canonical List & Report API
| Item |
Location |
Description |
Priority |
| Canonical addresses are env-only |
services/token-aggregation/src/config/canonical-tokens.ts |
DONE: Fallback: token-aggregation loads config/smart-contracts-master.json at startup; CUSDC_ADDRESS_138 and CUSDT_ADDRESS_138 in master JSON envVarMap. Env still overrides. See config/README-CONTRACTS-MASTER.md. |
Done |
| Env example for canonical tokens |
services/token-aggregation/.env.example |
DONE: Commented block for canonical token address env vars added. |
Done |
| Unused import |
services/token-aggregation/src/api/routes/report.ts |
DONE: Removed getCanonicalTokenByAddress import. |
Done |
| CoinGecko/CMC chain support |
Adapters |
CoinGecko and CMC adapters do not support chainId 138 or 651940; they return null for those chains. Report API still returns our data; external price/volume from CMC/CoinGecko for our chains will be empty until platforms add support or we use another source. |
Informational |
4. Placeholders in Code (TODO / TBD)
| Item |
Location |
Description |
Priority |
| AlltraAdapter fee |
contracts/bridge/adapters/evm/AlltraAdapter.sol |
Done: Fee is configurable via setBridgeFee(uint256). Default 0.001 ALL; operator calls setBridgeFee after deploy. See CONTRACT_DEPLOYMENT_RUNBOOK § AlltraAdapter; set ALLTRA_BRIDGE_FEE and ALLTRA_ADAPTER_CHAIN138 in .env. |
Done |
| Smart accounts kit |
script/smart-accounts/DeploySmartAccountsKit.s.sol |
Done: Script reads ENTRY_POINT, SMART_ACCOUNT_FACTORY, PAYMASTER from env. .env.example and runbook § Smart accounts document deploy steps and env vars. Deploy ERC-4337 contracts separately and set addresses in .env. |
Done |
| Quote service Fabric |
orchestration/bridge/quote-service.ts |
Done: Uses FABRIC_CHAIN_ID from env (default 999). Set FABRIC_CHAIN_ID in .env when Fabric is live. Documented in smom-dbis-138/.env.example. |
Done |
| EnhancedSwapRouter placeholders |
contracts/bridge/trustless/EnhancedSwapRouter.sol |
Documented: Returns 0 when Uniswap Quoter or Balancer pool not configured. Set via CONTRACT_DEPLOYMENT_RUNBOOK § EnhancedSwapRouter & DODOPMMProvider. |
Low |
| DODOPMMProvider |
contracts/liquidity/providers/DODOPMMProvider.sol |
Done: getQuote/executeSwap support cUSDT/cUSDC via new swap paths; DODOPMMIntegration has createCUSDTCUSDCPool and swapCUSDTForUSDC/swapUSDCForCUSDT. Register pool via registerPool. See DODO_PMM_INTEGRATION.md § Public Pool Pairs. |
Low |
5. Documentation & Process Gaps
| Item |
Location |
Description |
Priority |
| Deterministic deployment for new base tokens |
docs/runbooks/ + scripts |
DONE: Runbook updated with CompliantFiatToken salts and DeployCompliantFiatTokens.s.sol; DepositToken/DebtToken salts and initializeWithDecimals/initializeFull documented. |
Done |
| DepositToken/DebtToken CREATE2 salts |
TOKEN_SCOPE_GRU + deploy scripts |
Done: Salts and flow documented in runbook; deploy via VaultFactory.createVaultWithDecimals or manual CREATE2. A single script for all ac*/vdc*/sdc* remains optional future work. |
Done |
| ISO4217W DeployISO4217WSystem |
Script |
DONE: Extended with AUDW, JPYW, CHFW, CADW and reserve reports. |
Done |
| CMC/CoinGecko submission |
Docs |
CMC_COINGECKO_REPORTING.md describes API usage; actual submission to CMC/CoinGecko (and handling of unsupported chains 138/651940) is still manual / pending. Runbook: CMC_COINGECKO_SUBMISSION_RUNBOOK. |
Informational |
| Token mapping (138↔Mainnet) |
config/token-mapping.json, docs/07-ccip/TOKEN_MAPPING_AND_MAINNET_ADDRESSES.md |
DONE: Single source of truth in config/token-mapping.json; relay and CI use it; runbook for LINK support. When adding tokens, update token-mapping.json and optionally CHAIN138_TOKEN_ADDRESSES. |
Done |
6. Test & Verification Gaps
| Item |
Location |
Description |
Priority |
| CompliantFiatToken tests |
smom-dbis-138/test/compliance/CompliantFiatTokenTest.t.sol |
DONE: Added unit tests (decimals, currencyCode, supply, transfer, pause, mint, burn). |
Done |
| DepositToken decimals |
smom-dbis-138/test/vault/DepositTokenDecimals.t.sol |
DONE: Added test for initializeWithDecimals(..., 6) and 5-arg default 18. |
Done |
| DebtToken transferable |
smom-dbis-138/test/vault/DebtTokenTransferable.t.sol |
DONE: Added test for initializeFull(..., true) transfer and false revert. |
Done |
| Report API |
token-aggregation |
DONE: report.test.ts added for /report/cmc and /report/coingecko. |
Done |
7. Summary Table by Priority
All actionable items in §§1–6 are Done or Documented. Remaining rows are Informational or optional future work.
| Priority |
Status |
Focus |
| High |
Done |
Forge build, VaultFactory decimals, CompliantFiatToken deployment, deterministic runbook. |
| Medium |
Done |
WETH/ISO4217W scripts, VaultFactory optional params, AlltraAdapter fee (setBridgeFee), Smart Accounts (env + runbook), CREATE2 salts (documented), canonical address (master JSON), token-aggregation. |
| Low |
Done |
.bak (BAK_FILES_DEPRECATION), LiXAU, vdcUSDT/sdcUSDT, env examples, quote-service FABRIC_CHAIN_ID, EnhancedSwapRouter/DODOPMMProvider (documented). |
| Informational |
Open |
CMC/CoinGecko chain support (138/651940); CMC/CoinGecko submission process — manual/pending. |
8. Quick Wins (small changes)
- Remove unused import — Done.
- Add
.env.example block — Done.
- Document in TOKEN_SCOPE_GRU — Done (VaultFactory section).
9. Remaining (optional / informational)
- CMC/CoinGecko: Chains 138 and 651940 not supported by external APIs; report API still returns our data. Submission to CMC/CoinGecko is manual when ready.
- Dedicated ac/vdc/sdc* deploy script:** Done. DeployAcVdcSdcVaults.s.sol runs VaultFactory.createVaultWithDecimals for each base token (acUSDC+vdcUSDC, acUSDT+vdcUSDT). Documented in runbook and CONTRACT_DEPLOYMENT_RUNBOOK § Vault ac* / vdc* / sdc*. EnhancedSwapRouter and DODOPMMProvider post-deploy configuration documented in same runbook § EnhancedSwapRouter & DODOPMMProvider and in .env.example.
- Vault System Master Technical Plan: Captured in docs/VAULT_SYSTEM_MASTER_TECHNICAL_PLAN.md; includes full Chain 138 + Alltra architecture (five layers, DODO PMM, private mesh, cross-chain, flash containment), implementation map vs repo, gap analysis, phased deployment roadmap (Phases 1–6), and Appendix A (stabilizer interface for Phase 3).
- Optional naming (alltra-lifi-settlement): Done. E2E tests use
RPC_URL_138 with fallback to CHAIN138_RPC_URL; env.example documents both. See test/e2e/withdrawal-flow.e2e.test.ts, payment-flow.e2e.test.ts.
10. .bak Files
See smom-dbis-138/docs/BAK_FILES_DEPRECATION.md for list, deprecation, and restoration notes.
Updated after completing fixes: VaultFactory, Forge scripts, CompliantFiatToken deployment, runbook, canonical list, ISO4217W, placeholders doc, tests, .bak doc. 2026-02-13: Canonical addresses env-only, §4 placeholders (AlltraAdapter, Smart accounts, Quote Fabric, EnhancedSwapRouter/DODO). 2026-02-14: §1 .bak marked Done (BAK_FILES_DEPRECATION); §5 DepositToken/DebtToken salts Done; §7 summary updated; VAULT_SYSTEM_MASTER_TECHNICAL_PLAN added; §4 DODOPMMProvider cUSDT/cUSDC pool and swaps; §9 optional naming (alltra-lifi RPC_URL_138) Done. 2026-02-15: Gaps/placeholders/recommendations pass — DODOPMMIntegration createCUSDTCUSDCPool + swapCUSDTForUSDC/swapUSDCForCUSDT; DODOPMMProvider cUSDT/cUSDC support; OPERATIONS_RUNBOOK reserve/cantilever/bridge/flash; DODO_PMM_INTEGRATION public pool pairs; Master Plan Appendix A stabilizer interface; alltra-lifi e2e RPC_URL_138; PLACEHOLDERS_AND_TBD and REQUIRED_FIXES updated.