Files
proxmox/docs/00-meta/TODOS_CONSOLIDATED.md
defiQUG 7ac74f432b chore: sync docs, config schemas, scripts, and meta task alignment
- Institutional / JVMTM / reserve-provenance / GRU transport + standards JSON
- Validation and verify scripts (Blockscout labels, x402, GRU preflight, P1 local path)
- Wormhole wiring in AGENTS, MCP_SETUP, MASTER_INDEX, 04-configuration README
- Meta docs, integration gaps, live verification log, architecture updates
- CI validate-config workflow updates

Operator/LAN items, submodule working trees, and public token-aggregation edge
routes remain follow-up (see TODOS_CONSOLIDATED P1).

Made-with: Cursor
2026-03-31 22:31:39 -07:00

442 lines
42 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# TODOs — Consolidated Task List
**Last Updated:** 2026-03-30
**Current on-chain target (check-contracts-on-chain-138.sh):** **64/64****ISO20022Router** + canonical/legacy **CCIP** router and WETH9 bridge; list in `config/smart-contracts-master.json`. Re-verify from LAN — [INTEGRATION_GAPS_AND_NEXT_STEPS_2026-03-30.md](INTEGRATION_GAPS_AND_NEXT_STEPS_2026-03-30.md). Historical counts in [LIVE_VERIFICATION_LOG_2026-03-30.md](LIVE_VERIFICATION_LOG_2026-03-30.md). Older paragraphs that say **59/59** record **that days** script list.
**Last verification run (read newest bullets first):** **2026-03-29 (operator / LAN):** `validate-config-files.sh` ✅, `check-contracts-on-chain-138.sh`**61/61** (before ISO router row), `verify-end-to-end-routing.sh --profile=public`**Failed: 0** (44 domains; evidence `docs/04-configuration/verification-evidence/e2e-verification-20260329_235044/`), `--profile=private`**Failed: 0** (`.../e2e-verification-20260329_235128/`). `submodules-clean.sh`**exit 1** — dirty **`dbis_core/`**, **`smom-dbis-138/`** (see **P1-F08** / **R1**). **2026-03-30 (repo / no deploy):** `run-completable-tasks-from-anywhere.sh` ✅, `dbis_core` `pnpm test:iru-marketplace` ✅, doc alignment **59→61** (see **P1-F07**; log file [LIVE_VERIFICATION_LOG_2026-03-30.md](LIVE_VERIFICATION_LOG_2026-03-30.md)). **2026-03-28:** operator `--skip-backup` ✅ (NPMplus 40 hosts, Blockscout batch). **2026-03-06:** validate-config ✅, PMM Pool 1 **2M/2M**, preflight ✅, token-aggregation build ✅, public E2E **37** domains **Failed: 0** (smaller inventory than todays **44**-domain public profile). **Mint + add-liquidity** 2026-03-06: 1M each minted, 500k each added. **Next-steps check:** [NEXT_STEPS_LIST.md](NEXT_STEPS_LIST.md); B.1/B.2/B.3 partially blocked (WEMIX tabled; LINK relay runbook pending).
**Purpose:** Single checklist of all next steps and remaining tasks. **Indonesia / HYBX-BATCH-001 zip (4.995 ship-ready):** [HYBX-BATCH-001 — transaction package ship-ready](#hybx-batch-001--transaction-package-ship-ready-4995) below. **Full execution order (multiple routes + liquidity):** [EXECUTION_CHECKLIST_MULTIPLE_ROUTES_AND_LIQUIDITY.md](EXECUTION_CHECKLIST_MULTIPLE_ROUTES_AND_LIQUIDITY.md). **Additional paths (registry, LiFi/Jumper, Etherlink, 13×13):** [ADDITIONAL_PATHS_AND_EXTENSIONS.md](../04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md). **Dotenv/markdown audit (required info, gaps, recommendations):** [DOTENV_AND_MARKDOWN_AUDIT_GAPS_AND_RECOMMENDATIONS.md](DOTENV_AND_MARKDOWN_AUDIT_GAPS_AND_RECOMMENDATIONS.md). **Full narrative checklist:** [NEXT_STEPS_AND_REMAINING_TODOS.md](NEXT_STEPS_AND_REMAINING_TODOS.md). **Merged backlog IDs:** this file § **P1** (use P1 for status; NEXT_STEPS may lag until synced). **Token deployments remaining:** [TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md](../11-references/TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md). **Routing / swap / cross-chain:** [TASKS_ROUTING_SWAP_CROSSCHAIN.md](TASKS_ROUTING_SWAP_CROSSCHAIN.md) (A1A5, B1B8, C1C8, D1D3, E1E2). **Verified list (LAN/Operator):** [REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md](REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md) — run bash/curl to confirm; on-chain count **64** from 2026-03-30 (ISO router + CCIP legacy pair + `smart-contracts-master.json`); older log rows record earlier counts.
**Quick run:** From anywhere (no LAN): `./scripts/run-completable-tasks-from-anywhere.sh`. Before Chain 138 deploy: `./scripts/deployment/preflight-chain138-deploy.sh [--cost]`. **Chain 138 next steps (all in one):** `./scripts/deployment/run-all-next-steps-chain138.sh [--dry-run] [--skip-mirror] [--skip-register-gru] [--skip-verify]` — preflight → mirror+pool → register c* as GRU → verify. From LAN with secrets: `./scripts/run-all-operator-tasks-from-lan.sh [--deploy] [--create-vms]`. **E2E flows (full parallel):** `./scripts/run-e2e-flow-tasks-full-parallel.sh [--dry-run]` — [TASKS_TO_INCREASE_ALL_E2E_FLOWS](TASKS_TO_INCREASE_ALL_E2E_FLOWS.md).
**Full deployment order:** [DEPLOYMENT_ORDER_OF_OPERATIONS.md](../03-deployment/DEPLOYMENT_ORDER_OF_OPERATIONS.md) — Phase 06. **Remaining for full network coverage:** [REMAINING_DEPLOYMENTS_FOR_FULL_NETWORK_COVERAGE.md](../03-deployment/REMAINING_DEPLOYMENTS_FOR_FULL_NETWORK_COVERAGE.md) — A: mint + add liquidity (138) → BD. **Status to continue (before Phase A mint):** [REMAINING_DEPLOYMENTS § Status to continue](../03-deployment/REMAINING_DEPLOYMENTS_FOR_FULL_NETWORK_COVERAGE.md) and [CORE_RPC_2101_2102_TXPOOL_ADMIN_STATUS §7](../04-configuration/CORE_RPC_2101_2102_TXPOOL_ADMIN_STATUS.md) — restart validator 1004, clear tx pool, then mint. **Phase execution 2026-03-04:** A.1 attempted (tx timeout); A.2 pending; B.1 Celo ✅; B.2 Wemix blocked; B.3 fund-ccip ready; Phase C/D runbooks. **Full plan:** [COMPLETE_REQUIRED_OPTIONAL_RECOMMENDED_INDEX.md](COMPLETE_REQUIRED_OPTIONAL_RECOMMENDED_INDEX.md).
**Last completable run (2026-03-02):** Config validation OK; on-chain 59/59; run-all-validation --skip-genesis OK; reconcile-env. **Preflight** and **run-all-next-steps-chain138.sh** run: preflight passed; mirror/pool present; 12 c* already GRU-registered; verification 59/59. Documentation: MASTER_INDEX, README, RUNBOOKS_MASTER_INDEX created; deprecated list and consolidation plan updated. Progress indicators (Step 1/44/4) in run-completable-tasks-from-anywhere.sh. E2E flow tasks script and doc updates (ADDRESS_MATRIX_AND_STATUS, RECOMMENDATIONS R2, NEXT_STEPS_FOR_YOU) completed. **Optional completed (2026-02-27 / 2026-03-01):** DeployCompliantFiatTokens (10 tokens); Blockscout verification; MCP allowlist-138; add-liquidity runbook; token-aggregation fallbacks + ENV_EXAMPLE_CONTENT; E2E routing verification; PMM_DEX_ROUTING_STATUS + REQUIRED_FIXES_AND_DEPLOYMENTS_STATUS updated; cCADT line (commented) in DeployCompliantFiatTokens.s.sol. **Within-scope list (2026-02-27):** CompliantWrappedToken.sol; DeployCompliantFiatTokensForChain.s.sol (c* any chain); DeployCWTokens.s.sol (cWUSDT/cWUSDC); deploy-tokens-and-weth-all-chains-skip-canonical.sh extended with --deploy-c, --deploy-cw, 651940 env validation; TOKENS_DEPLOYER_DEPLOYED_ON_OTHER_CHAINS §6 implemented; ENV_EXAMPLE_CONTENT c*/cW*/651940 vars. **2026-02-27:** Deployment order doc, preflight script, deployment safety added; todos synced.
**Verified (LAN/Operator) 2026-03-06:** Preflight ✅; Core RPC 192.168.11.211:8545 ✅; deployer balance script ✅ (native ETH OK; WETH/cUSDT/cUSDC = 0 → add liquidity blocked); on-chain 59/59 ✅; config validation ✅; token-aggregation build ✅; E2E 502s fixed (address-all-remaining-502s + NPM; E2E 37 domains 0 failed); operator script run ✅ (NPMplus RPC fix, Blockscout verify). **Earlier:** 2026-03-0304 deployer balance, on-chain, DODOPMMIntegration canonical cUSDT/cUSDC — [EXPLORER_TOKEN_LIST_CROSSCHECK](../11-references/EXPLORER_TOKEN_LIST_CROSSCHECK.md) §8.
**Operator copy-paste commands:** [OPERATOR_READY_CHECKLIST.md](OPERATOR_READY_CHECKLIST.md) — one page with exact commands for every pending todo.
**Local automation (no LAN deploys):** `bash scripts/verify/run-p1-local-verification.sh` — config validation, completable tasks, optional IRU marketplace tests.
---
## P1 — Merged backlog (2026-03-30)
Single table for session-merged items (platform, chain, HYBX, external, docs). **Status legend:** `Done` = verified in repo/automation (dates in Notes); `Open` = needs operator, on-chain action, commit hygiene, or external party; `N/A` = product/legal judgment only.
### A — Platform, mail, DBIS Phoenix, marketplace methodology
| ID | Task | Status | Notes |
|----|------|--------|--------|
| **P1-A01** | Deploy **dbis_core** Node API on Proxmox **10150/10151** (replace `python -m http.server`), systemd, merge SMTP from `/tmp/smtp.env.example` or `.env.example` | **Open** | `ALL_VMIDS_ENDPOINTS.md`, `pct` on r630-01 |
| **P1-A02** | After **PMG/Postfix** upgrades on CT **100**, re-verify **587/465** in `master.cf`; restore from `/etc/postfix/master.cf.bak.*` if needed | **Open** | Operator SSH + `pct exec 100` |
| **P1-A03** | Move **SMTP env template** off CT **/tmp** into persistent path when template CT allows | **Open** | `pct push` or provision fix |
| **P1-A04** | Fix **10150/10151** image: **`/root` owned by nobody** blocks normal admin | **Open** | Re-template LXC or idmap |
| **P1-A05** | Confirm **VMID 130** (monitoring-1) **Proxmox node** | **Open** | `pct list` per node |
| **P1-A06** | If DB has wrong **inquiry FK** to business `offeringId`, run **`dbis_core/scripts/sql/fix-iru-inquiry-offering-fk.sql`** + migrations | **Open** | Needs `DATABASE_URL` |
| **P1-A07** | **Product:** unify **native** (VMs, IPs, hosting) vs **partner** (`IruOffering`) in one catalog UX, or keep split | **Open** | See `SANKOFA_MARKETPLACE_SURFACES.md` |
| **P1-A08** | Run **`scripts/verify/check-contracts-on-chain-138.sh`** with **`cast`** + reachable Core RPC | **Done** | Same as **P1-F05**; script uses `config/smart-contracts-master.json` when present. **64/64** verified LAN RPC 2026-03-30 (canonical + legacy CCIP + ISO router). |
### B — Chain 138, CCIP, routing (see also tables above)
| ID | Task | Status | Notes |
|----|------|--------|--------|
| **P1-B01** | **Preflight** + deployer balance before deploys | **Open** | `preflight-chain138-deploy.sh`, `check-deployer-balance-chain138-and-funding-plan.sh` |
| **P1-B02** | **Tx pool / validator** maintenance if mint/deploy stuck | **Open** | `clear-all-transaction-pools.sh`; validator **1004** per `REMAINING_DEPLOYMENTS` / `CORE_RPC_2101_2102_TXPOOL_ADMIN_STATUS` |
| **P1-B03** | **Cronos** CCIP closure + **fund-ccip-bridges-with-link.sh** | **Open** | Needs CRO + LINK; `OPERATOR_READY_CHECKLIST` §1 |
| **P1-B04** | **Wemix** bridges | **Deferred** | `WEMIX_ACQUISITION_TABLED.md` |
| **P1-B05** | **LINK** on Mainnet relay | **Open** | `RELAY_BRIDGE_ADD_LINK_SUPPORT_RUNBOOK.md` |
| **P1-B06** | **Routing A2A8, B4B8, C3C8, D1D3** | **Open** | `TASKS_ROUTING_SWAP_CROSSCHAIN.md` |
| **P1-B07** | **Phase C / D** runbooks | **Open** | `PHASE_C_CW_AND_EDGE_POOLS_RUNBOOK.md`, `PHASE_D_OPTIONAL_CHECKLIST.md` |
### C — HYBX-BATCH-001 (4.995)
| ID | Task | Status | Notes |
|----|------|--------|--------|
| **P1-C01** | **H1H16** strict + standard categories | **Open** | `TODOS_CONSOLIDATED` HYBX section; `INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md` |
### D — External / third-party
| ID | Task | Status | Notes |
|----|------|--------|--------|
| **P1-D01** | **Ledger, Trust, CoinGecko/CMC, on-ramps** | **Open** | `REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST` §45; rows 1518 below |
### E — Technical plans (reconcile with backlog)
| ID | Task | Status | Notes |
|----|------|--------|--------|
| **P1-E01** | Reconcile **`dbis_chain_138_technical_master_plan.md`** with `TODOS_CONSOLIDATED` / `REMAINING_DEPLOYMENTS` | **Partial** | **2026-03-30:** “Repo backlog alignment” stub added to master plan + this file / live log cross-linked; full section-by-section audit still **Open** |
| **P1-E02** | Drive **`hybx_compliance_routing_sidecar_technical_plan.md`** / **`hybx_jurisdictional_cheat_sheets_technical_plan.md`** implementation tickets from repo | **Open** | **2026-03-30:** both plans now link **P1-E02**; engineering tickets / builds still **Open** |
### F — Repo-local verification (automation)
| ID | Task | Status | Notes |
|----|------|--------|--------|
| **P1-F01** | **`./scripts/run-completable-tasks-from-anywhere.sh`** | **Done** | 2026-03-30 |
| **P1-F02** | **`bash scripts/validation/validate-config-files.sh`** | **Done** | 2026-03-30 |
| **P1-F03** | **`cd dbis_core && pnpm test:iru-marketplace`** | **Done** | 2026-03-30 (10 tests) |
| **P1-F04** | **`bash scripts/verify/run-p1-local-verification.sh`** | **Done** | Wrapper added 2026-03-30; optional `--with-iru-tests` |
| **P1-F05** | **`check-contracts-on-chain-138.sh`** against Core RPC | **Done** | After env-load fix; **64/64** 2026-03-30 with `smart-contracts-master.json` + legacy CCIP pair (was **61/61** 2026-03-29) |
| **P1-F06** | **`verify-end-to-end-routing.sh`** `--profile=public` and `--profile=private` | **Done** | 2026-03-29; **Failed: 0**; evidence `e2e-verification-20260329_235044/` (public), `e2e-verification-20260329_235128/` (private) under `docs/04-configuration/verification-evidence/` |
| **P1-F07** | **Doc alignment:** on-chain count **61** across deployment runbooks, meta (`NEXT_STEPS_INDEX`, `GAPS_STATUS`, `DOCUMENTATION_CONSOLIDATION_PLAN`, etc.), dbis-rail, `reports/path_b_*` | **Done** | 2026-03-2930; canonical log [LIVE_VERIFICATION_LOG_2026-03-30.md](LIVE_VERIFICATION_LOG_2026-03-30.md) |
| **P1-F08** | **`submodules-clean.sh`** — clean working trees for **`dbis_core`**, **`smom-dbis-138`** | **Open** | Commit/push submodule work, stash, or adjust CI; required for reproducible `submodules-clean` / strict gates |
### P1 completion truth (2026-03-30)
**Completed:** **P1-F01F07**, **P1-A08** (on-chain check), env-load fix for `check-contracts-on-chain-138.sh`, E2E re-verify (2026-03-29), and **61→64** documentation sweep (ISO router + CCIP canonical/legacy + `smart-contracts-master.json` 2026-03-30). **Partial:** **P1-E01** (stub alignment only). **Open:** **P1-F08** (submodule hygiene); **P1-E02** and all **P1-A/B/C/D** except **A08** until operators run Proxmox/DB/CCIP/external steps.
**Not completable from repo alone:** submodule commits (**P1-F08**), LAN deploys, CCIP/LINK funding, Ledger/Trust/CoinGecko, security audits, **dbis_core** TS cleanup at scale — see [STILL_NOT_DONE_EXECUTION_CHECKLIST.md](STILL_NOT_DONE_EXECUTION_CHECKLIST.md).
---
## Remaining to complete (snapshot; V-rows updated through 2026-03-29)
| # | Task | Verified | Notes |
|---|------|----------|--------|
| V1 | **Token-aggregation build** | ✅ Done | Fixed 2026-03-03; re-verified 2026-03-06: `npm run build` passes. |
| V2 | **Add liquidity (Chain 138 PMM)** | ✅ Done (2026-03-06) | Mint + add-liquidity run: 1M cUSDT/cUSDC minted, 500k each added to Pool 1. Pool 1 now 2M/2M. To add more: `cd smom-dbis-138 && ./scripts/mint-for-liquidity.sh --add-liquidity`. |
| V3 | **RPC 2101 read-only** | ⚠️ If needed | Run `make-rpc-vmids-writable-via-ssh.sh` + `health-check-rpc-2101.sh` only when host I/O errors occur. Not required when preflight passes. |
| V4 | **Wemix / Gnosis / Celo CCIP bridges** | 🔄 Partial | Celo + **Gnosis** CCIP bridges deployed (2026-03-04). Gnosis: 0x4ab39b5B… (WETH9), 0xC15ACdBA… (WETH10); .env updated. **Wemix tabled** (no in-repo route ETH/BNB/POLY→WEMIX; see [WEMIX_ACQUISITION_TABLED](../03-deployment/WEMIX_ACQUISITION_TABLED.md)). Cronos: set CRONOS_RPC and CCIP_ROUTER_CRONOS in .env then run deploy-bridges-config-ready-chains.sh cronos. |
| V5 | **LINK relay, E2E 502s, operator run** | 🔄 Partial | **E2E 502s** ✅ Fixed 2026-03-06. **Routing E2E re-check** ✅ 2026-03-29 — public 44 domains + private 4, **Failed: 0** ([LIVE_VERIFICATION_LOG_2026-03-30.md](LIVE_VERIFICATION_LOG_2026-03-30.md)). **Operator run** ✅ 2026-03-06 (NPMplus RPC fix, Blockscout verify). **LINK support runbook** ⏳ Pending — [RELAY_BRIDGE_ADD_LINK_SUPPORT_RUNBOOK](../07-ccip/RELAY_BRIDGE_ADD_LINK_SUPPORT_RUNBOOK.md). |
| V6 | **External (Ledger, Trust, CoinGecko/CMC, on-ramps)** | ⏳ Pending | Per REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST §45. |
---
## HYBX-BATCH-001 — transaction package ship-ready (4.995)
**Goal:** `transaction-package-HYBX-BATCH-001.zip` passes `bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-root>` and `python3 scripts/omnl/verify-transaction-package-commitment.py <unzipped-root>`.
**Standard:** [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](../04-configuration/mifos-omnl-central-bank/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md). **Build:** `scripts/omnl/build-transaction-package-zip.sh` (optional `HYBX_LEDGER_FILE` for production ledger). **Live snapshot:** `scripts/omnl/omnl-transaction-package-snapshot.sh`.
### Strict gate (automated checklist)
| ID | Task | Notes |
|----|------|--------|
| **H1** | **Live OMNL snapshot** | Run `omnl-transaction-package-snapshot.sh` with Fineract credentials; `omnl_transaction_package_snapshot.json` must have `snapshotMeta.source == "live-api"`. Rebuild zip so Volume A Section 2 contains this file. |
| **H2** | **Snapshot freshness** | Per policy: `generatedAtUtc` within staleness window (standard default ≤ 72h before transmission). Refresh snapshot + rebuild if stale. |
| **H3** | **ISO 20022 vault manifest** | `Appendix/ISO20022_VAULT_MANIFEST_HYBX-BATCH-001.json`: replace all `REPLACE_*` placeholders (e.g. `REPLACE_WITH_VAULT_OBJECT_SHA256`) with real `sha256` / `storageLocation` / `messageId`; ≥1 message; align Section 4 index with ids. |
| **H4** | **Institutional attestation JSON** | Package must include `Appendix/INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json` (from `.EXAMPLE`, completed). `targetScorePerCategory` and each of 12 `categoryScores` ≥ 4.995; `certifiedBy` ≥ 2; finalize `legalFinality.counselMemoPdfSha256` and `independentAudit.reportPdfSha256` (no `REPLACE_`). Build picks up `proof_package/regulatory/…` or set `PACKAGE_4995_ATTESTATION_JSON`. |
| **H5** | **Regulatory references annex** | `Appendix/INDONESIA_REGULATORY_REFERENCES_ANNEX.md`: remove every `INSTITUTION: insert`; each row has instrument id + URL or internal doc id. |
| **H6** | **Re-verify** | Unzip rebuilt package; run strict script + commitment verify (commands in Validation commands below). |
### Standard categories (complete even when script is green)
| ID | Task | Notes |
|----|------|--------|
| **H7** | **Master proof manifest** | `Appendix/INDONESIA_MASTER_PROOF_MANIFEST.md`: every sections 115 primary artifact path exists in zip; no TODO/TBD on mandatory index lines. |
| **H8** | **Ledger provenance** | If 215k-row file is system-of-record, document in attestation (`provenance.hybxLedgerSource` / equivalent); build with `HYBX_LEDGER_FILE` when binding production extract. |
| **H9** | **AML / PPATK schedule** | `Appendix/AML_PPATK_EVIDENCE_SCHEDULE_HYBX-BATCH-001.md`: complete through section 6; sanctions / PEP / STR-SAR done or documented nil with approver name/date. |
| **H10** | **BI reporting crosswalk** | `Appendix/BI_REPORTING_CROSSWALK_HYBX-BATCH-001.md`: no blank cells (instrument id, obligation, frequency, owner). |
| **H11** | **MoF memo** | `Appendix/MOF_ALIGNMENT_MEMO_HYBX-BATCH-001.md`: signed with role/title + date; hash/e-sign per process. |
| **H12** | **OJK prudential bridge** | `Appendix/OJK_PRUDENTIAL_BRIDGE_HYBX-BATCH-001.md`: mappings filled; N/A only where justified. |
| **H13** | **Legal finality** | Meet `LEGAL_FINALITY_COUNSEL_MEMO_REQUIREMENTS_HYBX-BATCH-001.md`; counsel memo PDF or hash in SUBREG; ties to H4. |
| **H14** | **Independent audit (Section 15)** | Meet `INDEPENDENT_AUDIT_4_995_REQUIREMENTS_HYBX-BATCH-001.md`; report hash in manifest/attestation; ties to H4. |
| **H15** | **TSA / QES (if policy requires)** | Run `apply-qes-tsa-to-staging.sh` with real `TSA_URL` / `QES_SIGN_*` before zipping, or document waiver in attestation. |
| **H16** | **Final archive** | One clean `build-transaction-package-zip.sh` after all sources final; ship the exact tree that passed H6. |
---
## First (before any Chain 138 deploy)
Verified 2026-03-06: preflight ✅, 0a balance check ✅ (script runs; WETH/cUSDT/cUSDC = 0), config validation ✅, on-chain **59/59 that day** ✅. **Current bytecode check:** target **64/64**`./scripts/verify/check-contracts-on-chain-138.sh http://192.168.11.211:8545`. Re-run 0a/0/0c before each deploy.
| # | Task | Owner | Ref |
|---|------|--------|-----|
| 0a | **Check deployer gas (Chain 138):** Run balance/gas check using **Core RPC only**. | Operator/LAN | `RPC_URL_138=http://192.168.11.211:8545 ./scripts/deployment/check-deployer-balance-chain138-and-funding-plan.sh` or `cd smom-dbis-138 && ./scripts/deployment/check-balances-gas-and-deploy.sh` |
| 0b | **Core Besu RPC (VMID 2101) use IP:port, not FQDN:** Set `RPC_URL_138=http://192.168.11.211:8545` in `smom-dbis-138/.env` for admin/deploy. Do not use `https://rpc-core.d-bis.org` for deployment (DNS/tunnel can fail; IP is direct to node). | Operator | [RPC_ENDPOINTS_MASTER](../04-configuration/RPC_ENDPOINTS_MASTER.md), [VMID_IP_FIXED_REFERENCE](../11-references/VMID_IP_FIXED_REFERENCE.md) |
| 0c | **Test all contracts before deploying:** Run from repo root (see commands below). Unit-only run verified 2026-03-06 (457 tests passed). Full run can take 515+ min. | Anyone | [DEPLOYMENT_ORDER_OF_OPERATIONS](../03-deployment/DEPLOYMENT_ORDER_OF_OPERATIONS.md) § Phase 0.8 |
**Test-all-contracts commands (from repo root):**
```bash
# Full build + test (can take 515+ minutes)
./scripts/deployment/test-all-contracts-before-deploy.sh
# Quick check: print commands only
./scripts/deployment/test-all-contracts-before-deploy.sh --dry-run
# Faster: unit tests only (skip Fork/Mainnet/Integration/e2e)
./scripts/deployment/test-all-contracts-before-deploy.sh --no-match "Fork|Mainnet|Integration|e2e"
# Include alltra-lifi-settlement
./scripts/deployment/test-all-contracts-before-deploy.sh --alltra
```
| 0 | **Before Chain 138 deploy:** Run preflight (RPC, dotenv, nonce, optional cost). Preflight defaults to `http://192.168.11.211:8545` when `RPC_URL_138` unset. | Anyone | `./scripts/deployment/preflight-chain138-deploy.sh [--cost]`; [DEPLOYMENT_ORDER_OF_OPERATIONS](../03-deployment/DEPLOYMENT_ORDER_OF_OPERATIONS.md) § Phase 0 |
---
## Routing, swap, and cross-chain
**Full list and commands:** [TASKS_ROUTING_SWAP_CROSSCHAIN.md](TASKS_ROUTING_SWAP_CROSSCHAIN.md).
| ID | Area | Task | Status / notes |
|----|------|------|-----------------|
| **A1** | Same-chain swap | Add liquidity to PMM pools (cUSDT/cUSDC first) | ✅ Done 2026-03-06 (Pool 1: 2M/2M). Mint more + add: `mint-for-liquidity.sh --add-liquidity`. |
| **A2** | Same-chain swap | Token-aggregation indexes DODO on 138 | Set CHAIN_138_DODO_PMM_INTEGRATION; GET /api/v1/quote returns DODO quotes. |
| **A3** | Same-chain swap | Expose token-aggregation API for dApps/Snap | Proxy /api/v1/* or GATSBY_SNAP_API_BASE_URL. |
| **A4** | Same-chain (opt.) | Deploy EnhancedSwapRouter on 138 | After Uniswap/Balancer pools exist. |
| **A5** | Same-chain (opt.) | N-hop quote/pathfinding in token-aggregation | Single-hop only today. |
| **B1** | Cross-chain | Cronos (25): deploy CCIP bridges + complete-config | Fund ~15 CRO; deploy-bridges-config-ready-chains.sh cronos. |
| **B2** | Cross-chain | Wemix (1111): deploy CCIP bridges + complete-config | Fund ~0.4 WEMIX; WEMIX_ACQUISITION_TABLED. |
| **B3** | Cross-chain | Fund all CCIP bridges with LINK | fund-ccip-bridges-with-link.sh. |
| **B4** | Cross-chain | Routing registry + token-mapping include new chains | Update routing-registry.json, token-mapping-multichain.json. |
| **B5** | Cross-chain | Wemix token addresses (scan.wemix.com to config) | High priority 1. |
| **B6** | Cross-chain | GET /api/v1/bridge/routes returns Chain 138 bridges | BRIDGE_LIST_JSON_URL or built-in. |
| **B7** | Cross-chain | Token mapping API 138 to destination | token-mapping-multichain.json includes all target chains. |
| **B8** | Cross-chain | AlltraAdapter setBridgeFee + env | ALLTRA_BRIDGE_FEE, ALLTRA_ADAPTER_CHAIN138. |
| **C1-C2** | Swap-bridge-swap | Complete Flow A (liquidity) + Flow B (bridge + LINK) | Prerequisites. |
| **C3** | Swap-bridge-swap | POST /api/bridge/quote with sourceSwapQuote + destinationSwapQuote | BRIDGE_REGISTRY_ADDRESS; optional router env. |
| **C4** | Swap-bridge-swap | Destination DEX/aggregator for destinationSwapQuote | Wire QuoteService per chain. |
| **C5** | Swap-bridge-swap (opt.) | Deploy SwapBridgeSwapCoordinator | One tx: swap then bridge then swap. |
| **C6-C8** | Swap-bridge-swap | Bridge UI, full-path quote UI, E2E test | Code/Op. |
| **D1** | Phase C | Deploy or bridge cW* per chain; deployment-status + .env | PHASE_C_CW_AND_EDGE_POOLS_RUNBOOK. |
| **D2** | Phase C | Create and fund PMM edge pools per pool-matrix | deployment-status.json. |
| **D3** | Phase C (opt.) | Stabilization bot or peg bands for cW* | cross-chain-pmm-lps. |
| **E1** | Ops | Deployer gas auto-route | deployer-gas-auto-route.sh; DEPLOYER_GAS_AUTO_ROUTE_RUNBOOK. |
| **E2** | Ops | Acquire CRO and WEMIX (manual routes) | acquire-cro-and-wemix-gas.sh; cro-wemix-swap-routes.json. |
---
## High priority
| # | Task | Owner | Ref |
|---|------|--------|-----|
| 1 | **Wemix (1111) token addresses:** Confirm WETH, USDT, USDC on [scan.wemix.com/tokens](https://scan.wemix.com/tokens); if different official addresses, update `config/token-mapping-multichain.json` and WEMIX_TOKEN_VERIFICATION.md; run `validate-config-files.sh`. | Operator | RECOMMENDED_COMPLETION_CHECKLIST §1 |
| 2 | **Gnosis, Celo, Wemix CCIP bridges:** **Celo + Gnosis** deployed 2026-03-04 (see **V4**). **Remain:** Cronos closure + LINK funding, Wemix (tabled), per-chain `complete-config` / env — same runbook. | Operator/LAN | CONFIG_READY_CHAINS_COMPLETION_RUNBOOK |
---
## Medium priority
| # | Task | Owner | Ref |
|---|------|--------|-----|
| 3 | **LINK support on Mainnet relay:** Option A or B per runbook; implement, deploy, fund LINK; set `relaySupported: true` for LINK in token-mapping.json; update docs. | Operator/LAN | RELAY_BRIDGE_ADD_LINK_SUPPORT_RUNBOOK |
| 4 | **Run "from anywhere" checks periodically:** `./scripts/run-completable-tasks-from-anywhere.sh` | Anyone | NEXT_STEPS_FOR_YOU §2 — ✅ 2026-03-06; re-run after submodule or config changes |
| 5 | **Placeholders (code):** All done or documented per [REQUIRED_FIXES_UPDATES_GAPS.md](../REQUIRED_FIXES_UPDATES_GAPS.md) §4: canonical addresses (env), AlltraAdapter setBridgeFee, smart accounts kit (env + runbook), quote service FABRIC_CHAIN_ID (default 999), .bak ([BAK_FILES_DEPRECATION.md](../../smom-dbis-138/docs/BAK_FILES_DEPRECATION.md)). | Dev | REQUIRED_FIXES_UPDATES_GAPS |
| 6 | **API keys:** Sign up per reports/API_KEYS_REQUIRED.md; add to `.env`. | Anyone | NEXT_STEPS_FOR_YOU §2 |
---
## When you have LAN / Proxmox + secrets
| # | Task | Owner | Ref |
|---|------|--------|-----|
| 7 | **Blockscout verification:** `./scripts/run-all-operator-tasks-from-lan.sh` (loads dotenv) or `./scripts/verify/run-contract-verification-with-proxy.sh`. Last run 2026-03-06 (submissions done). | Operator/LAN | CONTRACT_DEPLOYMENT_RUNBOOK |
| 8 | **Fix E2E 502s (if needed):** ✅ Fixed 2026-03-06 (MIM4U 7810 added to fix-all-502s-comprehensive.sh; address-all-remaining-502s + NPM + E2E → **37** public domains **Failed: 0** that day). **2026-03-29** public profile **44** domains **Failed: 0** ([LIVE_VERIFICATION_LOG_2026-03-30.md](LIVE_VERIFICATION_LOG_2026-03-30.md)). Re-run `./scripts/maintenance/address-all-remaining-502s.sh [--e2e]` if 502s recur. | Operator/LAN | 502_DEEP_DIVE_ROOT_CAUSES_AND_FIXES |
| 9 | **Operator tasks script:** `./scripts/run-all-operator-tasks-from-lan.sh [--deploy] [--create-vms]`. Last run 2026-03-06 (Wave 0 NPMplus RPC fix + Blockscout verify; use --skip-backup if NPM_PASSWORD unset). | Operator/LAN | STEPS_FROM_PROXMOX_OR_LAN_WITH_SECRETS |
| 10 | **sendCrossChain (real):** `bash scripts/bridge/run-send-cross-chain.sh 0.01` (when PRIVATE_KEY and LINK ready) | Operator/LAN | NEXT_STEPS_OPERATOR W0-2 |
| 11 | **NPMplus backup:** `bash scripts/verify/backup-npmplus.sh` | Operator/LAN | NEXT_STEPS_OPERATOR W0-3 |
| 12 | **Mint tokens to deployer for liquidity/bridges:** See [TOKENS_AND_NETWORKS_MINTABLE_TO_DEPLOYER](../11-references/TOKENS_AND_NETWORKS_MINTABLE_TO_DEPLOYER.md) — Chain 138: owner mint (cUSDT, cUSDC, cEURC, …); Cronos: MintController (D-WIN W); other chains: acquire via wrap/bridge/DEX. | Operator/LAN | TOKENS_AND_NETWORKS_MINTABLE_TO_DEPLOYER |
---
## Repo / CI hygiene
| # | Task | Owner | Ref |
|---|------|--------|-----|
| R1 | **Submodule clean trees:** `bash scripts/verify/submodules-clean.sh` → exit **0** before merge/CI that enforces clean submodules. Today: dirty **`dbis_core/`**, **`smom-dbis-138/`** (modified + untracked). | Dev | **P1-F08** above; [SUBMODULE_HYGIENE.md](SUBMODULE_HYGIENE.md) |
---
## E2E Flows (Full Parallel)
All tasks from [TASKS_TO_INCREASE_ALL_E2E_FLOWS.md](TASKS_TO_INCREASE_ALL_E2E_FLOWS.md). Run in waves; within each wave run in **full parallel** when possible. Script: `./scripts/run-e2e-flow-tasks-full-parallel.sh [--dry-run]`.
| Wave | Tasks | Run in parallel |
|------|--------|-----------------|
| E0 | X1, X6, X7, A1 — RPC writable, TransactionMirror, deployer funded, Core RPC | Op |
| E1 | A2, A3, A4 — PMM pools create, register, add liquidity (Chain 138) | run-pmm-full-parity-all-phases.sh Phase 1 |
| E2 | B1, B2 — CCIP config and fund bridges (per chain parallel) | complete-config-ready-chains.sh, fund-ccip-bridges-with-link.sh |
| E3 | A5, B4, B5, C3, X8 — token-aggregation env, bridge routes, token mapping, quote API, token list | Code/Op |
| E4 | X2, X3, X4, X5 — Blockscout verify, E2E routing, explorer E2E, token-aggregation health | Op/LAN |
| E5 | X10, X11, X12 — cUSDT/cUSDC and PMM on L2s; token-aggregation for new chains | run-pmm-full-parity Phase 2 (parallel per chain) |
| E6 | B6, B7, C5, C6, C7 — Bridge UI, test bridge, destination DEX, full path quote UI, E2E test | Code/Op |
| E7 | X13, X14 — Update PMM_DEX_ROUTING_STATUS; runbooks | Doc |
Flow A (swap 138): A1A6; A7A8 optional. Flow B (bridge): B1B7. Flow C (swap-bridge-swap): C1C7 (depends on A+B).
---
## Token contract deployments (remaining)
Full list: [TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md](../11-references/TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md).
| # | Task | Owner | Ref |
|---|------|--------|-----|
| T1 | **DeployCompliantFiatTokens (Chain 138):** cEURC, cEURT, cGBPC, cGBPT, cAUDC, cJPYC, cCHFC, cCADC, cXAUC, cXAUT. Prereq: CREATE2_FACTORY_ADDRESS. Use Core RPC (IP:port). | ✅ Done 2026-02-27 | TOKEN_CONTRACT_DEPLOYMENTS_REMAINING §1 |
| T2 | **Optional cCADT:** Uncomment cCADT line in DeployCompliantFiatTokens.s.sol and re-run script when needed (Tether-style CAD). | Dev/Op | TOKEN_CONTRACT_DEPLOYMENTS_REMAINING §1.2 |
| T3 | **cAUSDT:** Deploy or env when Alltra compliant USD token defined; no script in repo. | TBD | TOKEN_CONTRACT_DEPLOYMENTS_REMAINING §1.3 |
| T4 | **ACADT (ALL Mainnet 651940):** No script in repo; address TBD when Alltra adds CAD token. | TBD | TOKEN_CONTRACT_DEPLOYMENTS_REMAINING §2 |
| T5 | **cW* on public chains:** Deploy/bridge cW* per chain; create PMM edge pools per pool-matrix. | Operator | TOKEN_CONTRACT_DEPLOYMENTS_REMAINING §3 |
| T6 | **D-WIN W on 138/651940 (optional):** Extend DeployISO4217WSystem for Chain 138 or 651940 if desired. | Planned | TOKEN_CONTRACT_DEPLOYMENTS_REMAINING §4 |
| T7 | **Vault ac*/vdc*/sdc* for new base tokens:** After DeployCompliantFiatTokens, extend DeployAcVdcSdcVaults for each new base. | Operator/LAN | TOKEN_CONTRACT_DEPLOYMENTS_REMAINING §5 |
---
## Low priority (planned deployments)
**Note:** Numbers **L12L14** here are **not** the same as § “When you have LAN” **#12** (mint tokens) — different sections use independent numbering.
| # | Task | Owner | Ref |
|---|------|--------|-----|
| L12 | **AddressMapper on other chains:** Deploy via DeployAddressMapperOtherChain; set `mapper` in smart-contracts-master.json. (Cronos done.) | Planned | OPTIONAL_DEPLOYMENTS_START_HERE §A |
| L13 | **DODO PMM on 138:** Integration + **three pools** deployed; Pool 1 (cUSDT/cUSDC) funded **2M/2M** (2026-03-06; see **A1** / **V2**). **Still optional:** more liquidity, other pools / Phase 2 parity, `LIQUIDITY_POOLS_MASTER_MAP` updates. | Planned | NEXT_STEPS_PMM_FULL_PARITY_AND_ALL_POOLS |
| L14 | **Mainnet trustless stack:** Deploy Lockbox138 (138) + InboxETH, BondManager, LiquidityPoolETH (Mainnet) per runbook; fund liquidity. | Planned | OPTIONAL_DEPLOYMENTS_START_HERE §C |
---
## External / third-party
| # | Task | Owner | Ref |
|---|------|--------|-----|
| 15 | **Ledger:** Await response to Tally form; sign agreement and follow integration steps. | You | ADD_CHAIN138_TO_LEDGER_LIVE |
| 16 | **Trust Wallet:** Open PR to trustwallet/wallet-core with Chain 138 registry entry. | You | ADD_CHAIN138_TO_TRUST_WALLET |
| 17 | **Consensys:** Outreach for native Swaps/Bridge for Chain 138. | You | CONSENSYS_OUTREACH_PACKAGE |
| 18 | **CoinGecko/CMC:** Submit Chain 138 and tokens for MetaMask USD. | You | COINGECKO_SUBMISSION_GUIDE |
---
## Tezos / Etherlink (when scoped)
| # | Task | Owner | Ref |
|---|------|--------|-----|
| 19 | Verify Etherlink (42793) on CCIP; record selector/Router/fee or "custom relay only." | Ops/Eng | TEZOS_CCIP_REMAINING_ITEMS |
| 20 | Verify Jumper and LiFi for 138, 651940, 42793, Tezos; update support matrix. | Eng | TEZOS_CCIP_REMAINING_ITEMS |
| 21 | InitializeRegistry, DeployAllAdapters; Etherlink receiver; Tezos L1 and Etherlink relay services. | Operator/LAN | TEZOS_CCIP_REMAINING_ITEMS |
---
## Deployment / infrastructure phases
| Phase | Tasks | Status |
|-------|--------|--------|
| Phase 1 — VLAN | UDM Pro VLAN; VLAN-aware bridge; migrate services to VLANs | ⏳ Pending |
| Phase 2 — Observability | Monitoring stack; Grafana via Cloudflare Access; alerts | ⏳ Pending |
| Phase 3 — CCIP fleet | CCIP Ops/Admin; commit/execute/RMN nodes; NAT pools | ⏳ Pending |
| Phase 4 — Sovereign tenants | Sovereign VLANs; tenant isolation; access control | ⏳ Pending |
| ~~Missing~~ containers 25062508 | **Destroyed 2026-02-08**; replaced by new RPC structure (2101, 2201, 2301, 23032308, 24002403). RPC range 25002505 only. No create action. See [MISSING_CONTAINERS_LIST.md](../03-deployment/MISSING_CONTAINERS_LIST.md). | Done (doc only) |
---
## Security & codebase
| # | Task | Ref |
|---|------|-----|
| 22 | **Security audits:** smom VLT-024, ISO-024; bridge BRG-VLT, BRG-ISO. | TODO_TASK_LIST_MASTER §5 |
| 23 | **dbis_core:** ~1186 TS errors (deferred). | TODO_TASK_LIST_MASTER §8 |
| 24 | **Paymaster (optional):** Deploy when sources ready. | SMART_ACCOUNTS_DEPLOYMENT_NOTE |
---
## Maintenance (ongoing)
| Task | Frequency |
|------|-----------|
| Monitor explorer sync / RPC health (e.g. VMID 2201) | Daily |
| Check config API uptime | Weekly |
| Review explorer logs | Weekly |
| Update token list | As needed |
| Fix E2E 502s when domains 502 | As needed — from LAN: `address-all-remaining-502s.sh` |
Cron: `schedule-daily-weekly-cron.sh --install`; NPMplus backup: `schedule-npmplus-backup-cron.sh --install`.
---
## Validation commands
| Check | Command |
|-------|---------|
| Completable from anywhere | `./scripts/run-completable-tasks-from-anywhere.sh` |
| Validate (Proxmox SSH) | `bash scripts/run-via-proxmox-ssh.sh validate [--host IP]` — shellcheck (full) + genesis validation; installs jq/shellcheck on host if missing |
| All validation (CI) | `bash scripts/verify/run-all-validation.sh [--skip-genesis]` |
| Config files | `bash scripts/validation/validate-config-files.sh` |
| On-chain (Chain 138) | `./scripts/verify/check-contracts-on-chain-138.sh [RPC_URL]` — expect **64/64** when Core RPC reachable (see script list) |
| E2E routing | `./scripts/verify/verify-end-to-end-routing.sh` |
| **Test all contracts (before deploy)** | `./scripts/deployment/test-all-contracts-before-deploy.sh` — use `--dry-run` / `--no-match "Fork|Mainnet|Integration|e2e"` / `--alltra` |
| **HYBX package commitment** | `python3 scripts/omnl/verify-transaction-package-commitment.py <unzipped-root>` | After unzip |
| **HYBX package 4.995 strict** | `bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-root>` | All H1H6 must pass |
---
## Gaps and additional recommendations (full checklist)
All gaps and additional recommendations to implement are consolidated in:
- **[TASKS_ROUTING_SWAP_CROSSCHAIN.md](TASKS_ROUTING_SWAP_CROSSCHAIN.md)** — Routing, swap, and cross-chain only: same-chain swap (A1A5), bridges and routing (B1B8), swapbridgeswap (C1C8), cW* edge pools (D1D3), deployer gas routing (E1E2).
- **[ADDITIONAL_RECOMMENDATIONS_TABLE.md](ADDITIONAL_RECOMMENDATIONS_TABLE.md)** — Immediate/blocking (V2V6), pre-deploy (0a0), high/medium/LAN (112), token deployments (T2T7), low priority (this file uses **L12L14** to avoid clashing with LAN **#12**), external (1518), operator R1R24, Proxmox (135), code quality (3643), documentation (4447, 6874), security (4852), config/testing (5367), infrastructure (7581), codebase (8291), MetaMask/explorer (92105), Tezos/LiFi/Jumper (106121), Besu (122126), maintenance (135139), E2E waves (E0E7), operator quick reference (22).
- **HYBX Transaction Composer** — TC1TC29 done (2026-03-29); see [HYBX Transaction Composer backlog](#hybx-transaction-composer-backlog).
- **[REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md](REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md)** — Required fixes (§1), gaps (§2), additional deployments (§3), operator/LAN tasks (§4), external (§5), quick reference (§6).
**Run in full parallel when possible** (scriptable tasks; from repo root):
| # | Task | Command | Notes |
|---|------|---------|-------|
| 1 | Completable from anywhere | `./scripts/run-completable-tasks-from-anywhere.sh` | No LAN required |
| 2 | Preflight (Chain 138) | `./scripts/deployment/preflight-chain138-deploy.sh [--cost]` | Use Core RPC |
| 3 | Deployer gas check | `RPC_URL_138=http://192.168.11.211:8545 ./scripts/deployment/check-deployer-balance-chain138-and-funding-plan.sh` | LAN/RPC required |
| 4 | Deployer gas auto-route | `./scripts/deployment/deployer-gas-auto-route.sh [--dry-run]` | Optional --dry-run |
| 5 | Validate config files | `./scripts/validation/validate-config-files.sh` | |
| 6 | Test all contracts (dry-run) | `./scripts/deployment/test-all-contracts-before-deploy.sh --dry-run` | Or run full / unit-only |
| 7 | On-chain check (Chain 138) | `./scripts/verify/check-contracts-on-chain-138.sh [RPC_URL]` | LAN/RPC required |
| 8 | E2E flow tasks (parallel) | `./scripts/run-e2e-flow-tasks-full-parallel.sh [--dry-run]` | See TASKS_TO_INCREASE_ALL_E2E_FLOWS |
| 9 | Operator tasks (LAN) | `./scripts/run-all-operator-tasks-from-lan.sh [--deploy]` | LAN + secrets required |
Run 1, 4, 5, 6 in parallel from anywhere; 2, 3, 7, 8, 9 when LAN/RPC and secrets are available.
---
## HYBX Transaction Composer backlog
Package: `transaction-composer/`. **Completed in app (2026-03-29):** TC1TC29 implemented or addressed as follows (verify with `pnpm composer:test` / `pnpm composer:test:e2e`).
| ID | Status | Implementation notes |
|----|--------|----------------------|
| **TC1** | Done | Palette: separate **Liquidity** and **FX** groups. |
| **TC2** | Done | **Stress graph** only if `import.meta.env.DEV`. |
| **TC3** | Done | `bumpFitView()` after **undo** / **redo**. |
| **TC4** | Done | **Ctrl/Cmd+Z**, **Ctrl/Cmd+Shift+Z**, **Ctrl/Cmd+Y** (outside inputs). |
| **TC5** | Done | `deleteKeyCode` + canvas `aria-label` documenting Delete/Backspace. |
| **TC6** | Done | `confirm()` before stress load. |
| **TC7** | Done | Chat list `ref` + `useEffect` scroll to bottom. |
| **TC8** | Done | `interpretPromptLocal` / `interpretPromptAsync` return `{ ok, error? }`; chat shows errors. |
| **TC9** | Done | `VITE_GRAPH_LLM_URL` + `interpretPromptViaLlm` (retries, `AbortSignal`). |
| **TC10** | Done | Chat **busy** state + **Cancel** + disabled submit while async. |
| **TC11** | Done | Bottom bar shows `lastError` in **failed** state. |
| **TC12** | Done | `signalMachineReset` on Load / Clear / Stress / chat `applyGraph`; BottomBar **RESET** XState. |
| **TC13** | Done | Dry Run **title** + Results empty-state copy. |
| **TC14** | Done | `requestResultsNav` + ResultsPanel tab switch on validate / dry-run. |
| **TC15** | Done | Banner when Load finds nothing or parse fails. |
| **TC16** | Done | **QuotaExceededError** banner on save. |
| **TC17** | Done | `transaction-composer/.env.example`. |
| **TC18** | Done | Optional `VITE_EXECUTE_API_TOKEN`; dev-only request debug log line in `client.ts`. |
| **TC19** | Done | `role="banner"` / `main` / `aside` **aria-label**s; chat `aria-live`. |
| **TC20** | Done | Palette **Add**`enqueuePaletteAdd` / canvas center drop. |
| **TC21** | Done | Collapsible palette & chat; `min()` widths. |
| **TC22** | Done | Playwright `e2e/composer.spec.ts` (port **5182**). |
| **TC23** | Done | Vitest + RTL: `ResultsPanel.test.tsx`, `BottomBar.test.tsx`. |
| **TC24** | Done | `stressTestGraph.test.ts` (edges + store). |
| **TC25** | Done | README: Profiler + memo note (nodes already `memo`). |
| **TC26** | Done | `transaction-composer/README.md`. |
| **TC27** | Done | Export button **title** (stale JSON hint). |
| **TC28** | Done | `schemaVersion: 2` in save payload; reject future unknown versions. |
| **TC29** | Done | Palette **title** hints reference cheat sheets + sidecar plan files. |
**Also:** `validateConnection` allows **liquidity → fee** when FX is omitted (matches interpreter graphs). **Fix:** Results “Compiled” topology line uses `orderedNodeIds.length` (was incorrect).
---
## References
- [TASKS_ROUTING_SWAP_CROSSCHAIN.md](TASKS_ROUTING_SWAP_CROSSCHAIN.md) — routing, swap, and cross-chain tasks (A1A5, B1B8, C1C8, D1D3, E1E2)
- [RECOMMENDATIONS_AND_FIXES_BEFORE_DEPLOY.md](../03-deployment/RECOMMENDATIONS_AND_FIXES_BEFORE_DEPLOY.md) — all recommendations and fixes before deploying smart contracts and PMM pools
- [TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md](../11-references/TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md) — remaining token deployments by category
- [OPERATOR_READY_CHECKLIST.md](OPERATOR_READY_CHECKLIST.md) — copy-paste commands for all operator/LAN tasks
- [NEXT_STEPS_AND_REMAINING_TODOS.md](NEXT_STEPS_AND_REMAINING_TODOS.md) — full detail and completed items
- [NEXT_STEPS_MASTER.md](NEXT_STEPS_MASTER.md) — master list and phases
- [NEXT_STEPS_FOR_YOU.md](NEXT_STEPS_FOR_YOU.md) — your next actions
- [NEXT_STEPS_OPERATOR.md](NEXT_STEPS_OPERATOR.md) — operator runbook
- [TODO_TASK_LIST_MASTER.md](TODO_TASK_LIST_MASTER.md) — fixes, gas, verification, 1139 index
- [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](../04-configuration/mifos-omnl-central-bank/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md) — HYBX-BATCH-001 4.995 criteria; [scripts/omnl/README.md](../../scripts/omnl/README.md) — snapshot, zip build, strict check
- [RECOMMENDED_COMPLETION_CHECKLIST.md](../07-ccip/RECOMMENDED_COMPLETION_CHECKLIST.md) — CCIP/mapper checklist