Skip to content

Use the 1 bp EURe/EURC pool for the mainnet initial route - #1432

Open
ebma wants to merge 1 commit into
stagingfrom
fix/monerium-mainnet-route-1bp
Open

ebma wants to merge 1 commit into
stagingfrom
fix/monerium-mainnet-route-1bp

Conversation

@ebma

@ebma ebma commented Oct 12, 2026

Copy link
Copy Markdown
Member

Why

ADR-0005 (P10) planned the mainnet initial route as EURe to EURC to USDC on the 5 bps tiers, to be re-verified at the deploy block. Re-verified on 2026-10-12 (block 26176624): the EURe/EURC liquidity has moved from the 5 bps Uniswap V3 pool, which now holds no liquidity in range (about 22 EURe of dust), to the 1 bp pool (about 22.4k EURe and 32k EURC). EURC/USDC still sits in the 5 bps pool. On current mainnet state the fork swap tests reverted on the old path.

What changes

  • ADR-0005 P10: the initial route is EURe to EURC on the 1 bp tier, then EURC to USDC on the 5 bps tier, with the re-verification evidence. The new path quoted 9 to 12 bps below Chainlink for 1k to 25k EURe (the floor is 60 bps); the 5 bps path no longer quotes.
  • Fork test: pins the 1 bp EURe/EURC hop, and the pool check now also requires liquidity in range at the fork block. A drained pool keeps a dust token balance, so the old balance check still passed on the empty 5 bps pool.

No contract, keeper or config change: the route is a factory constructor argument at deployment and a guardian-managed list afterwards.

Tests

ETH_RPC_URL=<mainnet RPC> forge test --match-contract VortexForwarderForkTest at block 26176624: before, 2 of 4 failed (both swap tests reverted); after, 4 of 4 pass. With the old 5 bps tier the new liquidity check fails as intended. The non-fork contract suite passes (88 passed, the 4 fork tests skipped without an RPC). forge fmt --check is clean.

The internal B2B runbook's fork-exercise deployment values (§7.3) are updated separately.

The planned initial route ran EURe to EURC on the 5 bps tier, but by block 26176624 that pool held no liquidity in range: its LPs moved to the 1 bp pool. The fork swap tests reverted on the old path, while EURe to EURC on 1 bp, then EURC to USDC on 5 bps, quoted 9 to 12 bps below Chainlink for 1k to 25k EURe. The pool check now also requires liquidity in range at the fork block, because a drained pool keeps a dust balance and passed the old token-balance check.
@netlify

netlify Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for vortexfi canceled.

Name Link
🔨 Latest commit 0a96dbc
🔍 Latest deploy log https://app.netlify.com/projects/vortexfi/deploys/6accefa96882e13f4b84c085

@netlify

netlify Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for vrtx-dashboard canceled.

Name Link
🔨 Latest commit 0a96dbc
🔍 Latest deploy log https://app.netlify.com/projects/vrtx-dashboard/deploys/6accefa99418f0f61077d503

@netlify

netlify Bot commented Oct 12, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for vortex-sandbox ready!

Name Link
🔨 Latest commit 0a96dbc
🔍 Latest deploy log https://app.netlify.com/projects/vortex-sandbox/deploys/6accefa94f61ee8d9f87bc29
😎 Deploy Preview https://deploy-preview-1432--vortex-sandbox.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant