Repository navigation
Conversation
ilitteri
merged commit Oct 8, 2026
3385521
into
lambdaclass:beacon-chain-integration
13 checks passed
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.
🗒️ Description / Motivation
The libp2p identify reply does not contain the client name.
build_swarmdoes not callidentify::Config::with_agent_version, so rust-libp2p sends its default agent version:rust-libp2p/0.48.0.Network crawlers read the identify
agentVersionto identify the client of a consensus-layer peer. Because of this, ethlambda nodes show asrust-libp2p, and crawlers cannot tell them apart from other rust-libp2p peers.What Changed
crates/net/p2p/src/lib.rs: addSwarmConfig::agent_versionand give it to the identify config withwith_agent_version.bin/ethlambda/src/main.rs: setagent_versiontoversion::CLIENT_VERSION. This is the same string as/eth/v1/node/versionandengine_getClientVersionV1, for exampleethlambda/v0.1.0-<branch>-<sha>/<target>/rustc-v<version>.SwarmConfigliterals: setagent_version: "ethlambda/test".identify_reports_the_configured_agent_version: two lean swarms connect, and the dialer reads the agent version from the identify reply of the listener.Correctness / Behavior Guarantees
protocolVersiondoes not change (eth2/1.0.0on beacon,/ipfs/0.1.0on lean).agentVersionstring. It applies to the lean and the beacon networks.Tests Added / Run
identify_reports_the_configured_agent_version. Without the fix, it fails withleft: "rust-libp2p/0.48.0".cargo test --locked -p ethlambda-p2p --lib: 209 passed, 1 ignored.cargo clippy --locked -p ethlambda-p2p -p ethlambda --all-targets -- -D warnings: clean.cargo fmt --all --check: clean.Related Issues / PRs
✅ Verification Checklist
make fmt— cleanmake lint(clippy with-D warnings) — clean (ran clippy on the two changed crates, not the full workspace)make test(test-consensusplustest-node, atrelease-fast) — all passing (ran theethlambda-p2punit tests only)