Coverage — fork vs upstream v1.17.3
Every file go-ethereum-classic changes versus upstream v1.17.3, and whether this
wiki documents it. This is the completeness backstop: a real git diff --name-only
against upstream, grouped by subsystem, so nothing the fork touched can hide.
| Metric |
Count |
| Files touched vs upstream |
167 |
| Documented in the wiki |
131 |
| Undocumented — production code |
0 |
| Undocumented — tests |
2 |
| Undocumented — fixtures/data |
26 |
| Undocumented — CI/build |
8 |
code gaps are the ones worth auditing; data (testdata fixtures) and ci
(workflows, build scripts) are listed for completeness but rarely need a page.
Provenance — what's actually fork-only
Line-level origin across the symbol 3-way diffs. The fork's genuine fork-only code is the
fork-only lines; everything else is transplanted from upstream or adopted from core-geth.
| Origin |
Lines |
| upstream pre-purge |
5203 |
| upstream current |
77 |
| common (in both) |
372 |
| core-geth |
295 |
| ≈ adapted from upstream/core-geth (inferred) |
304 |
| fork-only |
477 |
| total |
6728 |
7% of the 3-way lines are genuinely fork-only. Exact origin matches plus the
≈ adapted lines (code whose origin was inferred by similarity, not matched exactly) make up
the rest — the adapted count is a heuristic, shown separately so it isn't mistaken for certainty.
See Fork-only for the symbols and files behind these lines.
Consensus & Ethash — 16/16 documented
| File |
Class |
In wiki |
consensus/etc/engine.go |
code |
✅ |
consensus/etc/engine_etc_test.go |
test |
✅ |
consensus/etc/rewards_test.go |
test |
✅ |
consensus/ethash/algorithm.go |
code |
✅ |
consensus/ethash/algorithm_etc_test.go |
test |
✅ |
consensus/ethash/api.go |
code |
✅ |
consensus/ethash/consensus.go |
code |
✅ |
consensus/ethash/consensus_etc_test.go |
test |
✅ |
consensus/ethash/ethash.go |
code |
✅ |
consensus/ethash/ethash_etc_test.go |
test |
✅ |
consensus/ethash/mmap_help_linux.go |
code |
✅ |
consensus/ethash/mmap_help_other.go |
code |
✅ |
consensus/ethash/sealer.go |
code |
✅ |
consensus/ethash/sealer_etc_test.go |
test |
✅ |
consensus/ethash/verifyseal.go |
code |
✅ |
params/protocol_params_etc.go |
code |
✅ |
Total Difficulty (TD) — 15/15 documented
| File |
Class |
In wiki |
core/blockchain.go |
code |
✅ |
core/blockchain_etc_test.go |
test |
✅ |
core/blockchain_pow.go |
code |
✅ |
core/events_pow.go |
code |
✅ |
core/forkchoice_pow.go |
code |
✅ |
core/genesis.go |
code |
✅ |
core/headerchain.go |
code |
✅ |
core/headerchain_etc_test.go |
test |
✅ |
core/headerchain_pow.go |
code |
✅ |
core/rawdb/accessors_chain.go |
code |
✅ |
core/rawdb/accessors_chain_etc_test.go |
test |
✅ |
core/rawdb/accessors_chain_pow.go |
code |
✅ |
core/rawdb/accessors_pow.go |
code |
✅ |
core/rawdb/ancient_scheme.go |
code |
✅ |
core/rawdb/chain_freezer.go |
code |
✅ |
Core & EVM — 15/15 documented
| File |
Class |
In wiki |
consensus/misc/eip1559/eip1559.go |
code |
✅ |
core/chain_makers.go |
code |
✅ |
core/evm.go |
code |
✅ |
core/state/statedb.go |
code |
✅ |
core/state_transition.go |
code |
✅ |
core/txpool/legacypool/legacypool.go |
code |
✅ |
core/txpool/validation.go |
code |
✅ |
core/txpool/validation_etc_test.go |
test |
✅ |
core/types/transaction_signing.go |
code |
✅ |
core/vm/common.go |
code |
✅ |
core/vm/eips.go |
code |
✅ |
core/vm/evm.go |
code |
✅ |
core/vm/jump_table_etc.go |
code |
✅ |
core/vm/jump_table_etc_test.go |
test |
✅ |
core/vm/jump_table_export.go |
code |
✅ |
Sync & Downloader — 13/13 documented
| File |
Class |
In wiki |
eth/downloader/downloader.go |
code |
✅ |
eth/downloader/downloader_pow.go |
code |
✅ |
eth/downloader/downloader_test.go |
test |
✅ |
eth/downloader/fetchers.go |
code |
✅ |
eth/downloader/fetchers_concurrent.go |
code |
✅ |
eth/downloader/fetchers_concurrent_headers_pow.go |
code |
✅ |
eth/downloader/metrics.go |
code |
✅ |
eth/downloader/peer.go |
code |
✅ |
eth/downloader/queue.go |
code |
✅ |
eth/downloader/queue_pow.go |
code |
✅ |
eth/fetcher/block_fetcher_pow.go |
code |
✅ |
eth/fetcher/block_fetcher_pow_test.go |
test |
✅ |
eth/sync_pow.go |
code |
✅ |
eth Protocol — 18/26 documented
| File |
Class |
In wiki |
cmd/devp2p/internal/ethtest/chain.go |
code |
✅ |
cmd/devp2p/internal/ethtest/conn.go |
code |
✅ |
cmd/devp2p/internal/ethtest/mkchain.sh |
ci |
— |
cmd/devp2p/internal/ethtest/protocol.go |
code |
✅ |
cmd/devp2p/internal/ethtest/snap.go |
code |
✅ |
cmd/devp2p/internal/ethtest/suite.go |
code |
✅ |
cmd/devp2p/internal/ethtest/suite_test.go |
test |
✅ |
cmd/devp2p/internal/ethtest/testdata/chain.rlp |
data |
— |
cmd/devp2p/internal/ethtest/testdata/forkenv.json |
data |
— |
cmd/devp2p/internal/ethtest/testdata/genesis.json |
data |
✅ |
cmd/devp2p/internal/ethtest/testdata/headblock.json |
data |
— |
cmd/devp2p/internal/ethtest/testdata/headfcu.json |
data |
— |
cmd/devp2p/internal/ethtest/testdata/headstate.json |
data |
— |
cmd/devp2p/internal/ethtest/testdata/newpayload.json |
data |
— |
cmd/devp2p/internal/ethtest/testdata/txinfo.json |
data |
— |
eth/peerset.go |
code |
✅ |
eth/peerset_pow.go |
code |
✅ |
eth/protocols/eth/handler.go |
code |
✅ |
eth/protocols/eth/handlers_pow.go |
code |
✅ |
eth/protocols/eth/handshake.go |
code |
✅ |
eth/protocols/eth/handshake_etc_test.go |
test |
✅ |
eth/protocols/eth/handshake_pow.go |
code |
✅ |
eth/protocols/eth/peer.go |
code |
✅ |
eth/protocols/eth/peer_pow.go |
code |
✅ |
eth/protocols/eth/protocol_etc_test.go |
test |
✅ |
eth/protocols/eth/protocol_pow.go |
code |
✅ |
Eth Service — 10/10 documented
| File |
Class |
In wiki |
eth/backend.go |
code |
✅ |
eth/backend_mining_pow.go |
code |
✅ |
eth/ethconfig/config.go |
code |
✅ |
eth/ethconfig/config_pow.go |
code |
✅ |
eth/handler.go |
code |
✅ |
eth/handler_eth.go |
code |
✅ |
eth/handler_mining_pow.go |
code |
✅ |
eth/handler_pow.go |
code |
✅ |
eth/peer.go |
code |
✅ |
node/config.go |
code |
✅ |
Miner — 9/9 documented
| File |
Class |
In wiki |
miner/miner.go |
code |
✅ |
miner/miner_pow.go |
code |
✅ |
miner/miner_pow_etc_test.go |
test |
✅ |
miner/stress/ethash/main.go |
code |
✅ |
miner/uncles_pow.go |
code |
✅ |
miner/unconfirmed_pow.go |
code |
✅ |
miner/worker.go |
code |
✅ |
miner/worker_pow.go |
code |
✅ |
miner/worker_pow_test.go |
test |
✅ |
MESS — 3/3 documented
| File |
Class |
In wiki |
core/blockchain_mess.go |
code |
✅ |
core/blockchain_mess_test.go |
test |
✅ |
eth/sync_mess.go |
code |
✅ |
RPC & API — 13/32 documented
| File |
Class |
In wiki |
eth/api_backend_pow.go |
code |
✅ |
eth/api_miner_pow.go |
code |
✅ |
eth/api_pow.go |
code |
✅ |
eth/gasprice/feehistory.go |
code |
✅ |
ethstats/ethstats.go |
code |
✅ |
graphql/graphql.go |
code |
✅ |
internal/ethapi/api.go |
code |
✅ |
internal/ethapi/api_pow.go |
code |
✅ |
internal/ethapi/api_test.go |
test |
✅ |
internal/ethapi/backend.go |
code |
✅ |
internal/ethapi/simulate.go |
code |
✅ |
internal/ethapi/testdata/eth_getBlockByHash-hash-1.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByHash-hash-genesis.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByHash-hash-latest-1-fullTx.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByHash-hash-latest.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByNumber-number-0.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByNumber-number-1.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByNumber-number-latest-1.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByNumber-tag-latest.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByNumber-tag-pending-fullTx.json |
data |
— |
internal/ethapi/testdata/eth_getBlockByNumber-tag-pending.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByHash-hash-0.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByHash-hash-1.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByHash-hash-latest-1.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByHash-hash-latest.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByNumber-number-0.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByNumber-number-1.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByNumber-number-latest-1.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByNumber-tag-latest.json |
data |
— |
internal/ethapi/testdata/eth_getHeaderByNumber-tag-pending.json |
data |
— |
internal/ethapi/transaction_args.go |
code |
✅ |
internal/ethapi/transaction_args_test.go |
test |
✅ |
CLI, Config & Genesis — 15/17 documented
| File |
Class |
In wiki |
cmd/geth/config.go |
code |
✅ |
cmd/geth/consolecmd.go |
code |
✅ |
cmd/geth/consolecmd_test.go |
test |
✅ |
cmd/geth/main.go |
code |
✅ |
cmd/geth/main_pow.go |
code |
✅ |
cmd/geth/misccmd_pow.go |
code |
✅ |
cmd/utils/flags.go |
code |
✅ |
cmd/utils/flags_etc.go |
code |
✅ |
cmd/utils/flags_legacy.go |
code |
✅ |
core/coregeth_migration.go |
code |
✅ |
core/genesis_etc.go |
code |
✅ |
core/genesis_etc_test.go |
test |
— |
params/bootnodes_etc.go |
code |
✅ |
params/bootnodes_etc_test.go |
test |
✅ |
params/config.go |
code |
✅ |
params/config_compat_etc_test.go |
test |
— |
params/config_etc.go |
code |
✅ |
| File |
Class |
In wiki |
.github/workflows/ci.yml |
ci |
— |
.github/workflows/deploy-pages.yml |
ci |
— |
.github/workflows/go.yml |
ci |
— |
.github/workflows/release.yml |
ci |
— |
.github/workflows/validate_pr.yml |
ci |
— |
.gitignore |
ci |
— |
README.md |
code |
✅ |
build/ci.go |
ci |
— |
go.mod |
code |
✅ |
go.sum |
code |
✅ |
version/version.go |
code |
✅ |
← Code Changes overview