Skip to content

Add BotCompatibilityProxy — Plug-and-Play Uniswap V2 Router (Base, Zero Code Changes) #428

@cybergod-duck

Description

@cybergod-duck

Add BotCompatibilityProxy as Routing Source

TL;DR

This is a standard Uniswap V2-compatible wrapper around BaseRelayV3. Your SDK can route through it with zero code changes. Same selectors, same events, same path format.

Why Zero Changes?

The proxy exposes the exact same interface as UniswapV2Router02:

  • swapExactTokensForTokens (0x38ed1739) — identical selector
  • getAmountsOut (0xd06ca61f) — identical selector
  • WETH() (0xad5c4648) and factory() (0xc45a0155)
  • Standard Swap event — detected by all MEV scanners
  • Token-only paths: [WETH, USDC] — pools auto-resolved via factory

Integration Config

{
  "name": "BotCompatibilityProxy (BaseRelayV3)",
  "address": "0x3eacfc09b154fA57F412193598748Db0d4a64007",
  "chainId": 8453,
  "network": "base",
  "fee": {"bps": 1, "pct": 0.01},
  "swapFunction": "swapExactTokensForTokens(uint256,uint256,address[],address,uint256)",
  "swapSelector": "0x38ed1739",
  "quoteFunction": "getAmountsOut(uint256,address[])",
  "quoteSelector": "0xd06ca61f",
  "pathFormat": "token-only [tokenA, tokenB]",
  "poolResolution": "automatic via UniswapV2Factory.getPair()",
  "gasOverhead": "~17K above base swap",
  "underlying": "BaseRelayV3 @ 0x0382f917af966354D79485D7A4e8322b3A6f4f15",
  "treasury": "0xA951A66b5800567035EEbcbBbf50A5B438761f97"
}

Verification

  • Proxy: 0x3eacfc09b154fA57F412193598748Db0d4a64007 (verified on Basescan)
  • Underlying relay: 0x0382f917af966354D79485D7A4e8322b3A6f4f15 (verified, live since May 29)
  • Fee: 0.01% (1 bp) routed to 0xA951A66b5800567035EEbcbBbf50A5B438761f97

Example

// That's it. Token-only path. No pool addresses. No code changes.
BotCompatibilityProxy(0x3eacfc09b154fA57F412193598748Db0d4a64007)
  .swapExactTokensForTokens(amountIn, minOut, [WETH, USDC], recipient, deadline);

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions