deniz.in

Markets

Weather

Loading weather

· via dev.to (home feed)

Node-level review of Circle's Arc mainnet finds dual-decimal USDC trap and static gas fees

An independent node-level readout of Circle's newly launched Arc mainnet confirms launch metrics while flagging a dual-decimal USDC quirk, a pinned 20 gwei fee floor and wrapper contracts that only revert.

Node-level review of Circle's Arc mainnet finds dual-decimal USDC trap and static gas fees

Circle opened Arc's public mainnet on 16 September 2026. Four days later, an independent analysis published on dev.to, originally posted to xroot.dev, examined the network not through launch announcements but through direct JSON-RPC queries against a node, pinned at block 21,767,062. The write-up confirms the headline architecture and documents several integration traps that official channels have not addressed.

What the chain reports about itself

According to the dev.to analysis, Arc identifies with chain ID 5042, and its client describes itself as arc/v1, a Reth-based execution client running under Malachite BFT consensus, with documentation placing the EVM at the Osaka fork. Blocks arrive roughly every half second with deterministic finality, and the validator set is twelve named institutions running proof of authority: Circle, BlackRock, DTCC, Visa, Mastercard, ICE and six others.

The latest block at the time of reading carried a 30 million gas limit with about 213,828 gas used, and sampled blocks ran at 3 to 11 percent utilisation. One structural detail stands out: the header's eight-byte extraData field equals the base fee, so each parent header effectively announces the next block's base fee in advance. The author also verified that Multicall3, Permit2, the CREATE2 deterministic deployer and Safe v1.4.1 exist at their canonical addresses, alongside MetaMask, Alchemy and Uniswap EIP-7702 delegator contracts.

One coin, two decimal scales

USDC is the native gas asset, and that is where the first trap sits. The node counts native balances in 18 decimals, while the ERC-20 contract representing the same coin at 0x3600...0000 counts in 6. The author read the same balance both ways at a pinned block and found the figures agree exactly once divided by 10 to the 12th, meaning this is one balance with two interfaces rather than a coin plus a wrapper.

A wallet that trusts the standard network parameters' decimals field would display a one-dollar balance as 0.000000000001. Arc's own wallet guidance, cited in the analysis, tells integrators to divide by 10^12, label the unit USDC rather than ETH, and merge the native and ERC-20 rows, and the network-parameters page warns that wallets without custom-gas-token support may show balances as ETH.

The ERC-20 face also emits Transfer events for native movements, behaviour the author links to EIP-7708 in practice, so an indexer that reads both native sends and those logs will count every transfer twice. Notably, that contract is 1,798 bytes, is not a proxy, and contains none of the selectors known from mainnet USDC, such as blacklist, pause or mint. The author is careful here: any freezing controls, if they exist, do not live in this contract, and bytecode inspection cannot settle the question further.

Gas that sits on a floor

Fee history queries returned 20 gwei in every sampled block. The model is EIP-1559 with a moving average and a hard floor, so at current utilisation the base fee never moves off that floor. The node's suggested price was 22 gwei, of which 2 gwei was tip.

Because the native coin is a dollar, the analysis converts gas into plain costs: a plain transfer at 21,000 gas costs $0.00046, an ERC-20 transfer about $0.0014, a Uniswap v4 fee claim about $0.0055, and a token deployment about $0.044. The author estimates that at 1.5 million transactions a day, with typical costs under a tenth of a cent, the network's entire daily gas take is on the order of a thousand dollars, explicitly flagged as an estimate rather than a measurement. Whatever pays for twelve institution-grade validators, it is not transaction fees.

Contracts built to fail loudly

Ask Uniswap v4's PositionManager for its WETH9 address and it returns one; call anything on that address and it reverts with a single custom error. The contract is 53 bytes of boilerplate plus a revert, and Uniswap's own deployment table for chain 5042 lists it as 'Unsupported Protocol (WETH9)'. The analysis reads this as deliberate: there is nothing to wrap, since the native coin already has an ERC-20 face, so any wrap button, router path through WETH, or collect-and-compound flow dies immediately with an error selector that can be searched for.

Separately, Uniswap v3's canonical mainnet factory and position manager addresses both hold 2,747-byte contracts on Arc, which the author identifies as squatter deployments matching a pattern previously found on Robinhood Chain in August. The published text is truncated before that finding is fully explained.

Why it matters

Anyone wiring a wallet, indexer or trading stack to Arc using configuration copied from another EVM chain will hit these edges in predictable ways: balances off by a factor of a trillion, transfers counted twice, and dead WETH code paths. The piece is also a reminder of method, verifying claims from the node rather than the announcement, at a moment when 'mainnet is live' can mean several different things. Finally, the economics matter for expectations: negligible fee revenue and a permissioned, twelve-institution validator set place Arc's trust and funding model with those institutions rather than with an open fee market, which is central to how the network's resilience and neutrality should be judged.

  • #blockchain
  • #usdc
  • #circle
  • #evm
  • #arc-mainnet