feat: explorer API, wallet, CCIP scripts, and config refresh
- Backend REST/gateway/track routes, analytics, Blockscout proxy paths. - Frontend wallet and liquidity surfaces; MetaMask token list alignment. - Deployment docs, verification scripts, address inventory updates. Check: go build ./... under backend/ (pass). Made-with: Cursor
This commit is contained in:
File diff suppressed because it is too large
Load Diff
842
backend/api/rest/config/metamask/GRU_V2_DEPLOYMENT_QUEUE.json
Normal file
842
backend/api/rest/config/metamask/GRU_V2_DEPLOYMENT_QUEUE.json
Normal file
@@ -0,0 +1,842 @@
|
||||
{
|
||||
"generatedAt": "2026-04-04T16:10:52.278Z",
|
||||
"summary": {
|
||||
"wave1Assets": 7,
|
||||
"wave1TransportActive": 0,
|
||||
"wave1TransportPending": 7,
|
||||
"wave1WrappedSymbols": 10,
|
||||
"wave1WrappedSymbolsCoveredByPoolMatrix": 10,
|
||||
"wave1WrappedSymbolsMissingFromPoolMatrix": 0,
|
||||
"desiredPublicEvmTargets": 11,
|
||||
"chainsWithLoadedCwSuites": 10,
|
||||
"chainsMissingCwSuites": 1,
|
||||
"firstTierWave1PoolsPlanned": 110,
|
||||
"firstTierWave1PoolsRecordedLive": 6,
|
||||
"protocolsTracked": 5,
|
||||
"protocolsLive": 1
|
||||
},
|
||||
"assetQueue": [
|
||||
{
|
||||
"code": "EUR",
|
||||
"name": "Euro",
|
||||
"canonicalSymbols": [
|
||||
"cEURC",
|
||||
"cEURT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWEURC",
|
||||
"cWEURT"
|
||||
],
|
||||
"transportActive": false,
|
||||
"canonicalDeployed": true,
|
||||
"x402Ready": false,
|
||||
"coveredByPoolMatrix": true,
|
||||
"nextSteps": [
|
||||
"enable_bridge_controls",
|
||||
"set_max_outstanding",
|
||||
"promote_transport_overlay",
|
||||
"deploy_public_pools"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "JPY",
|
||||
"name": "Japanese Yen",
|
||||
"canonicalSymbols": [
|
||||
"cJPYC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWJPYC"
|
||||
],
|
||||
"transportActive": false,
|
||||
"canonicalDeployed": true,
|
||||
"x402Ready": false,
|
||||
"coveredByPoolMatrix": true,
|
||||
"nextSteps": [
|
||||
"enable_bridge_controls",
|
||||
"set_max_outstanding",
|
||||
"promote_transport_overlay",
|
||||
"deploy_public_pools"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "GBP",
|
||||
"name": "Pound Sterling",
|
||||
"canonicalSymbols": [
|
||||
"cGBPC",
|
||||
"cGBPT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWGBPC",
|
||||
"cWGBPT"
|
||||
],
|
||||
"transportActive": false,
|
||||
"canonicalDeployed": true,
|
||||
"x402Ready": false,
|
||||
"coveredByPoolMatrix": true,
|
||||
"nextSteps": [
|
||||
"enable_bridge_controls",
|
||||
"set_max_outstanding",
|
||||
"promote_transport_overlay",
|
||||
"deploy_public_pools"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "AUD",
|
||||
"name": "Australian Dollar",
|
||||
"canonicalSymbols": [
|
||||
"cAUDC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWAUDC"
|
||||
],
|
||||
"transportActive": false,
|
||||
"canonicalDeployed": true,
|
||||
"x402Ready": false,
|
||||
"coveredByPoolMatrix": true,
|
||||
"nextSteps": [
|
||||
"enable_bridge_controls",
|
||||
"set_max_outstanding",
|
||||
"promote_transport_overlay",
|
||||
"deploy_public_pools"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "CAD",
|
||||
"name": "Canadian Dollar",
|
||||
"canonicalSymbols": [
|
||||
"cCADC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWCADC"
|
||||
],
|
||||
"transportActive": false,
|
||||
"canonicalDeployed": true,
|
||||
"x402Ready": false,
|
||||
"coveredByPoolMatrix": true,
|
||||
"nextSteps": [
|
||||
"enable_bridge_controls",
|
||||
"set_max_outstanding",
|
||||
"promote_transport_overlay",
|
||||
"deploy_public_pools"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "CHF",
|
||||
"name": "Swiss Franc",
|
||||
"canonicalSymbols": [
|
||||
"cCHFC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWCHFC"
|
||||
],
|
||||
"transportActive": false,
|
||||
"canonicalDeployed": true,
|
||||
"x402Ready": false,
|
||||
"coveredByPoolMatrix": true,
|
||||
"nextSteps": [
|
||||
"enable_bridge_controls",
|
||||
"set_max_outstanding",
|
||||
"promote_transport_overlay",
|
||||
"deploy_public_pools"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "XAU",
|
||||
"name": "Gold",
|
||||
"canonicalSymbols": [
|
||||
"cXAUC",
|
||||
"cXAUT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWXAUC",
|
||||
"cWXAUT"
|
||||
],
|
||||
"transportActive": false,
|
||||
"canonicalDeployed": true,
|
||||
"x402Ready": false,
|
||||
"coveredByPoolMatrix": true,
|
||||
"nextSteps": [
|
||||
"enable_bridge_controls",
|
||||
"set_max_outstanding",
|
||||
"promote_transport_overlay",
|
||||
"deploy_public_pools"
|
||||
]
|
||||
}
|
||||
],
|
||||
"chainQueue": [
|
||||
{
|
||||
"chainId": 1,
|
||||
"name": "Ethereum Mainnet",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 12,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC"
|
||||
],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 10,
|
||||
"name": "Optimism",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 12,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 25,
|
||||
"name": "Cronos",
|
||||
"hubStable": "USDT",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 12,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDT",
|
||||
"cWEURT/USDT",
|
||||
"cWGBPC/USDT",
|
||||
"cWGBPT/USDT",
|
||||
"cWAUDC/USDT",
|
||||
"cWJPYC/USDT",
|
||||
"cWCHFC/USDT",
|
||||
"cWCADC/USDT",
|
||||
"cWXAUC/USDT",
|
||||
"cWXAUT/USDT"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 56,
|
||||
"name": "BSC",
|
||||
"hubStable": "USDT",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 14,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDT",
|
||||
"cWEURT/USDT",
|
||||
"cWGBPC/USDT",
|
||||
"cWGBPT/USDT",
|
||||
"cWAUDC/USDT",
|
||||
"cWJPYC/USDT",
|
||||
"cWCHFC/USDT",
|
||||
"cWCADC/USDT",
|
||||
"cWXAUC/USDT",
|
||||
"cWXAUT/USDT"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 100,
|
||||
"name": "Gnosis",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 12,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 137,
|
||||
"name": "Polygon",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 13,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 42161,
|
||||
"name": "Arbitrum One",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 12,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 42220,
|
||||
"name": "Celo",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 14,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 43114,
|
||||
"name": "Avalanche C-Chain",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 14,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 8453,
|
||||
"name": "Base",
|
||||
"hubStable": "USDC",
|
||||
"bridgeAvailable": true,
|
||||
"cwTokenCount": 12,
|
||||
"wave1WrappedCoverage": 10,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDC",
|
||||
"cWEURT/USDC",
|
||||
"cWGBPC/USDC",
|
||||
"cWGBPT/USDC",
|
||||
"cWAUDC/USDC",
|
||||
"cWJPYC/USDC",
|
||||
"cWCHFC/USDC",
|
||||
"cWCADC/USDC",
|
||||
"cWXAUC/USDC",
|
||||
"cWXAUT/USDC"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "deploy_first_tier_wave1_pools"
|
||||
},
|
||||
{
|
||||
"chainId": 1111,
|
||||
"name": "Wemix",
|
||||
"hubStable": "USDT",
|
||||
"bridgeAvailable": false,
|
||||
"cwTokenCount": 0,
|
||||
"wave1WrappedCoverage": 0,
|
||||
"plannedWave1Pairs": [
|
||||
"cWEURC/USDT",
|
||||
"cWEURT/USDT",
|
||||
"cWGBPC/USDT",
|
||||
"cWGBPT/USDT",
|
||||
"cWAUDC/USDT",
|
||||
"cWJPYC/USDT",
|
||||
"cWCHFC/USDT",
|
||||
"cWCADC/USDT",
|
||||
"cWXAUC/USDT",
|
||||
"cWXAUT/USDT"
|
||||
],
|
||||
"recordedWave1Pairs": [],
|
||||
"nextStep": "complete_cw_suite_then_deploy_pools"
|
||||
}
|
||||
],
|
||||
"protocolQueue": [
|
||||
{
|
||||
"key": "uniswap_v3",
|
||||
"name": "Uniswap v3",
|
||||
"role": "primary_public_pool_venue",
|
||||
"deploymentStage": "stage1_first_tier_pools",
|
||||
"activePublicPools": 0,
|
||||
"currentState": "queued_not_live",
|
||||
"activationDependsOn": [
|
||||
"cW token suite deployed on destination chain",
|
||||
"first-tier cW/hub pools created",
|
||||
"pool addresses written to deployment-status.json",
|
||||
"token-aggregation/indexer visibility enabled"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "dodo_pmm",
|
||||
"name": "DODO PMM",
|
||||
"role": "primary_public_pmm_edge_venue",
|
||||
"deploymentStage": "stage1_first_tier_pools",
|
||||
"activePublicPools": 10,
|
||||
"currentState": "partially_live_on_public_cw_mesh",
|
||||
"activationDependsOn": [
|
||||
"cW token suite deployed on destination chain",
|
||||
"first-tier cW/hub pools created",
|
||||
"pool addresses written to deployment-status.json",
|
||||
"policy controls and MCP visibility attached"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "balancer",
|
||||
"name": "Balancer",
|
||||
"role": "secondary_basket_liquidity",
|
||||
"deploymentStage": "stage2_post_first_tier_liquidity",
|
||||
"activePublicPools": 0,
|
||||
"currentState": "queued_not_live",
|
||||
"activationDependsOn": [
|
||||
"first-tier Uniswap v3 or DODO PMM liquidity live",
|
||||
"basket design approved for the destination chain",
|
||||
"pool addresses written to deployment-status.json"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "curve_3",
|
||||
"name": "Curve 3",
|
||||
"role": "secondary_stable_curve",
|
||||
"deploymentStage": "stage2_post_first_tier_liquidity",
|
||||
"activePublicPools": 0,
|
||||
"currentState": "queued_not_live",
|
||||
"activationDependsOn": [
|
||||
"first-tier stable liquidity live",
|
||||
"stable basket design approved for the destination chain",
|
||||
"pool addresses written to deployment-status.json"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "one_inch",
|
||||
"name": "1inch",
|
||||
"role": "routing_aggregation_layer",
|
||||
"deploymentStage": "stage3_after_underlying_pools_live",
|
||||
"activePublicPools": 0,
|
||||
"currentState": "queued_not_live",
|
||||
"activationDependsOn": [
|
||||
"underlying public pools already live",
|
||||
"router/indexer visibility enabled",
|
||||
"token-aggregation/provider capability surfaced publicly"
|
||||
]
|
||||
}
|
||||
],
|
||||
"blockers": [
|
||||
"Desired public EVM targets still missing cW suites: Wemix.",
|
||||
"Wave 1 transport is still pending for: EUR, JPY, GBP, AUD, CAD, CHF, XAU.",
|
||||
"Arbitrum bootstrap remains blocked on the current Mainnet hub leg: tx 0x97df657f0e31341ca852666766e553650531bbcc86621246d041985d7261bb07 reverted before any bridge event was emitted."
|
||||
],
|
||||
"resolutionMatrix": [
|
||||
{
|
||||
"key": "mainnet_arbitrum_hub_blocked",
|
||||
"state": "open",
|
||||
"blocker": "Arbitrum bootstrap remains blocked on the current Mainnet hub leg: tx 0x97df657f0e31341ca852666766e553650531bbcc86621246d041985d7261bb07 reverted from 0xc9901ce2Ddb6490FAA183645147a87496d8b20B6 before any bridge event was emitted.",
|
||||
"targets": [
|
||||
{
|
||||
"fromChain": 138,
|
||||
"viaChain": 1,
|
||||
"toChain": 42161,
|
||||
"currentPath": "138 -> Mainnet -> Arbitrum"
|
||||
}
|
||||
],
|
||||
"resolution": [
|
||||
"Repair or replace the current Mainnet WETH9 fan-out bridge before treating Arbitrum as an available public bootstrap target.",
|
||||
"Retest 138 -> Mainnet first-hop delivery, then rerun a smaller Mainnet -> Arbitrum send and require destination bridge events before promoting the route.",
|
||||
"Keep Arbitrum marked blocked in the explorer and status surfaces until the hub leg emits and completes normally."
|
||||
],
|
||||
"runbooks": [
|
||||
"docs/07-ccip/CROSS_NETWORK_FUNDING_BOOTSTRAP_STRATEGY.md",
|
||||
"docs/07-ccip/CHAIN138_PUBLIC_CHAIN_UNLOAD_ROUTES.md",
|
||||
"docs/00-meta/REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md"
|
||||
],
|
||||
"exitCriteria": "A fresh Mainnet -> Arbitrum WETH9 send emits bridge events and completes destination delivery successfully."
|
||||
},
|
||||
{
|
||||
"key": "missing_public_cw_suites",
|
||||
"state": "open",
|
||||
"blocker": "Desired public EVM targets still missing cW suites: Wemix.",
|
||||
"targets": [
|
||||
{
|
||||
"chainId": 1111,
|
||||
"name": "Wemix",
|
||||
"nextStep": "complete_cw_suite_then_deploy_pools"
|
||||
}
|
||||
],
|
||||
"resolution": [
|
||||
"Deploy the full cW core suite on each missing destination chain using the existing CW deploy-and-wire flow.",
|
||||
"Grant bridge mint/burn roles and mark the corridor live in cross-chain-pmm-lps/config/deployment-status.json.",
|
||||
"Update public token lists / explorer config, then rerun check-cw-evm-deployment-mesh.sh and check-cw-public-pool-status.sh."
|
||||
],
|
||||
"runbooks": [
|
||||
"docs/07-ccip/CW_DEPLOY_AND_WIRE_RUNBOOK.md",
|
||||
"docs/03-deployment/PHASE_C_CW_AND_EDGE_POOLS_RUNBOOK.md",
|
||||
"scripts/deployment/run-cw-remaining-steps.sh",
|
||||
"scripts/verify/check-cw-evm-deployment-mesh.sh"
|
||||
],
|
||||
"exitCriteria": "Wemix report non-zero cW suites and become bridgeAvailable in deployment-status.json."
|
||||
},
|
||||
{
|
||||
"key": "wave1_transport_pending",
|
||||
"state": "open",
|
||||
"blocker": "Wave 1 transport is still pending for: EUR, JPY, GBP, AUD, CAD, CHF, XAU.",
|
||||
"targets": [
|
||||
{
|
||||
"code": "EUR",
|
||||
"canonicalSymbols": [
|
||||
"cEURC",
|
||||
"cEURT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWEURC",
|
||||
"cWEURT"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "JPY",
|
||||
"canonicalSymbols": [
|
||||
"cJPYC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWJPYC"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "GBP",
|
||||
"canonicalSymbols": [
|
||||
"cGBPC",
|
||||
"cGBPT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWGBPC",
|
||||
"cWGBPT"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "AUD",
|
||||
"canonicalSymbols": [
|
||||
"cAUDC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWAUDC"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "CAD",
|
||||
"canonicalSymbols": [
|
||||
"cCADC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWCADC"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "CHF",
|
||||
"canonicalSymbols": [
|
||||
"cCHFC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWCHFC"
|
||||
]
|
||||
},
|
||||
{
|
||||
"code": "XAU",
|
||||
"canonicalSymbols": [
|
||||
"cXAUC",
|
||||
"cXAUT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWXAUC",
|
||||
"cWXAUT"
|
||||
]
|
||||
}
|
||||
],
|
||||
"resolution": [
|
||||
"Enable bridge controls and supervision policy for each Wave 1 canonical asset on Chain 138.",
|
||||
"Set max-outstanding / capacity controls, then promote the canonical symbols into config/gru-transport-active.json.",
|
||||
"Verify the overlay promotion with check-gru-global-priority-rollout.sh and check-gru-v2-chain138-readiness.sh before attaching public liquidity."
|
||||
],
|
||||
"runbooks": [
|
||||
"docs/04-configuration/GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md",
|
||||
"docs/04-configuration/GRU_TRANSPORT_ACTIVE_JSON.md",
|
||||
"scripts/verify/check-gru-global-priority-rollout.sh",
|
||||
"scripts/verify/check-gru-v2-chain138-readiness.sh"
|
||||
],
|
||||
"exitCriteria": "Wave 1 transport pending count reaches zero and the overlay reports the seven non-USD assets as live_transport."
|
||||
},
|
||||
{
|
||||
"key": "first_tier_public_pools_not_live",
|
||||
"state": "in_progress",
|
||||
"blocker": "Some first-tier Wave 1 public cW pools are live, but the rollout is incomplete.",
|
||||
"targets": [
|
||||
{
|
||||
"chainId": 1,
|
||||
"name": "Ethereum Mainnet",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 6
|
||||
},
|
||||
{
|
||||
"chainId": 10,
|
||||
"name": "Optimism",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 25,
|
||||
"name": "Cronos",
|
||||
"hubStable": "USDT",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 56,
|
||||
"name": "BSC",
|
||||
"hubStable": "USDT",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 100,
|
||||
"name": "Gnosis",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 137,
|
||||
"name": "Polygon",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 42161,
|
||||
"name": "Arbitrum One",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 42220,
|
||||
"name": "Celo",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 43114,
|
||||
"name": "Avalanche C-Chain",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 8453,
|
||||
"name": "Base",
|
||||
"hubStable": "USDC",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
},
|
||||
{
|
||||
"chainId": 1111,
|
||||
"name": "Wemix",
|
||||
"hubStable": "USDT",
|
||||
"plannedWave1Pairs": 10,
|
||||
"recordedWave1Pairs": 0
|
||||
}
|
||||
],
|
||||
"resolution": [
|
||||
"Deploy the first-tier cW/hub-stable pairs from pool-matrix.json on every chain with a loaded cW suite.",
|
||||
"Seed the new pools with initial liquidity and record the resulting pool addresses in cross-chain-pmm-lps/config/deployment-status.json.",
|
||||
"Use check-cw-public-pool-status.sh to verify the mesh is no longer empty before surfacing the venues publicly."
|
||||
],
|
||||
"runbooks": [
|
||||
"docs/03-deployment/SINGLE_SIDED_LPS_PUBLIC_NETWORKS_RUNBOOK.md",
|
||||
"docs/03-deployment/PMM_FULL_MESH_AND_PUBLIC_SINGLE_SIDED_PLAN.md",
|
||||
"cross-chain-pmm-lps/config/pool-matrix.json",
|
||||
"scripts/verify/check-cw-public-pool-status.sh"
|
||||
],
|
||||
"exitCriteria": "First-tier Wave 1 pools are recorded live in deployment-status.json and check-cw-public-pool-status.sh reports non-zero pool coverage."
|
||||
},
|
||||
{
|
||||
"key": "public_protocols_queued",
|
||||
"state": "in_progress",
|
||||
"blocker": "Some tracked public protocols have begun activation, but the full protocol stack is not live yet.",
|
||||
"targets": [
|
||||
{
|
||||
"key": "uniswap_v3",
|
||||
"name": "Uniswap v3",
|
||||
"deploymentStage": "stage1_first_tier_pools",
|
||||
"activationDependsOn": [
|
||||
"cW token suite deployed on destination chain",
|
||||
"first-tier cW/hub pools created",
|
||||
"pool addresses written to deployment-status.json",
|
||||
"token-aggregation/indexer visibility enabled"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "dodo_pmm",
|
||||
"name": "DODO PMM",
|
||||
"deploymentStage": "stage1_first_tier_pools",
|
||||
"activationDependsOn": [
|
||||
"cW token suite deployed on destination chain",
|
||||
"first-tier cW/hub pools created",
|
||||
"pool addresses written to deployment-status.json",
|
||||
"policy controls and MCP visibility attached"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "balancer",
|
||||
"name": "Balancer",
|
||||
"deploymentStage": "stage2_post_first_tier_liquidity",
|
||||
"activationDependsOn": [
|
||||
"first-tier Uniswap v3 or DODO PMM liquidity live",
|
||||
"basket design approved for the destination chain",
|
||||
"pool addresses written to deployment-status.json"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "curve_3",
|
||||
"name": "Curve 3",
|
||||
"deploymentStage": "stage2_post_first_tier_liquidity",
|
||||
"activationDependsOn": [
|
||||
"first-tier stable liquidity live",
|
||||
"stable basket design approved for the destination chain",
|
||||
"pool addresses written to deployment-status.json"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "one_inch",
|
||||
"name": "1inch",
|
||||
"deploymentStage": "stage3_after_underlying_pools_live",
|
||||
"activationDependsOn": [
|
||||
"underlying public pools already live",
|
||||
"router/indexer visibility enabled",
|
||||
"token-aggregation/provider capability surfaced publicly"
|
||||
]
|
||||
}
|
||||
],
|
||||
"resolution": [
|
||||
"Stage 1: activate Uniswap v3 and DODO PMM once first-tier cW pools exist on the public mesh.",
|
||||
"Stage 2: activate Balancer and Curve 3 only after first-tier stable liquidity is already live.",
|
||||
"Stage 3: expose 1inch after the underlying pools, routing/indexer visibility, and public provider-capability wiring are in place."
|
||||
],
|
||||
"runbooks": [
|
||||
"config/gru-v2-public-protocol-rollout-plan.json",
|
||||
"docs/11-references/GRU_V2_PUBLIC_PROTOCOL_DEPLOYMENT_STATUS.md",
|
||||
"scripts/verify/check-gru-v2-public-protocols.sh"
|
||||
],
|
||||
"exitCriteria": "The public protocol status surface reports non-zero active cW pools for the staged venues."
|
||||
},
|
||||
{
|
||||
"key": "global_priority_backlog",
|
||||
"state": "open",
|
||||
"blocker": "The ranked GRU global rollout still has 29 backlog assets outside the live manifest.",
|
||||
"targets": [
|
||||
{
|
||||
"backlogAssets": 29
|
||||
}
|
||||
],
|
||||
"resolution": [
|
||||
"Complete Wave 1 transport and first-tier public liquidity before promoting the remaining ranked assets.",
|
||||
"For each backlog asset, add canonical + wrapped symbols to the manifest/rollout plan, deploy contracts, and extend the public pool matrix.",
|
||||
"Promote each new asset through the same transport and public-liquidity gates used for Wave 1."
|
||||
],
|
||||
"runbooks": [
|
||||
"config/gru-global-priority-currency-rollout.json",
|
||||
"config/gru-iso4217-currency-manifest.json",
|
||||
"docs/04-configuration/GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md",
|
||||
"scripts/verify/check-gru-global-priority-rollout.sh"
|
||||
],
|
||||
"exitCriteria": "Backlog assets count reaches zero in check-gru-global-priority-rollout.sh."
|
||||
},
|
||||
{
|
||||
"key": "solana_non_evm_program",
|
||||
"state": "planned",
|
||||
"blocker": "Desired non-EVM GRU targets remain planned / relay-dependent: Solana.",
|
||||
"targets": [
|
||||
{
|
||||
"identifier": "Solana",
|
||||
"label": "Solana"
|
||||
}
|
||||
],
|
||||
"resolution": [
|
||||
"Define the destination-chain token/program model first: SPL or wrapped-account representation, authority model, and relay custody surface.",
|
||||
"Implement the relay/program path and only then promote Solana from desired-target status into the active transport inventory.",
|
||||
"Add dedicated verifier coverage before marking Solana live anywhere in the explorer or status docs."
|
||||
],
|
||||
"runbooks": [
|
||||
"docs/04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md",
|
||||
"docs/04-configuration/GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md"
|
||||
],
|
||||
"exitCriteria": "Solana has a real relay/program surface, a verifier, and is no longer only listed as a desired non-EVM target."
|
||||
}
|
||||
],
|
||||
"notes": [
|
||||
"This queue is an operator/deployment planning surface. It does not mark queued pools or transports as live.",
|
||||
"Chain 138 canonical venues remain a separate live surface from the public cW mesh."
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,348 @@
|
||||
{
|
||||
"generatedAt": "2026-04-04T16:10:52.261Z",
|
||||
"canonicalChainId": 138,
|
||||
"summary": {
|
||||
"desiredPublicEvmTargets": 11,
|
||||
"loadedPublicEvmChains": 10,
|
||||
"loadedPublicEvmFullCoreSuite": 10,
|
||||
"desiredButNotLoaded": 1,
|
||||
"publicProtocolsTracked": 5,
|
||||
"publicProtocolsWithActiveCwPools": 1,
|
||||
"chainsWithAnyRecordedPublicCwPools": 1,
|
||||
"liveTransportAssets": 1,
|
||||
"wave1CanonicalOnly": 7,
|
||||
"backlogAssets": 29
|
||||
},
|
||||
"publicEvmMesh": {
|
||||
"coreCwSuite": [
|
||||
"cWUSDT",
|
||||
"cWUSDC",
|
||||
"cWEURC",
|
||||
"cWEURT",
|
||||
"cWGBPC",
|
||||
"cWGBPT",
|
||||
"cWAUDC",
|
||||
"cWJPYC",
|
||||
"cWCHFC",
|
||||
"cWCADC",
|
||||
"cWXAUC",
|
||||
"cWXAUT"
|
||||
],
|
||||
"desiredChains": [
|
||||
{
|
||||
"chainId": 1,
|
||||
"name": "Ethereum Mainnet",
|
||||
"cwTokenCount": 12,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 10
|
||||
},
|
||||
{
|
||||
"chainId": 10,
|
||||
"name": "Optimism",
|
||||
"cwTokenCount": 12,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 25,
|
||||
"name": "Cronos",
|
||||
"cwTokenCount": 12,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 56,
|
||||
"name": "BSC (BNB Chain)",
|
||||
"cwTokenCount": 14,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 100,
|
||||
"name": "Gnosis Chain",
|
||||
"cwTokenCount": 12,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 137,
|
||||
"name": "Polygon",
|
||||
"cwTokenCount": 13,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 42161,
|
||||
"name": "Arbitrum One",
|
||||
"cwTokenCount": 12,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 42220,
|
||||
"name": "Celo",
|
||||
"cwTokenCount": 14,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 43114,
|
||||
"name": "Avalanche C-Chain",
|
||||
"cwTokenCount": 14,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 8453,
|
||||
"name": "Base",
|
||||
"cwTokenCount": 12,
|
||||
"hasFullCoreSuite": true,
|
||||
"bridgeAvailable": true,
|
||||
"pmmPoolCount": 0
|
||||
},
|
||||
{
|
||||
"chainId": 1111,
|
||||
"name": "Wemix",
|
||||
"cwTokenCount": 0,
|
||||
"hasFullCoreSuite": false,
|
||||
"bridgeAvailable": false,
|
||||
"pmmPoolCount": 0
|
||||
}
|
||||
],
|
||||
"desiredButNotLoaded": [
|
||||
{
|
||||
"chainId": 1111,
|
||||
"name": "Wemix"
|
||||
}
|
||||
],
|
||||
"wave1PoolMatrixCoverage": {
|
||||
"totalWrappedSymbols": 10,
|
||||
"coveredSymbols": 10,
|
||||
"missingSymbols": []
|
||||
},
|
||||
"note": "The public EVM cW token mesh is complete on the currently loaded 10-chain set, but Wemix remains a desired target without a cW suite in deployment-status.json."
|
||||
},
|
||||
"transport": {
|
||||
"liveTransportAssets": [
|
||||
{
|
||||
"code": "USD",
|
||||
"name": "US Dollar"
|
||||
}
|
||||
],
|
||||
"wave1": [
|
||||
{
|
||||
"code": "EUR",
|
||||
"name": "Euro",
|
||||
"wave": "wave1",
|
||||
"manifestPresent": true,
|
||||
"deployed": true,
|
||||
"transportActive": false,
|
||||
"x402Ready": false,
|
||||
"canonicalSymbols": [
|
||||
"cEURC",
|
||||
"cEURT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWEURC",
|
||||
"cWEURT"
|
||||
],
|
||||
"currentState": "canonical_only",
|
||||
"nextStep": "activate_transport_and_attach_public_liquidity"
|
||||
},
|
||||
{
|
||||
"code": "JPY",
|
||||
"name": "Japanese Yen",
|
||||
"wave": "wave1",
|
||||
"manifestPresent": true,
|
||||
"deployed": true,
|
||||
"transportActive": false,
|
||||
"x402Ready": false,
|
||||
"canonicalSymbols": [
|
||||
"cJPYC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWJPYC"
|
||||
],
|
||||
"currentState": "canonical_only",
|
||||
"nextStep": "activate_transport_and_attach_public_liquidity"
|
||||
},
|
||||
{
|
||||
"code": "GBP",
|
||||
"name": "Pound Sterling",
|
||||
"wave": "wave1",
|
||||
"manifestPresent": true,
|
||||
"deployed": true,
|
||||
"transportActive": false,
|
||||
"x402Ready": false,
|
||||
"canonicalSymbols": [
|
||||
"cGBPC",
|
||||
"cGBPT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWGBPC",
|
||||
"cWGBPT"
|
||||
],
|
||||
"currentState": "canonical_only",
|
||||
"nextStep": "activate_transport_and_attach_public_liquidity"
|
||||
},
|
||||
{
|
||||
"code": "AUD",
|
||||
"name": "Australian Dollar",
|
||||
"wave": "wave1",
|
||||
"manifestPresent": true,
|
||||
"deployed": true,
|
||||
"transportActive": false,
|
||||
"x402Ready": false,
|
||||
"canonicalSymbols": [
|
||||
"cAUDC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWAUDC"
|
||||
],
|
||||
"currentState": "canonical_only",
|
||||
"nextStep": "activate_transport_and_attach_public_liquidity"
|
||||
},
|
||||
{
|
||||
"code": "CAD",
|
||||
"name": "Canadian Dollar",
|
||||
"wave": "wave1",
|
||||
"manifestPresent": true,
|
||||
"deployed": true,
|
||||
"transportActive": false,
|
||||
"x402Ready": false,
|
||||
"canonicalSymbols": [
|
||||
"cCADC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWCADC"
|
||||
],
|
||||
"currentState": "canonical_only",
|
||||
"nextStep": "activate_transport_and_attach_public_liquidity"
|
||||
},
|
||||
{
|
||||
"code": "CHF",
|
||||
"name": "Swiss Franc",
|
||||
"wave": "wave1",
|
||||
"manifestPresent": true,
|
||||
"deployed": true,
|
||||
"transportActive": false,
|
||||
"x402Ready": false,
|
||||
"canonicalSymbols": [
|
||||
"cCHFC"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWCHFC"
|
||||
],
|
||||
"currentState": "canonical_only",
|
||||
"nextStep": "activate_transport_and_attach_public_liquidity"
|
||||
},
|
||||
{
|
||||
"code": "XAU",
|
||||
"name": "Gold",
|
||||
"wave": "wave1",
|
||||
"manifestPresent": true,
|
||||
"deployed": true,
|
||||
"transportActive": false,
|
||||
"x402Ready": false,
|
||||
"canonicalSymbols": [
|
||||
"cXAUC",
|
||||
"cXAUT"
|
||||
],
|
||||
"wrappedSymbols": [
|
||||
"cWXAUC",
|
||||
"cWXAUT"
|
||||
],
|
||||
"currentState": "canonical_only",
|
||||
"nextStep": "activate_transport_and_attach_public_liquidity"
|
||||
}
|
||||
],
|
||||
"note": "USD is the only live transport asset today. Wave 1 non-USD assets are deployed canonically on Chain 138 but are not yet promoted into the active transport overlay."
|
||||
},
|
||||
"protocols": {
|
||||
"publicCwMesh": [
|
||||
{
|
||||
"key": "uniswap_v3",
|
||||
"name": "Uniswap v3",
|
||||
"activePublicCwPools": 0,
|
||||
"destinationChainsWithPools": 0,
|
||||
"status": "not_deployed_on_public_cw_mesh",
|
||||
"notes": "No live public-chain cW* venue is recorded for this protocol in deployment-status.json yet."
|
||||
},
|
||||
{
|
||||
"key": "balancer",
|
||||
"name": "Balancer",
|
||||
"activePublicCwPools": 0,
|
||||
"destinationChainsWithPools": 0,
|
||||
"status": "not_deployed_on_public_cw_mesh",
|
||||
"notes": "No live public-chain cW* venue is recorded for this protocol in deployment-status.json yet."
|
||||
},
|
||||
{
|
||||
"key": "curve_3",
|
||||
"name": "Curve 3",
|
||||
"activePublicCwPools": 0,
|
||||
"destinationChainsWithPools": 0,
|
||||
"status": "not_deployed_on_public_cw_mesh",
|
||||
"notes": "No live public-chain cW* venue is recorded for this protocol in deployment-status.json yet."
|
||||
},
|
||||
{
|
||||
"key": "dodo_pmm",
|
||||
"name": "DODO PMM",
|
||||
"activePublicCwPools": 10,
|
||||
"destinationChainsWithPools": 1,
|
||||
"status": "partial_live_on_public_cw_mesh",
|
||||
"notes": "deployment-status.json now records live public-chain cW* DODO PMM pools on Mainnet, including recorded non-USD Wave 1 rows, and the recorded Mainnet pools now have bidirectional live execution proof. The broader public cW mesh is still partial."
|
||||
},
|
||||
{
|
||||
"key": "one_inch",
|
||||
"name": "1inch",
|
||||
"activePublicCwPools": 0,
|
||||
"destinationChainsWithPools": 0,
|
||||
"status": "not_deployed_on_public_cw_mesh",
|
||||
"notes": "No live public-chain cW* venue is recorded for this protocol in deployment-status.json yet."
|
||||
}
|
||||
],
|
||||
"chain138CanonicalVenues": {
|
||||
"note": "Chain 138 canonical routing is a separate surface: DODO PMM plus upstream-native Uniswap v3 and the funded pilot-compatible Balancer, Curve 3, and 1inch venues are live there.",
|
||||
"liveProtocols": [
|
||||
"DODO PMM",
|
||||
"Uniswap v3",
|
||||
"Balancer",
|
||||
"Curve 3",
|
||||
"1inch"
|
||||
]
|
||||
}
|
||||
},
|
||||
"bridgeRouteHealth": {
|
||||
"arbitrumHubBlocker": {
|
||||
"active": true,
|
||||
"fromChain": 138,
|
||||
"viaChain": 1,
|
||||
"toChain": 42161,
|
||||
"currentPath": "138 -> Mainnet -> Arbitrum",
|
||||
"sourceBridge": "0xc9901ce2Ddb6490FAA183645147a87496d8b20B6",
|
||||
"failedTxHash": "0x97df657f0e31341ca852666766e553650531bbcc86621246d041985d7261bb07",
|
||||
"note": "Use Mainnet hub; direct 138 first hop to Arbitrum emitted MessageSent on 2026-04-04 without destination delivery."
|
||||
}
|
||||
},
|
||||
"explorer": {
|
||||
"tokenListApi": "https://explorer.d-bis.org/api/config/token-list",
|
||||
"staticStatusPath": "https://explorer.d-bis.org/config/GRU_V2_PUBLIC_DEPLOYMENT_STATUS.json"
|
||||
},
|
||||
"blockers": [
|
||||
"Desired public EVM targets still lack cW token suites: Wemix.",
|
||||
"Wave 1 GRU assets are still canonical-only on Chain 138: EUR, JPY, GBP, AUD, CAD, CHF, XAU.",
|
||||
"Public cW* protocol rollout is now partial: DODO PMM has recorded pools, while Uniswap v3, Balancer, Curve 3, and 1inch remain not live on the public cW mesh.",
|
||||
"The ranked GRU global rollout still has 29 backlog assets outside the live manifest.",
|
||||
"Desired non-EVM GRU targets remain planned / relay-dependent: Solana.",
|
||||
"Arbitrum public-network bootstrap remains blocked on the current Mainnet hub leg: tx 0x97df657f0e31341ca852666766e553650531bbcc86621246d041985d7261bb07 reverted from 0xc9901ce2Ddb6490FAA183645147a87496d8b20B6 before any bridge event was emitted."
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user