Skip to content

feat: add ETCswap connector for Ethereum Classic#594

Open
chris-mercer wants to merge 1 commit intohummingbot:developmentfrom
etcswap:feat/etcswap-connector
Open

feat: add ETCswap connector for Ethereum Classic#594
chris-mercer wants to merge 1 commit intohummingbot:developmentfrom
etcswap:feat/etcswap-connector

Conversation

@chris-mercer
Copy link

@chris-mercer chris-mercer commented Jan 22, 2026

Summary

Add ETCswap V2/V3 DEX connector for Ethereum Classic blockchain, enabling trading on the first Uniswap V2+V3 fork on Ethereum Classic.

Features

  • V2 AMM Support: Full swap, add/remove liquidity, and pool info functionality
  • V3 CLMM Support: Concentrated liquidity positions, swaps, fee collection
  • Universal Router: Optimized routing across V2 and V3 pools
  • Dual Network Support: Ethereum Classic mainnet (61) and Mordor testnet (63)

Networks

Network Chain ID Currency
Ethereum Classic 61 ETC
Mordor Testnet 63 METC

Trading Types

  • router: Universal Router for optimized multi-hop swaps
  • amm: V2 liquidity pools
  • clmm: V3 concentrated liquidity positions

Contract Addresses

V2 contracts differ per network, V3 contracts are identical on both networks.

V2 (per network):

Contract Classic Mordor
Factory 0x0307cd3D7DA98A29e6Ed0D2137be386Ec1e4Bc9C 0x212eE1B5c8C26ff5B2c4c14CD1C54486Fe23ce70
Router 0x79Bf07555C34e68C4Ae93642d1007D7f908d60F5 0x6d194227a9A1C11f144B35F96E6289c5602Da493

V3 (same on both):

Contract Address
Factory 0x2624E907BcC04f93C8f29d7C7149a8700Ceb8cDC
SwapRouter02 0xEd88EDD995b00956097bF90d39C9341BBde324d1
Universal Router 0x9b676E761040D60C6939dcf5f582c2A4B51025F1
Position Manager 0x3CEDe6562D6626A04d7502CC35720901999AB699

Dependencies

"@etcswapv2/sdk-core": "^1.0.3",
"@etcswapv2/sdk": "^1.0.2",
"@etcswapv3/sdk": "^1.0.2",
"@etcswapv3/router-sdk": "^1.0.2"

Test Results

  • 134 tests passing
  • Unit tests: contracts, utils, config, routes
  • Live integration tests on Mordor testnet and Classic mainnet
  • Contract bytecode verification on both networks

Files Changed

  • src/connectors/etcswap/ - 31 source files (connector implementation)
  • src/templates/ - Chain configs, token lists, connector config
  • test/connectors/etcswap/ - 8 test files
  • src/app.ts - Route registration
  • package.json - SDK dependencies

Test plan

  • All 134 unit tests pass
  • Live tests verified on Mordor testnet (chain 63)
  • Live tests verified on Classic mainnet (chain 61)
  • V2 Factory pairs confirmed (Classic: 104, Mordor: 27)
  • V3 pools verified at multiple fee tiers
  • Contract bytecode verification on both networks

Related Links

chris-mercer added a commit to etcswap/hummingbot-gateway that referenced this pull request Jan 22, 2026
- Update PR-SUBMISSION-CHECKLIST.md with completed status and PR link
- Update docs/README.md with current implementation status
- Add upstream merge checklist to CLAUDE.md
- Streamline ETCswap section in CLAUDE.md

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@chris-mercer chris-mercer changed the base branch from main to development January 22, 2026 20:09
Add support for ETCswap V2 and V3 DEX on Ethereum Classic blockchain.

## Features
- Full V2 AMM support (swap, add/remove liquidity, pool info)
- Full V3 CLMM support (swap, positions, liquidity management)
- Universal Router integration for optimized routing
- Support for both Classic mainnet (chain 61) and Mordor testnet (chain 63)

## Networks
- Ethereum Classic (chain ID: 61) - ETC native currency
- Mordor Testnet (chain ID: 63) - METC native currency

## Trading Types
- Router: Universal Router for optimized swaps
- AMM: V2 liquidity pools
- CLMM: V3 concentrated liquidity positions

## Contract Addresses
V2 contracts differ per network, V3 contracts are the same on both networks.
All addresses verified against official ETCswap UI repositories.

## Tests
- 134 tests covering contracts, utils, config, routes
- Live integration tests for both Mordor testnet and Classic mainnet
- Contract bytecode verification on both networks

## Dependencies
- @etcswapv2/sdk-core: ^1.0.3
- @etcswapv2/sdk: ^1.0.2
- @etcswapv3/sdk: ^1.0.2
- @etcswapv3/router-sdk: ^1.0.2

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@chris-mercer chris-mercer force-pushed the feat/etcswap-connector branch from c45f0b4 to 3de9d06 Compare January 22, 2026 20:22
chris-mercer added a commit to etcswap/hummingbot-gateway that referenced this pull request Jan 22, 2026
Per CONTRIBUTING.md, PRs should target the development branch.
Updated PR hummingbot#594 base branch accordingly.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@rapcmia rapcmia moved this to Backlog in Pull Request Board Jan 23, 2026
@rapcmia rapcmia requested a review from fengtality January 23, 2026 02:02
@rapcmia rapcmia moved this from Backlog to In Discussion in Pull Request Board Jan 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Discussion

Development

Successfully merging this pull request may close these issues.

2 participants