feat: add support for Robinhood chain#115
Merged
Merged
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #115 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 1 1
Lines 210 210
Branches 42 42
=========================================
Hits 210 210
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
57077cf to
0e87cb5
Compare
cgero-eth
previously approved these changes
Jul 1, 2026
| <br>Abstract | ||
| </div> | ||
| </td> | ||
| <td style="width:100px; text-align:center;"> |
Collaborator
Robinhood Chain (chainId 4663, an Arbitrum Orbit L2 with ETH gas) is not exported from viem/chains, so define it locally with defineChain including the canonical Multicall3 required by viem's multicall during log enrichment. Wire it into SUPPORTED_CHAINS, NATIVE_SYMBOL_BY_CHAIN_ID, the SupportedChainId union, isChainIdSupported, and the README support table.
0e87cb5 to
f9571e1
Compare
cgero-eth
approved these changes
Jul 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Problem
0x-parserdid not support Robinhood Chain (chainId4663, an Arbitrum Orbit L2 with ETH gas). CallingparseSwapfor a Robinhood transaction threwchainId 4663 is unsupported.Solution
Mirrors the Abstract chain addition (#97). Robinhood Chain is not exported from
viem/chains, so it is defined locally withdefineChain, including the canonical Multicall3 (0xca11…ca11, verified on-chain) which viem'smulticallrequires when enriching transfer logs.src/constants.ts— define and exportrobinhoodChain; add toSUPPORTED_CHAINSandNATIVE_SYMBOL_BY_CHAIN_ID.src/types.ts— addtypeof robinhoodChain.idto theSupportedChainIdunion.src/utils/index.ts— addrobinhoodChain.idtoisChainIdSupported.README.md— add Robinhood to the blockchain support table.Validation
npm run build(esbuild cjs + esm) andtsc --emitDeclarationOnlyboth pass.id: 4663, native symbolETH, membership inSUPPORTED_CHAINS, andisChainIdSupported(4663) === true.Not included: integration test
Every chain here has a live integration test needing a real 0x Settler swap tx and an RPC exposing
debug_traceTransaction. Neither is available for Robinhood yet: Alchemy/Quicknode don't support chainId 4663, the public RPC (rpc.chain.robinhood.com) rejects non-browser TLS and doesn't expose debug tracing, and the Blockscout explorer is behind HTTP auth. This matches the repo's own history — the Abstract feature PR (#97) added the code and the test-provider wiring landed separately (#99) once a debug RPC existed. A follow-up will add the test once a debug-capable RPC for 4663 and a real swap tx are available.