THE xONE LAB Explore the performance record
xone.sh

ENGINEERING, IN VIEW / 14 NOV 2026

Every claim.
A path to the source.

A working audit of the xOne client family and its wider ecosystem. Review what exists, see what is missing, and follow each verified gap into GitHub.

04CLIENTS REVIEWED
25SELECTED REFERENCES
22NEW ISSUES CREATED
117EXISTING RUST GAPS RETAINED

Progress, with its evidence.

All four clients are in development. Current source, documented runs, and live network qualification are different evidence levels. The source audit makes no performance ranking or production certification.

Rust documents Apothem and net2040 follower paths. Its mainnet following is not yet qualified. Mainnet production is gated across all four clients. C++, Python, and TypeScript source links require repository access.

From finding to issue.

One shippable change per issue. Every issue includes source evidence, acceptance criteria, implementation guidance, diagrams, and the requested engineering template.

22 issues shown

GAP-0118 · P1xOneC / networking

Expose the declared admin peer-management RPC methods

The CLI accepts admin, but the RPC method table has no admin peer-control handlers.

Open issue #84
GAP-0119 · P1xOneC / rpc

Add the declared debug RPC methods and bounded transaction tracers

The RPC method table has no debug tracing methods. The CLI accepts debug, but the dispatcher has no matching handlers.

Open issue #85
GAP-0120 · P1xOneC / rpc

Replace the eth_estimateGas stub with bounded EVM estimation

eth_estimateGas always returns -32000 and says the build has no EVM. The current node links and executes its EVM.

Open issue #86
GAP-0121 · P1xOneC / rpc

Deliver filtered receipt-backed WebSocket logs with reorg removals

The server accepts logs subscriptions but stores only the subscription kind. It publishes newHeads only and has no log publisher.

Open issue #87
GAP-0122 · P1xOneC / rpc

Connect transaction submission and mining status RPC to the active producer

eth_sendRawTransaction always fails with no pool. eth_mining returns false and eth_coinbase returns zero. Mining exposes real status and address through src/node/producer.hpp.

Open issue #88
GAP-0123 · P1xOnePY / networking

Expose the declared admin peer-management RPC methods

The RPC namespace policy rejects admin. The method table has no admin peer-control handlers.

Open issue #97
GAP-0124 · P1xOnePY / rpc

Add the declared debug RPC methods and bounded transaction tracers

The RPC method table has no debug tracing methods. The namespace policy rejects debug.

Open issue #98
GAP-0125 · P1xOneTS / networking

Expose the declared admin peer-management RPC methods

The RPC namespace policy rejects admin. The method table has no admin peer-control handlers.

Open issue #90
GAP-0126 · P1xOneTS / rpc

Add the declared debug RPC methods and bounded transaction tracers

The RPC method table has no debug tracing methods. The namespace policy rejects debug.

Open issue #91
GAP-0127 · P2xOneC / rpc

Compute fee-history reward percentiles from receipts

feeHistory creates zero reward values for every requested percentile, regardless of actual transaction tips. Its next-block base fee repeats the selected block.

Open issue #89
GAP-0128 · P2xOneC / rpc

Implement local IPC JSON-RPC behind the accepted IPC flags

The CLI accepts ipcpath and ipcdisable as inert flags. The runtime starts HTTP and WebSocket RPC without an IPC server.

Open issue #90
GAP-0129 · P2xOneC / rpc

Publish accepted pending transactions through WebSocket subscriptions

The subscription parser accepts newHeads and logs only. It rejects newPendingTransactions.

Open issue #91
GAP-0130 · P2xOneC / docs

Refresh the README with current client status and a safe quickstart

README.md says T0 and no client code exists. Current source contains EVM execution, sync, RPC and producer implementations.

Open issue #92
GAP-0131 · P2xOneC / rpc

Expose pending and queued transactions through txpool RPC

The client contains a transaction-pool backend, but its RPC table has no txpool_status, txpool_content or txpool_inspect.

Open issue #93
GAP-0132 · P2xOnePY / rpc

Compute fee-history reward percentiles from receipts

feeHistory creates zero reward values for every requested percentile, regardless of actual transaction tips. Its next-block base fee repeats the selected block.

Open issue #99
GAP-0133 · P2xOnePY / rpc

Implement local IPC JSON-RPC behind the accepted IPC flags

The CLI accepts ipcpath and ipcdisable as inert flags. The runtime starts HTTP and WebSocket RPC without an IPC server.

Open issue #100
GAP-0134 · P2xOnePY / rpc

Publish accepted pending transactions through WebSocket subscriptions

The subscription parser accepts newHeads and logs only. It rejects newPendingTransactions.

Open issue #101
GAP-0135 · P2xOnePY / docs

Refresh the README with current client status and a safe quickstart

README.md says T0 and no client code exists. Current source contains EVM execution, sync, RPC and producer implementations.

Open issue #102
GAP-0136 · P2xOnePY / rpc

Expose pending and queued transactions through txpool RPC

The client contains a transaction-pool backend, but its RPC table has no txpool_status, txpool_content or txpool_inspect.

Open issue #103
GAP-0137 · P2xOneTS / rpc

Implement local IPC JSON-RPC behind the accepted IPC flags

The CLI accepts ipcpath and ipcdisable as inert flags. The runtime starts HTTP and WebSocket RPC without an IPC server.

Open issue #92
GAP-0138 · P2xOneTS / rpc

Publish accepted pending transactions through WebSocket subscriptions

The subscription parser accepts newHeads and logs only. It rejects newPendingTransactions.

Open issue #93
GAP-0139 · P2xOneTS / rpc

Expose pending and queued transactions through txpool RPC

The client contains a transaction-pool backend, but its RPC table has no txpool_status, txpool_content or txpool_inspect.

Open issue #94

Build on what is already tracked.

The Rust repository already has a substantial gap backlog. Existing issues are reused where they cover the same work; 117 prior gap records are preserved in the download.

REPOSITORYVERIFIED OR EXISTING FINDINGTRACKER
XDCIndia/xOneRSLive eth_call and eth_estimateGas backend refuses requestsIssue #324
XDCIndia/xOneRSLive trace backend refuses requests; mining state returns None; missed-round method refuses service; latest-pool status returns zero placeholdersIssue #42
XDCIndia/xOneRSFull pending transaction objects in subscriptionsIssue #279
XDCIndia/xOneTSRoot README and getting startedIssue #77
XDCIndia/xOneTSBounded disk-backed stateIssue #83
XDCIndia/xOneTSFollower peer loss and stall recoveryIssue #71
XDCIndia/xOnePyArchive verificationIssue #85
XDCIndia/xOneCReceipt serving, prerequisite for log subscription repairIssue #65

A wider field of view.

63 candidate records, 25 selected source references, and 87 evidence facts. Selection scores combine feature overlap, activity, adoption, and code access. Historical and research clients are clearly distinguished from current operator choices.

REFERENCELANGUAGESCORE / 100COMPARISON ROLELICENSE
ethereum/go-ethereumGo94primaryLGPL-3.0 library / GPL-3.0 binaries
paradigmxyz/rethRust92primaryMIT OR Apache-2.0; bundled components have their own notices
NethermindEth/nethermindC# / .NET92primaryGPL-3.0 / LGPL-3.0 by component; inspect file headers
besu-eth/besuJava89primaryApache-2.0
erigontech/erigonGo91primaryLGPL-3.0
ethereumjs/ethereumjs-monorepoTypeScript74component and archived clientMPL-2.0 (active packages; checked packages/vm/LICENSE)
ethereum/py-evmPython62historical componentMIT
erigontech/silkwormC++71language referenceApache-2.0; snapshots/recsplit portions LGPL as documented
status-im/nimbus-eth1Nim82primaryMIT OR Apache-2.0
lambdaclass/ethrexRust86primaryMIT OR Apache-2.0
XinFinOrg/XDPoSChainGo89xdc protocol baselineLGPL-3.0
tokamak-network/py-ethclientPython66research referenceMIT
alt-research/eth2030Go78research referenceLGPL-3.0/GPL-3.0
ethereum/alethC++62historical clientGPL-3.0
skalenetwork/skaledC++75adjacent chainGPL-3.0
QuarkChain/pyquarkchainPython70adjacent chainMIT
FISCO-BCOS/FISCO-BCOSC++70adjacent chainApache-2.0
bnb-chain/bscGo90adjacent chainLGPL-3.0 (repository metadata; component notices apply)
0xPolygon/borGo87adjacent chainLGPL-3.0 (repository metadata; component notices apply)
BuildOnViction/victionchainGo82historical lineageLGPL-3.0 (repository metadata; component notices apply)
harmony-one/harmonyGo82adjacent chainLGPL-3.0 (repository metadata; component notices apply)
tempoxyz/tempoRust84adjacent chainApache-2.0 (repository metadata; component notices apply)
kaiachain/kaiaGo75adjacent chainLGPL-3.0 library / GPL-3.0 binaries (component notices apply)
BuildOnViction/vic-gethGo77adjacent chainLGPL-3.0 library / GPL-3.0 binaries (component notices apply)
openethereum/openethereumRust71historical clientGPL-3.0 (LICENSE inspected; source headers permit version 3 or later)
Inspect the source evidence (87 entries)

Clear boundaries. Useful next steps.

The review covers the recorded sources and feature areas. Zero unissued verified findings does not mean the clients have zero gaps. Live-node parity, sustained production operation, fault injection, and matched-hardware benchmarks remain separate validation work.

Features excluded by the current architecture
  • Ethereum Engine API: XDC consensus is integrated; excluded by the shared RPC scope.
  • Polling filters, eth_getProof, GraphQL: Explicitly outside current sibling ADR-008 scope; do not duplicate them as mandatory gaps.
  • JavaScript tracers, struct logger, debug_traceCall, raw debug_traceBlock: Sibling scope currently selects callTracer/prestateTracer and selected raw readers.
  • XDCx and personal namespaces: Explicit shared scope exclusion.
  • L2 sequencers, rollup proof systems, shard consensus, PBFT/QBFT adoption: Different-chain architecture; no evidence that replacing XDPoS is required.
  • Tax, invoices, refunds, currencies, billing email templates: Generic prompt examples outside a blockchain execution client.
  • Performance superiority and quantum-resistance claims: No matched-hardware benchmark or protocol qualification produced in this task.
What was checked on this website
  • Client switching, build guides, copying, comparison filtering and resource search.
  • Desktop and mobile layouts, mobile navigation and no document-width overflow.
  • Keyboard controls, visible focus, reduced motion, and a pause control.
  • Source-based commands and links; no live-node deployment.

Source snapshot for xone.sh. Client readiness and issue status reflect the review date shown above.

YOUR NEXT STEP

Build your way.

Choose an implementation to see its source-based build recipe.

Use the pinned Rust toolchain and platform build prerequisites in the repository.

git clone https://github.com/XDCIndia/xOneRS.git
cd xOneRS
cargo build --locked --release -p xone
./target/release/xone --version

This recipe builds the client; it does not start a node. Mainnet operation is not yet qualified.

Open source guide