From 8e2a9fe95425d45146ce690a20fc2fdcc498a8e6 Mon Sep 17 00:00:00 2001 From: Gemini Agent Date: Mon, 24 Nov 2025 20:35:25 -0600 Subject: [PATCH] feat(parsers): register UniswapV3 parser with factory MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Added UniswapV3 parser registration to NewDefaultFactory() - Both UniswapV2 and UniswapV3 parsers now automatically available - Fixed constructor call (no error return from NewUniswapV3Parser) - All parser tests passing (83.1% coverage) This completes the Week 1 Fast MVP parser milestone: - ✅ UniswapV2 parser implemented and tested - ✅ UniswapV3 parser implemented and tested - ✅ Pool discovery implemented for Arbitrum - ✅ Both parsers registered with factory Ready for Week 2: Arbitrage detection engine Task: Fast MVP Week 1 (Days 3-5) Tests: All passing Coverage: 83.1% overall 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- pkg/parsers/registry.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkg/parsers/registry.go b/pkg/parsers/registry.go index fc308c0..992aa18 100644 --- a/pkg/parsers/registry.go +++ b/pkg/parsers/registry.go @@ -30,8 +30,13 @@ func NewDefaultFactory(poolCache cache.PoolCache, logger observability.Logger) ( return nil, err } + // Register UniswapV3 parser + uniV3Parser := NewUniswapV3Parser(poolCache, logger) + if err := factory.RegisterParser(types.ProtocolUniswapV3, uniV3Parser); err != nil { + return nil, err + } + // TODO: Register other parsers as they're implemented - // - UniswapV3 // - Curve // - Balancer // - SushiSwap