chore: remove arbitrum nova chain support#11815
Conversation
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📝 WalkthroughWalkthroughRemoved Arbitrum Nova support across the codebase: environment vars, feature flags, type entries, chain adapters, unchained/viem clients, asset data, plugin registration, tests, and UI/wagmi configurations. Changes
Sequence Diagram(s)(omitted) Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Suggested labels
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
src/lib/market-service/coingecko/coingecko.test.ts (1)
169-197:⚠️ Potential issue | 🔴 CriticalTest count assertions not updated after Arbitrum Nova removal.
Line 224 destructures 5 keys (1 BTC + 4 ETH), confirming
ethereumnow maps to 4 asset IDs. But:
- Line 172 still expects
6(should be5)- Line 196 still expects
5(should be4)These tests will fail.
Proposed fix
it('can flatten multiple responses', async () => { mocks.get.mockResolvedValueOnce({ data: [eth] }).mockResolvedValue({ data: [btc] }) const result = await coinGeckoMarketService.findAll() - expect(Object.keys(result).length).toEqual(6) + expect(Object.keys(result).length).toEqual(5) })it('can return some results if partially rate limited', async () => { mocks.get.mockResolvedValueOnce({ status: 429 }).mockResolvedValue({ data: [eth] }) const result = await coinGeckoMarketService.findAll() - expect(Object.keys(result).length).toEqual(5) + expect(Object.keys(result).length).toEqual(4) })
4301b05 to
41e41c4
Compare
premiumjibles
left a comment
There was a problem hiding this comment.
Thorough and works well 👌 . Confirmed build works and did my own analysis to check and make sure all arbitrum nova stuff has been ripped out
d467235 to
7810362
Compare
Arbitrum Nova coinstack was removed from the upstream unchained repo in shapeshift/unchained#1258. This removes all ArbitrumNova references across the entire codebase including chain adapters, CAIP constants, types, plugins, feature flags, config, CSP headers, wagmi/viem clients, coingecko adapters, asset data generation scripts, and tests.
7810362 to
3b103e1
Compare
Arbitrum Nova coinstack was removed from the upstream unchained repo in shapeshift/unchained#1258. This removes all ArbitrumNova references across the entire codebase including chain adapters, CAIP constants, types, plugins, feature flags, config, CSP headers, wagmi/viem clients, coingecko adapters, asset data generation scripts, and tests.
Description
Removes all Arbitrum Nova chain support from the codebase. The upstream unchained repo removed the Arbitrum Nova coinstack in shapeshift/unchained#1258 (merged 2026-02-09) as part of their Railway migration.
This is the follow-up to #11814 which made the minimal fix to unblock
yarn generate.Changes across 77 files (-1,945 lines):
arbitrumNovagenerator fromopenapitools.json, updatecosmos/mayachainspec URLs todevelopbranchKnownChainIds.ArbitrumNovaMainnetfrom types packagearbitrumNovaAssetId,arbitrumNovaChainId, etc.) and coingecko adapter mappingsArbitrumNovafeature flag, plugin, and config entriesIssue (if applicable)
N/A — upstream removal in shapeshift/unchained#1258
Risk
Medium. This touches many files but is purely deletion of a chain that no longer has backend infrastructure. No new code is introduced.
Testing
Engineering
yarn workspace @shapeshiftoss/unchained-client generate— passes with all 18 generators succeedingyarn type-check— no new type errors (only pre-existing TS6305 stale build artifact warnings)arbitrumNova|ArbitrumNova|ARBITRUM_NOVA|arbitrum-novaacross*.ts,*.tsx,*.json— zero matchesOperations
Arbitrum Nova was already behind the
ArbitrumNovafeature flag (defaulting tofalsein production), so this removal has no user-facing impact.Summary by CodeRabbit
Refactor
Chores
Tests