- 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
215 lines
9.1 KiB
Markdown
215 lines
9.1 KiB
Markdown
# 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**
|
|
|
|
1. Deploy the full public `cW*` core suite on the missing destination chain.
|
|
2. Grant bridge mint/burn roles and mark the corridor live in `cross-chain-pmm-lps/config/deployment-status.json`.
|
|
3. Update token lists and explorer config.
|
|
4. Re-run `check-cw-evm-deployment-mesh.sh` and `check-cw-public-pool-status.sh`.
|
|
|
|
**Runbooks / scripts**
|
|
|
|
- [CW_DEPLOY_AND_WIRE_RUNBOOK.md](../07-ccip/CW_DEPLOY_AND_WIRE_RUNBOOK.md)
|
|
- [PHASE_C_CW_AND_EDGE_POOLS_RUNBOOK.md](PHASE_C_CW_AND_EDGE_POOLS_RUNBOOK.md)
|
|
- [run-cw-remaining-steps.sh](/home/intlc/projects/proxmox/scripts/deployment/run-cw-remaining-steps.sh)
|
|
- [check-cw-evm-deployment-mesh.sh](/home/intlc/projects/proxmox/scripts/verify/check-cw-evm-deployment-mesh.sh)
|
|
|
|
**Exit criteria**
|
|
|
|
- `Wemix` has a non-zero `cW*` suite recorded
|
|
- `bridgeAvailable=true`
|
|
- they no longer appear in the queue blocker list
|
|
|
|
### 2. Wave 1 transport still pending
|
|
|
|
**Current blocker**
|
|
|
|
- `EUR`
|
|
- `JPY`
|
|
- `GBP`
|
|
- `AUD`
|
|
- `CAD`
|
|
- `CHF`
|
|
- `XAU`
|
|
|
|
**Resolution**
|
|
|
|
1. Enable bridge controls and supervision policy for each Wave 1 canonical asset on Chain 138.
|
|
2. Set max-outstanding / capacity controls.
|
|
3. Promote the canonical symbols into `config/gru-transport-active.json`.
|
|
4. Re-run the GRU rollout and readiness verifiers before attaching public liquidity.
|
|
|
|
**Runbooks / scripts**
|
|
|
|
- [GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md](../04-configuration/GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md)
|
|
- [GRU_TRANSPORT_ACTIVE_JSON.md](../04-configuration/GRU_TRANSPORT_ACTIVE_JSON.md)
|
|
- [check-gru-global-priority-rollout.sh](/home/intlc/projects/proxmox/scripts/verify/check-gru-global-priority-rollout.sh)
|
|
- [check-gru-v2-chain138-readiness.sh](/home/intlc/projects/proxmox/scripts/verify/check-gru-v2-chain138-readiness.sh)
|
|
|
|
**Exit criteria**
|
|
|
|
- `Wave 1 transport pending` reaches `0`
|
|
- the seven non-USD Wave 1 assets move from `canonical_only` to `live_transport`
|
|
|
|
### 3. First-tier Wave 1 public `cW*` rollout still incomplete
|
|
|
|
**Current blocker**
|
|
|
|
- `110` Wave 1 first-tier pools are planned
|
|
- `1` is recorded live
|
|
|
|
**Current nuance**
|
|
|
|
- The first Mainnet `DODO PMM` bootstrap pools are now recorded live for `cWUSDT/USDC`, `cWUSDC/USDC`, `cWUSDT/USDT`, and `cWUSDC/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**
|
|
|
|
1. Extend the first-tier `cW* / hub stable` pairs from `cross-chain-pmm-lps/config/pool-matrix.json` beyond the seeded Mainnet `cWEURC / USDC` row.
|
|
2. Seed the pools with initial liquidity.
|
|
3. Write pool addresses back into `cross-chain-pmm-lps/config/deployment-status.json`.
|
|
4. Re-run the public pool verifier and only then surface those venues as live.
|
|
|
|
**Runbooks / scripts**
|
|
|
|
- [SINGLE_SIDED_LPS_PUBLIC_NETWORKS_RUNBOOK.md](SINGLE_SIDED_LPS_PUBLIC_NETWORKS_RUNBOOK.md)
|
|
- [PMM_FULL_MESH_AND_PUBLIC_SINGLE_SIDED_PLAN.md](PMM_FULL_MESH_AND_PUBLIC_SINGLE_SIDED_PLAN.md)
|
|
- [pool-matrix.json](/home/intlc/projects/proxmox/cross-chain-pmm-lps/config/pool-matrix.json)
|
|
- [check-cw-public-pool-status.sh](/home/intlc/projects/proxmox/scripts/verify/check-cw-public-pool-status.sh)
|
|
|
|
**Exit criteria**
|
|
|
|
- `deployment-status.json` records expanding first-tier non-USD `pmmPools`
|
|
- `check-cw-public-pool-status.sh` reports expanding public pool coverage beyond the current Mainnet seed
|
|
|
|
### 4. Public protocols still queued / partial
|
|
|
|
**Current blocker**
|
|
|
|
- `Uniswap v3`
|
|
- `DODO PMM` is now partially live through the Mainnet bootstrap pool wave
|
|
- `Balancer`
|
|
- `Curve 3`
|
|
- `1inch`
|
|
|
|
**Resolution**
|
|
|
|
1. **Stage 1:** activate `Uniswap v3` and `DODO PMM` after first-tier public pools exist.
|
|
2. **Stage 2:** activate `Balancer` and `Curve 3` after first-tier stable liquidity is already live.
|
|
3. **Stage 3:** expose `1inch` only after underlying pools, routing/indexer visibility, and public capability wiring are in place.
|
|
|
|
**Runbooks / scripts**
|
|
|
|
- [GRU_V2_PUBLIC_PROTOCOL_DEPLOYMENT_STATUS.md](../11-references/GRU_V2_PUBLIC_PROTOCOL_DEPLOYMENT_STATUS.md)
|
|
- [gru-v2-public-protocol-rollout-plan.json](/home/intlc/projects/proxmox/config/gru-v2-public-protocol-rollout-plan.json)
|
|
- [check-gru-v2-public-protocols.sh](/home/intlc/projects/proxmox/scripts/verify/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**
|
|
|
|
- `29` backlog assets remain outside the live manifest
|
|
|
|
**Resolution**
|
|
|
|
1. Finish Wave 1 transport and first-tier liquidity first.
|
|
2. Add each backlog asset to the canonical + wrapped manifest/rollout surfaces.
|
|
3. 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](../04-configuration/GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md)
|
|
- [gru-global-priority-currency-rollout.json](/home/intlc/projects/proxmox/config/gru-global-priority-currency-rollout.json)
|
|
- [gru-iso4217-currency-manifest.json](/home/intlc/projects/proxmox/config/gru-iso4217-currency-manifest.json)
|
|
- [check-gru-global-priority-rollout.sh](/home/intlc/projects/proxmox/scripts/verify/check-gru-global-priority-rollout.sh)
|
|
|
|
**Exit criteria**
|
|
|
|
- backlog count reaches `0`
|
|
|
|
### 6. Solana remains planned / relay-dependent
|
|
|
|
**Current blocker**
|
|
|
|
- `Solana`
|
|
|
|
**Resolution**
|
|
|
|
1. Define the Solana-side token/program model first.
|
|
2. Implement the relay/program path and authority model.
|
|
3. Add a dedicated verifier before promoting Solana into any live transport or explorer surface.
|
|
|
|
**Runbooks / docs**
|
|
|
|
- [ADDITIONAL_PATHS_AND_EXTENSIONS.md](../04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md)
|
|
- [GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md](../04-configuration/GRU_GLOBAL_PRIORITY_CROSS_CHAIN_ROLLOUT.md)
|
|
|
|
**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 `WETH9` public 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`) because `rpc.public-0138.defi-oracle.io` is currently returning `502`
|
|
|
|
**Resolution**
|
|
|
|
1. Top up Arbitrum gas before any new Arbitrum deployment branch.
|
|
2. Top up Mainnet gas before beginning additional public pool/protocol deployment work there.
|
|
3. Repair or replace the current Mainnet source bridge path before treating `Mainnet ->` any public-chain `WETH9` corridor as live. The latest source attempt from `MAINNET_CCIP_WETH9_BRIDGE=0xc9901ce2Ddb6490FAA183645147a87496d8b20B6` failed on tx `0x97df657f0e31341ca852666766e553650531bbcc86621246d041985d7261bb07`, and tracing shows the revert occurs inside Mainnet router `0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D` before any bridge event is emitted. Read-only `calculateFee()` preflights also currently revert for the tracked selectors `BSC`, `Avalanche`, `Gnosis`, `Cronos`, `Celo`, `Polygon`, `Arbitrum`, `Optimism`, and `Base`.
|
|
4. 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](GRU_V2_DEPLOYER_FUNDING_STATUS.md)
|
|
- [DEPLOYER_WALLET_FUNDING_PLAN_PMM_POOLS.md](../11-references/DEPLOYER_WALLET_FUNDING_PLAN_PMM_POOLS.md)
|
|
- [check-gru-v2-deployer-funding-status.sh](/home/intlc/projects/proxmox/scripts/verify/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 `WETH9` public 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.
|