NethermindEth / NethermindEth/pluto
Close out the deferred node wiring
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 8
- Forks
- 5
- Avg merge
- 4d 16h
- Merged PRs (30d)
- 37
Description
Summary
The node graph (#402) landed with seven deferred wiring points, all marked TODO(#402 part B). This issue enumerates them so each can be closed by wiring or by a documented decision to drop:
| Site | Pending |
|---|---|
behaviour.rs#L98-L99 |
QUIC transport and bandwidth metrics — Node::new (client path) takes no BandwidthFactory, so per-peer byte counters never record in the DV node. |
behaviour.rs#L255-L256 |
consensus protocol reordering by cluster/CLI preference (Go's PrioritizeProtocolsByName) |
config.rs#L12-L13 |
debug/pprof addr, OTLP tracing config, test-injection overrides |
mod.rs#L340-L342 |
multi-endpoint beacon fallback — only beacon_node_addrs[0] is used. |
mod.rs#L429-L430 |
wrap consensus in ConsensusController for dynamic protocol switching |
mod.rs#L721-L724 |
infosync is built and triggered per-epoch, but its decided output is discarded — a no-op only while QBFTv2 is the sole protocol; also keeps the compose mixed_2_charon_2_pluto smoke scenario excluding the sched warn topic |
mod.rs#L938-L941 |
drive_network discards every swarm event (optional logging) |
Adjacent wiring debt outside the #402 marker: the sse module is exported but referenced by nothing in node/ (its broadcast TODO is tracked in #606); the Cluster-Uuid relay header TODO; Feature::AttestationInclusion force-disabled in tracker_feature_set.
Proposed change
Treat this as the umbrella checklist under #402: each row gets wired (with a test) or removed with the TODO deleted and the decision recorded here. Highest value first: infosync consumption and bandwidth wiring — both are "component built, output dropped".
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the listed TODO sites in crates/app/src/node/behaviour.rs, config.rs, and mod.rs, prioritizing infosync consumption and bandwidth wiring. For each row, inspect the named entry point and add a test with the wiring, or remove the TODO and record the decision here.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- blockchain, distributed-systems
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100