Skip to content

feat(statics): add Boba Network (EVM) with ERC20 token support#8440

Merged
bhavesh-prasad merged 1 commit intomasterfrom
CECHO-305-2
Apr 10, 2026
Merged

feat(statics): add Boba Network (EVM) with ERC20 token support#8440
bhavesh-prasad merged 1 commit intomasterfrom
CECHO-305-2

Conversation

@bhavesh-prasad
Copy link
Copy Markdown
Contributor

Summary

  • Add CoinFamily.BOBA and UnderlyingAsset.BOBA to base enums
  • Add Boba (chainId: 288) and BobaTestnet network classes in networks.ts
  • Add boba (mainnet) and tboba (testnet) coin entries with SUPPORTS_ERC20 feature flag
  • Add BobaERC20Token class and bobaErc20/tbobaErc20 factory functions in account.ts
  • Configure explorer base URLs in sdk-core environments
  • Update expectedColdFeatures test fixture and exclude UnderlyingAsset.BOBA from keychains test

Ticket: CECHO-305

@bhavesh-prasad bhavesh-prasad requested review from a team as code owners April 8, 2026 11:29
@linear
Copy link
Copy Markdown

linear bot commented Apr 8, 2026

Copy link
Copy Markdown
Contributor

@mullapudipruthvik mullapudipruthvik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code review

Found 1 issue:

Critical (score 95):

  1. BobaTestnet class uses mainnet chain ID (288), mainnet explorer URLs, and mainnet-derived operation hash prefixes — all three should differ from the mainnet Boba class. Boba Sepolia testnet chain ID is 28882 (confirmed by the testnet explorer URL added in environments.ts: /evm/28882/). Every other EVM testnet in this file uses a distinct chain ID, testnet explorer URL, and matching hash prefix (see ArbitrumTestnet with 421614, BinanceSmartChainTestnet with 97, etc.). In production, testnet transactions would be routed to the wrong chain and explorer links would show mainnet data. chainId should be 28882, nativeCoinOperationHashPrefix and tokenOperationHashPrefix should be 28882, and explorerUrl/accountExplorerUrl should use the testnet bobascan domain.

class BobaTestnet extends Testnet implements EthereumNetwork {
name = 'Boba Testnet';
family = CoinFamily.BOBAETH;
explorerUrl = 'https://bobascan.com/blockchain/transactions';
accountExplorerUrl = 'https://bobascan.com/blockchain';
chainId = 288;
nativeCoinOperationHashPrefix = '288';
tokenOperationHashPrefix = '288';
}

Checked for: CLAUDE.md compliance, bugs, error handling, security, bot-specific failure modes, database operations, code comment accuracy.

@bhavesh-prasad
Copy link
Copy Markdown
Contributor Author

@mullapudipruthvik I have addressed the comments

@bhavesh-prasad bhavesh-prasad merged commit e33c6e9 into master Apr 10, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants