chore: remove dead code, orphan files, and stale CMake plumbing#100
Open
chiliec wants to merge 8 commits into
Open
chore: remove dead code, orphan files, and stale CMake plumbing#100chiliec wants to merge 8 commits into
chiliec wants to merge 8 commits into
Conversation
chiliec
added a commit
that referenced
this pull request
Apr 30, 2026
Captures 51 file-cited findings from a tech-debt-skill audit run against the current branch baseline. Reference for Tier B planning beyond PR #100. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Tier-A cleanup with no behavioral change in the CI/Docker build path:
Files removed (orphaned, no consumer):
- .travis.yml (referenced a Dockerfile-test that no longer exists)
- Doxyfile (Doxygen 1.8.13 from 2017; not invoked by any build step)
- libraries/wallet/Doxyfile.in + generate_api_documentation.pl
(gated on PERL_FOUND AND DOXYGEN_FOUND AND NOT Ninja, never true in
the apt-installed Docker builder; the standin was the actual code path)
- programs/util/schema_test.cpp (CMakeLists block was already commented out)
- programs/util/{inflation_plot,newplugin,pretty_schema,saltpass}.py
(Python helpers with no shell/CMake/Dockerfile consumer)
Dead conditionals removed:
- Root CMakeLists: USE_PCH/cotire include, ENABLE_INSTALLER CPack block
(cotire abandoned in 2017; ENABLE_INSTALLER never set, and its
if(LINUX) branch was dead even when alive — CMake doesn't define LINUX)
- libraries/network/CMakeLists.txt + libraries/utilities/CMakeLists.txt:
latent cotire() calls that would have failed configure if USE_PCH
was ever enabled (the include() was already gone)
- libraries/wallet/CMakeLists.txt: collapsed the Perl/Doxygen-or-standin
if/else; standin is now the unconditional code path
- programs/CMakeLists.txt: stale `#add_subdirectory( delayed_node )`
pointing at a directory that doesn't exist
Dead `#if 0` blocks removed (4 blocks, ~70 lines):
- libraries/network/node.cpp x2 (one with a live #else preserved)
- libraries/network/peer_connection.cpp x1
- libraries/network/message_oriented_connection.cpp x1
Dockerfile sync:
- Dropped now-deleted Doxyfile from the four `COPY` lines so the
production/testnet/lowmem/mongo builds don't fail on a missing path
Net diff: 22 files changed, 10 insertions(+), 5600 deletions(-).
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Drop three subtrees that are dead in the shipping build: - plugins/auth_util — debug-only RPC helpers; not registered in any default config and never referenced by API consumers. Removed plugin source, vizd registration, and link dependency. - programs/js_operation_serializer — one-shot dev tool that emits operation schemas; output not consumed by vizd or CI. - programs/size_checker — one-shot dev tool that prints struct sizes; output not consumed by vizd or CI. Also drops the matching add_subdirectory() entries in programs/CMakeLists.txt which would otherwise break configure after directory removal. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
libraries/version/ no longer exists, but three CMake files still referenced it as commented-out targets/include paths or stale trailing comments. CMake silently absorbs missing include dirs as useless -I flags, and the comments mislead future readers. - libraries/protocol/CMakeLists.txt: remove commented add_dependencies, trailing comment on target_link_libraries, and the two non-existent ../../version/include paths. - libraries/network/CMakeLists.txt: remove commented ../version/include. - plugins/test_api/CMakeLists.txt: remove duplicate trailing target_link_libraries comment. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- CMakeLists.txt: GUI_CLIENT_EXECUTABLE_NAME, CUSTOM_URL_SCHEME, and INSTALLER_APP_ID were only consumed by the CPack/installer block removed in a47dd1e. Now set but never read. - libraries/utilities/CMakeLists.txt: prepended libraries/fc/GitVersionGen to CMAKE_MODULE_PATH, but that directory does not exist (fc lives in thirdparty/fc/). The real path is already added at root scope, so the line was a silently-ignored no-op pointing at a phantom location. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The Doxygen pipeline was removed in Tier A core. These referencing artifacts were left behind: - documentation/doxygen/ — Doxygen styling assets (CSS, layout XML, header/footer HTML), only consumed by the removed pipeline - programs/build_helpers/check_reflect.py — parses doxygen/xml/index.xml which is never produced - documentation/building.md — apt install line for the doxygen package All references verified absent across CMake, scripts, Dockerfiles, and CI. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Typo'd filename (note "guild" vs "guide"). No references in build files, scripts, CI, source code, or other documentation. Safe to drop. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Removes the unread CHAIN_INTERNAL_PLUGINS env-var from plugins/CMakeLists.txt, rewrites documentation/plugin.md to match the actual plugin layout (no auto-discovery; explicit registration in programs/vizd/main.cpp), drops the unbuildable chain_test target reference from documentation/building.md, and fixes two latent NameError typos (false/true lowercase) in programs/build_helpers/cat_parts.py — unreachable today only because hardfork.d/ contains regular .hf files. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Captures 51 file-cited findings from a tech-debt-skill audit run against the current branch baseline. Reference for Tier B planning beyond PR #100. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
d704ab9 to
ad1c94c
Compare
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.
Summary
Tier A dead-code sweep across CMake, Dockerfiles, documentation, and one plugin. Rebased onto current master on 2026-05-20 after master picked up the witness→validator rename, the P2P network redesign, and the move of debug_node / private_message / mongo_db / etc. into
examples-plugins/. Three original commits were dropped during the rebase (see "Dropped" below); the remaining 8 commits stand on their own and are individually reviewable.54256c5Doxyfile,.travis.yml, util scripts),cotire/USE_PCHremoval,ENABLE_INSTALLER/CPack removal,delayed_nodesubdir comment, Doxygen-onlywalletplumbing, DockerfileCOPYlines for the deletedDoxyfile. Network-side#if 0removals from the original commit dropped during rebase because master deleted those files outright (message_oriented_connection.cpp,node.cpp,peer_connection.cpp) for the DLT P2P rewrite.0eb6a57plugins/auth_util/(debug-only RPCs, never registered in any default config),programs/js_operation_serializer/andprograms/size_checker/. Fix matchingprograms/vizd/{main.cpp,CMakeLists.txt}to remove the auth_util plugin registration.bfbb3a4graphene::version(target/include paths point atlibraries/version/, which doesn't exist) inlibraries/protocol/,libraries/network/, and the (nowexamples-plugins/)test_api/CMakeLists.a42c2a8GUI_CLIENT_EXECUTABLE_NAME,CUSTOM_URL_SCHEME,INSTALLER_APP_ID) consumed only by the CPack block removed in Tier A; drop boguslibraries/fc/GitVersionGenmodule path (real path isthirdparty/fc/...and is already added at root scope).e706f15documentation/doxygen/styling assets,programs/build_helpers/check_reflect.py(parses doxygen XML that's never produced), and thedoxygenapt-package mention indocumentation/building.md.da6c05cdocumentation/git_guildelines.md— typo'd filename ("guild" vs "guide"), zero references in build, scripts, CI, code, or docs.7a4b871add_subdirectory(elasticsearch)andadd_subdirectory(market_history)for plugins that don't exist; fixdocumentation/plugin.mdto reference real plugins; syncprograms/build_helpers/cat_parts.pyshebang/path.ad1c94cdocs/TECH_DEBT_AUDIT.mdsnapshot from 2026-04-30 (read-only report, no code impact). Note: contains stale references towitness/private_messageplugins from before master's rename/move; will be refreshed in a follow-up.Dropped during the 2026-05-20 rebase
3172b37(.qoder/ untrack) — master re-tracked.qoder/docs going forward; the removal would re-conflict every rebase.666d98d+2a32b4f(debug_node edit-script cleanup) —plugins/debug_node/was moved toexamples-plugins/debug_node/on master; cleanup no longer pulls weight in a now-non-shipping plugin.7bd4448(.gitignore stale rule sweep) — master had already removed the stale rules independently; skipped as a no-op after the.qoder/line dropped out.What this is not
vizdin any default config. The plugins registered inprograms/vizd/main.cppare the same set, minusauth_util.vote_operation,content_operation,delete_content_operation).Test plan
docker-pr-build.yml).vizdbinary builds and is non-zero size.cmake -B build && cmake --build build --target vizdsucceeds on Linux.cli_walletstill builds.vizdwith the default config, observe normal plugin initialization log lines.