- Update dbis_core, cross-chain-pmm-lps, explorer-monorepo, metamask-integration, pr-workspace/chains - Omit embedded publish git dirs and empty placeholders from index Made-with: Cursor
9.1 KiB
GRU V2 Blocker Resolution Matrix
Last Updated: 2026-04-04
Purpose: Canonical remediation map for the remaining public-network GRU v2 blockers. This translates the blocker list from the queue/status verifiers into concrete operator actions, dependencies, and exit criteria.
Canonical sources
- Queue verifier:
bash scripts/verify/check-gru-v2-deployment-queue.sh - Public status verifier:
bash scripts/verify/check-gru-v2-public-protocols.sh - Funding verifier:
bash scripts/verify/check-gru-v2-deployer-funding-status.sh - Explorer queue JSON:
https://explorer.d-bis.org/config/GRU_V2_DEPLOYMENT_QUEUE.json - Explorer status JSON:
https://explorer.d-bis.org/config/GRU_V2_PUBLIC_DEPLOYMENT_STATUS.json
The queue JSON now includes a machine-readable resolutionMatrix section that mirrors this document.
Resolution matrix
1. Missing public cW* suites on desired EVM targets
Current blocker
Wemix
Resolution
- Deploy the full public
cW*core suite on the missing destination chain. - Grant bridge mint/burn roles and mark the corridor live in
cross-chain-pmm-lps/config/deployment-status.json. - Update token lists and explorer config.
- Re-run
check-cw-evm-deployment-mesh.shandcheck-cw-public-pool-status.sh.
Runbooks / scripts
- CW_DEPLOY_AND_WIRE_RUNBOOK.md
- PHASE_C_CW_AND_EDGE_POOLS_RUNBOOK.md
- run-cw-remaining-steps.sh
- check-cw-evm-deployment-mesh.sh
Exit criteria
Wemixhas a non-zerocW*suite recordedbridgeAvailable=true- they no longer appear in the queue blocker list
2. Wave 1 transport still pending
Current blocker
EURJPYGBPAUDCADCHFXAU
Resolution
- Enable bridge controls and supervision policy for each Wave 1 canonical asset on Chain 138.
- Set max-outstanding / capacity controls.
- Promote the canonical symbols into
config/gru-transport-active.json. - Re-run the GRU rollout and readiness verifiers before attaching public liquidity.
Runbooks / scripts
- GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md
- GRU_TRANSPORT_ACTIVE_JSON.md
- check-gru-global-priority-rollout.sh
- check-gru-v2-chain138-readiness.sh
Exit criteria
Wave 1 transport pendingreaches0- the seven non-USD Wave 1 assets move from
canonical_onlytolive_transport
3. First-tier Wave 1 public cW* rollout still incomplete
Current blocker
110Wave 1 first-tier pools are planned1is recorded live
Current nuance
- The first Mainnet
DODO PMMbootstrap pools are now recorded live forcWUSDT/USDC,cWUSDC/USDC,cWUSDT/USDT, andcWUSDC/USDT - The first non-USD Wave 1 row is now also live on Mainnet:
cWEURC / USDC→0x0bC750F9c6DbDcd76B205695A356491b1B9ef098 - That initial seed does not close the Wave 1 blocker, because the Wave 1 queue still spans the broader non-USD wrapped set across the tracked public mesh
Resolution
- Extend the first-tier
cW* / hub stablepairs fromcross-chain-pmm-lps/config/pool-matrix.jsonbeyond the seeded MainnetcWEURC / USDCrow. - Seed the pools with initial liquidity.
- Write pool addresses back into
cross-chain-pmm-lps/config/deployment-status.json. - Re-run the public pool verifier and only then surface those venues as live.
Runbooks / scripts
- SINGLE_SIDED_LPS_PUBLIC_NETWORKS_RUNBOOK.md
- PMM_FULL_MESH_AND_PUBLIC_SINGLE_SIDED_PLAN.md
- pool-matrix.json
- check-cw-public-pool-status.sh
Exit criteria
deployment-status.jsonrecords expanding first-tier non-USDpmmPoolscheck-cw-public-pool-status.shreports expanding public pool coverage beyond the current Mainnet seed
4. Public protocols still queued / partial
Current blocker
Uniswap v3DODO PMMis now partially live through the Mainnet bootstrap pool waveBalancerCurve 31inch
Resolution
- Stage 1: activate
Uniswap v3andDODO PMMafter first-tier public pools exist. - Stage 2: activate
BalancerandCurve 3after first-tier stable liquidity is already live. - Stage 3: expose
1inchonly after underlying pools, routing/indexer visibility, and public capability wiring are in place.
Runbooks / scripts
- GRU_V2_PUBLIC_PROTOCOL_DEPLOYMENT_STATUS.md
- gru-v2-public-protocol-rollout-plan.json
- check-gru-v2-public-protocols.sh
Exit criteria
- public protocol status reports non-zero active
cW*pools for the staged venues
5. Global-priority backlog still open
Current blocker
29backlog assets remain outside the live manifest
Resolution
- Finish Wave 1 transport and first-tier liquidity first.
- Add each backlog asset to the canonical + wrapped manifest/rollout surfaces.
- Deploy contracts, extend the public pool matrix, and promote transport the same way as Wave 1.
Runbooks / scripts
- GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md
- gru-global-priority-currency-rollout.json
- gru-iso4217-currency-manifest.json
- check-gru-global-priority-rollout.sh
Exit criteria
- backlog count reaches
0
6. Solana remains planned / relay-dependent
Current blocker
Solana
Resolution
- Define the Solana-side token/program model first.
- Implement the relay/program path and authority model.
- Add a dedicated verifier before promoting Solana into any live transport or explorer surface.
Runbooks / docs
Exit criteria
- Solana has a real relay/program implementation and is no longer only a desired target
7. Deployer wallet funding still needs top-ups on some public deployment surfaces
Current blocker
- Arbitrum deploy gas: below the repo threshold
- Mainnet gas: very low for follow-on public deployment work
- Mainnet
WETH9public fan-out is currently blocked at the live source bridge/router path - Chain 138 public reads must use the stable public RPC (
rpc-http-pub.d-bis.org) becauserpc.public-0138.defi-oracle.iois currently returning502
Resolution
- Top up Arbitrum gas before any new Arbitrum deployment branch.
- Top up Mainnet gas before beginning additional public pool/protocol deployment work there.
- Repair or replace the current Mainnet source bridge path before treating
Mainnet ->any public-chainWETH9corridor as live. The latest source attempt fromMAINNET_CCIP_WETH9_BRIDGE=0xc9901ce2Ddb6490FAA183645147a87496d8b20B6failed on tx0x97df657f0e31341ca852666766e553650531bbcc86621246d041985d7261bb07, and tracing shows the revert occurs inside Mainnet router0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7Dbefore any bridge event is emitted. Read-onlycalculateFee()preflights also currently revert for the tracked selectorsBSC,Avalanche,Gnosis,Cronos,Celo,Polygon,Arbitrum,Optimism, andBase. - Keep using the stable Chain 138 public RPC for funding reads until the alternate public endpoint is healthy again.
Runbooks / scripts
- GRU_V2_DEPLOYER_FUNDING_STATUS.md
- DEPLOYER_WALLET_FUNDING_PLAN_PMM_POOLS.md
- check-gru-v2-deployer-funding-status.sh
Exit criteria
- Arbitrum no longer reports under the deploy threshold
- Mainnet is no longer at a near-zero operational balance for rollout work
- the Mainnet
WETH9public fan-out no longer fails inside the source bridge/router path - the Chain 138 funding verifier resolves a healthy RPC without returning unknown balances
Bottom line
The remaining GRU v2 public rollout blockers are now all mapped to concrete resolution paths. The unresolved work is operational deployment, bridge promotion, and liquidity creation, not missing documentation or unclear sequencing.