docs: update master documentation and push to Gitea (2026-03-06)
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
- MASTER_INDEX: Last Updated 2026-03-06; status 59/59 contracts; add NEXT_STEPS_LIST, CONTRACT_NEXT_STEPS_LIST - docs/README, NEXT_STEPS_INDEX, 06-besu/MASTER_INDEX: Last Updated 2026-03-06 - Contract check script: 59 addresses (PMM, vault/reserve, CompliantFiatTokens); canonical CCIP/router - New docs: EXECUTION_CHECKLIST, NEXT_STEPS_LIST, DOTENV_AUDIT, ADDITIONAL_PATHS, deployer gas runbook, WEMIX_ACQUISITION_TABLED, etc. - Config: deployer-gas-routes, cro-wemix-swap-routes, routing-registry, token-mapping - Scripts: check-contracts-on-chain-138, check-pmm-pool-balances-chain138, deployer-gas-auto-route, acquire-cro-and-wemix-gas - Operator rule: operator-lan-access-check.mdc Made-with: Cursor
This commit is contained in:
151
reports/path_b_execution_order_test_first_2026-03-04.md
Normal file
151
reports/path_b_execution_order_test_first_2026-03-04.md
Normal file
@@ -0,0 +1,151 @@
|
||||
# Path A+C+D -> Path B Execution Order (Test-First, No Duplicate Deploy) — 2026-03-04
|
||||
|
||||
Objective: complete Mainnet Path B by first using already deployed contracts, validating all routes E2E, and skipping any duplicate/redeploy work.
|
||||
|
||||
## Current Check Results From This Host
|
||||
|
||||
- RPC and gas-balance checks are now passing for all required chains (138, 1, 56, 137, 10, 42161, 8453, 43114, 25, 100, 42220, 651940).
|
||||
- Generated gas report: `reports/deployer_needed_chain_gas_balances_2026-03-04.md` (all required chains `ok`).
|
||||
- Read-only verification status:
|
||||
- `scripts/verify/check-deployer-balance-blockscout-vs-rpc.sh https://rpc-http-pub.d-bis.org https://explorer.d-bis.org/api/v2` -> passed, balances match.
|
||||
- `scripts/verify/check-contracts-on-chain-138.sh http://192.168.11.211:8545` -> passed, 59/59 addresses present (check-contracts-on-chain-138.sh).
|
||||
- `smom-dbis-138/scripts/verify-bridge-setup-checklist.sh` -> passed when using `FORCE_RPC_URL=https://rpc-http-pub.d-bis.org`.
|
||||
- `smom-dbis-138/scripts/verify-bridge-prerequisites.sh 0.001` -> passed when using `FORCE_RPC_URL=https://rpc-http-pub.d-bis.org`.
|
||||
- E2E route health:
|
||||
- `scripts/run-full-e2e-validation.sh` -> passed overall (HTTP E2E passed; one WS endpoint `wss://rpc.d-bis.org` timed out).
|
||||
- Remaining execution blockers:
|
||||
- No discoverable public LINK DEX liquidity for configured LINK on Cronos/Gnosis/Celo (`NOT_FOUND` in execution sheet).
|
||||
- Chain 138 source-side documented pool gap for `cUSDT/cUSDC -> WETH` still unresolved.
|
||||
|
||||
## Non-Negotiable Rules
|
||||
|
||||
1. Never deploy before checking bytecode/state first.
|
||||
2. If contract exists and is configured, skip deployment.
|
||||
3. Prefer read-only `cast call`/status scripts first; send tx only when gate checks pass.
|
||||
4. Every write action must have post-action verification.
|
||||
|
||||
## Phase 0: Environment + Access Gates
|
||||
|
||||
1. Validate canonical registry and env consistency.
|
||||
- Command: `scripts/validation/validate-deployer-public-token-registry.sh`
|
||||
- Pass: `total=73, missing=0, mismatch=0`.
|
||||
|
||||
2. Confirm RPC reachability for required chains.
|
||||
- Command: `reports/deployer_needed_chain_gas_balances_2026-03-04.md` generation command (or rerun script logic from that report).
|
||||
- Pass: status `ok` for at least chains 138, 1, 56, 137, 10, 42161, 8453, 43114, 25, 100, 42220.
|
||||
|
||||
3. Resolve missing config blockers before execution.
|
||||
- Set `CCIP_CELO_LINK_TOKEN` in canonical env.
|
||||
- Set `GNOSIS_RPC_URL` and `ALL_MAINNET_RPC` in canonical env.
|
||||
- Pin destination `WETH/LINK` DEX pair contracts per chain (not just token symbols).
|
||||
Status:
|
||||
- First two items completed in `smom-dbis-138/.env`.
|
||||
- Pair contracts pinned for Mainnet/BSC/Polygon/Optimism/Arbitrum/Base/Avalanche; Cronos/Gnosis/Celo still have no executable public LINK pair.
|
||||
|
||||
## Phase 1: Inventory + No-Duplicate Deployment Guard
|
||||
|
||||
1. Check deployed bytecode on chain 138.
|
||||
- Command: `scripts/verify/check-contracts-on-chain-138.sh <reachable_rpc_138>`
|
||||
- Decision:
|
||||
- If code present -> do not redeploy.
|
||||
- If code absent -> verify if address is deprecated/expected-missing before deciding deployment.
|
||||
|
||||
2. Check bridge setup state (read-only).
|
||||
- Command: `smom-dbis-138/scripts/verify-bridge-setup-checklist.sh`
|
||||
- Must confirm:
|
||||
- LINK token code exists.
|
||||
- bridge code exists.
|
||||
- destination for mainnet selector exists and is enabled.
|
||||
|
||||
3. Check Path B prerequisites (read-only).
|
||||
- Command: `smom-dbis-138/scripts/verify-bridge-prerequisites.sh 1`
|
||||
- Must confirm:
|
||||
- deployer ETH balance sufficient,
|
||||
- LINK balance sufficient for CCIP fees,
|
||||
- WETH9 bridge destination enabled,
|
||||
- allowance state understood.
|
||||
|
||||
## Phase 2: Execute Path A (Primary Funding Feeder)
|
||||
|
||||
1. Bridge WETH from 138 to non-mainnet destinations using existing bridges.
|
||||
- Use source bridges only (already deployed):
|
||||
- `CCIPWETH9_BRIDGE_CHAIN138=0x971cD9D156f193df8051E48043C476e53ECd4693`
|
||||
- `CCIPWETH10_BRIDGE_CHAIN138=0xe0E93247376aa097dB308B92e6Ba36bA015535D0`
|
||||
|
||||
2. On destination chains, swap `WETH -> LINK` using pinned DEX pair contracts.
|
||||
- Required before automation: exact pair/router contract addresses pinned per chain.
|
||||
|
||||
3. Fund target destination bridge wallets from execution sheet.
|
||||
- Source of truth: `reports/path_b_chain138_bridge_swap_execution_sheet_2026-03-04.md`.
|
||||
|
||||
4. Verify bridge balances and tx success.
|
||||
- Commands:
|
||||
- `scripts/monitor-bridge-health.sh`
|
||||
- `scripts/monitor-bridge-transfers.sh`
|
||||
|
||||
## Phase 3: Execute Path C (Fallback/Redundancy Feeder)
|
||||
|
||||
1. Use Alltra route where Path A liquidity/routing is weak.
|
||||
- Bridge through Alltra adapter and convert to needed inventory.
|
||||
|
||||
2. Re-route inventory to target funding wallets as needed.
|
||||
- Same post-action verification requirements as Phase 2.
|
||||
|
||||
## Phase 4: Execute Path D (Reliability Program)
|
||||
|
||||
1. PMM/LP expansion on chain 138 for source->WETH routing reliability.
|
||||
- Commands:
|
||||
- `smom-dbis-138/scripts/deployment/run-pmm-full-parity-all-phases.sh`
|
||||
- `scripts/create-pmm-full-mesh-chain138.sh` (if additional pools needed)
|
||||
- Rule: do not create duplicate pools; query existing pools first.
|
||||
|
||||
2. Public-chain LP deployment only where missing.
|
||||
- Command: `smom-dbis-138/scripts/deployment/deploy-pmm-all-l2s.sh`
|
||||
- Rule: verify pool existence and deployment-status before each creation.
|
||||
|
||||
3. Oracle updates and integrity checks.
|
||||
- Commands:
|
||||
- `scripts/update-all-oracle-prices.sh`
|
||||
- `scripts/update-oracle-price.sh`
|
||||
- Verify no stale feed or revert on update.
|
||||
|
||||
4. Mapper + mapping integrity.
|
||||
- Commands:
|
||||
- `scripts/complete-all-mapper-operator.sh`
|
||||
- `scripts/run-remaining-mapper-tasks.sh`
|
||||
- Verify mappings align with `config/address-registry/*.json` and active env.
|
||||
|
||||
5. E2E route proof (non-theoretical routing).
|
||||
- Commands:
|
||||
- `scripts/verify/check-public-rpc-stability-e2e.sh`
|
||||
- `scripts/run-full-e2e-validation.sh`
|
||||
- Pass criteria: repeated successful flow `138 -> bridge -> destination swap -> funding wallet credited`.
|
||||
|
||||
## Phase 5: Execute Path B (Mainnet Special Case)
|
||||
|
||||
1. Pre-fund Mainnet relay bridge with WETH (mandatory first).
|
||||
- Command: `scripts/bridge/fund-mainnet-relay-bridge.sh`
|
||||
- Target wallet: `CCIP_RELAY_BRIDGE_MAINNET=0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939`
|
||||
|
||||
2. Run 138 -> Mainnet WETH9 bridge flow using existing deployed contracts.
|
||||
- Command: `smom-dbis-138/scripts/wrap-and-bridge-weth9-to-mainnet.sh <amount_eth>`
|
||||
- Caution: this script broadcasts txs; run only after all read-only checks pass.
|
||||
|
||||
3. Swap Mainnet WETH -> LINK and fund Mainnet bridge wallets.
|
||||
- Mainnet target LINK wallets:
|
||||
- `0xc9901ce2Ddb6490FAA183645147a87496d8b20B6`
|
||||
- `0x04E1e22B0D41e99f4275bd40A50480219bc9A223`
|
||||
- Mainnet WETH funding wallet:
|
||||
- `0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939`
|
||||
|
||||
4. Post-funding verification.
|
||||
- Re-run prerequisite and setup checklist scripts.
|
||||
- Confirm balances on target wallets and successful message relay/release.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
1. No duplicate deployments occurred for already-live contracts.
|
||||
2. Path A/C/D completed with verifiable tx and balance evidence.
|
||||
3. Path B relay bridge pre-funded first, then 138->Mainnet release flow succeeds.
|
||||
4. LINK and WETH bridge funding wallets are topped up on all target chains.
|
||||
5. E2E tests pass on repeated runs.
|
||||
Reference in New Issue
Block a user